Skip to content

Conversation

@jviotti
Copy link
Member

@jviotti jviotti commented Jan 21, 2026

Signed-off-by: Juan Cruz Viotti jv@jviotti.com

Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
@augmentcode
Copy link

augmentcode bot commented Jan 21, 2026

🤖 Augment PR Summary

Summary: This PR fixes how Blaze classifies and compiles schema references that originate from within propertyNames, ensuring those references are treated as “property-name context” even when nested under in-place applicators.

Changes:

  • Introduced is_inside_property_names to walk up a reference’s pointer ancestry and detect whether it is contained under propertyNames through in-place applicator keywords.
  • Extended schema_frame_populate_target_types to accept SchemaWalker and SchemaResolver so it can use vocabulary-aware keyword classification when determining context.
  • Replaced the previous “direct parent is propertyNames” heuristic with the new ancestry-based check.
  • Updated compile planning to pass walker/resolver into target-type population.
  • Added Draft-06 evaluator tests covering $ref inside nested applicators under propertyNames.
  • Added tests ensuring references to schemas stored under propertyNames (e.g., #/propertyNames/definitions/…) behave correctly when referenced from outside.

Technical Notes: The new detection relies on the walker’s keyword-type classification (and active vocabularies) to decide whether the path from a reference back up to propertyNames remains “in-place,” avoiding misclassification when the chain is broken by non-applicator keywords.

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. 1 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bindings (linux/nodejs)

Details
Benchmark suite Current: 0a2e330 Previous: 8c422d9 Ratio
E2E_Parse_BlazeJSON_ui5_manifest 113 ops/sec (±0.31%) 112 ops/sec (±0.47%) 0.99
E2E_Parse_JSON_ui5_manifest 804 ops/sec (±0.43%) 801 ops/sec (±0.46%) 1.00
E2E_Evaluator_adaptivecard 20623 ops/sec (±0.11%) 20308 ops/sec (±0.10%) 0.98
E2E_Evaluator_ansible_meta 1860 ops/sec (±0.09%) 1831 ops/sec (±0.21%) 0.98
E2E_Evaluator_aws_cdk 2683 ops/sec (±0.06%) 2663 ops/sec (±0.13%) 0.99
E2E_Evaluator_babelrc 1480 ops/sec (±0.39%) 1537 ops/sec (±0.32%) 1.04
E2E_Evaluator_clang_format 5017 ops/sec (±0.85%) 4830 ops/sec (±1.11%) 0.96
E2E_Evaluator_cmake_presets 161 ops/sec (±0.39%) 154 ops/sec (±0.93%) 0.96
E2E_Evaluator_code_climate 558 ops/sec (±0.08%) 559 ops/sec (±0.16%) 1.00
E2E_Evaluator_cql2 2474 ops/sec (±0.34%) 2469 ops/sec (±0.38%) 1.00
E2E_Evaluator_cspell 754 ops/sec (±0.18%) 742 ops/sec (±0.14%) 0.98
E2E_Evaluator_cypress 1208 ops/sec (±0.87%) 1205 ops/sec (±0.93%) 1.00
E2E_Evaluator_deno 960 ops/sec (±0.15%) 951 ops/sec (±0.15%) 0.99
E2E_Evaluator_dependabot 830 ops/sec (±0.11%) 829 ops/sec (±0.18%) 1.00
E2E_Evaluator_draft_04 119 ops/sec (±1.15%) 108 ops/sec (±1.33%) 0.91
E2E_Evaluator_fabric_mod 606 ops/sec (±0.44%) 601 ops/sec (±0.11%) 0.99
E2E_Evaluator_geojson 36.58 ops/sec (±0.29%) 36.85 ops/sec (±0.24%) 1.01
E2E_Evaluator_gitpod_configuration 1065 ops/sec (±0.13%) 1070 ops/sec (±0.15%) 1.00
E2E_Evaluator_helm_chart_lock 366 ops/sec (±0.19%) 362 ops/sec (±0.12%) 0.99
E2E_Evaluator_importmap 1569 ops/sec (±0.09%) 1543 ops/sec (±0.16%) 0.98
E2E_Evaluator_jasmine 1280 ops/sec (±0.17%) 1268 ops/sec (±0.11%) 0.99
E2E_Evaluator_jsconfig 846 ops/sec (±0.84%) 838 ops/sec (±0.81%) 0.99
E2E_Evaluator_jshintrc 592 ops/sec (±0.43%) 590 ops/sec (±0.12%) 1.00
E2E_Evaluator_krakend 3443 ops/sec (±0.14%) 3472 ops/sec (±0.14%) 1.01
E2E_Evaluator_lazygit 2766 ops/sec (±0.16%) 2750 ops/sec (±0.37%) 0.99
E2E_Evaluator_lerna 1264 ops/sec (±0.11%) 1226 ops/sec (±0.16%) 0.97
E2E_Evaluator_nest_cli 1108 ops/sec (±0.10%) 1105 ops/sec (±0.10%) 1.00
E2E_Evaluator_omc 23646 ops/sec (±0.11%) 23556 ops/sec (±0.15%) 1.00
E2E_Evaluator_omnisharp 808 ops/sec (±0.14%) 797 ops/sec (±0.72%) 0.99
E2E_Evaluator_openapi 73.09 ops/sec (±1.29%) 66.8 ops/sec (±1.45%) 0.91
E2E_Evaluator_pre_commit_hooks 804 ops/sec (±0.14%) 808 ops/sec (±0.13%) 1.00
E2E_Evaluator_pulumi 297 ops/sec (±0.12%) 294 ops/sec (±0.25%) 0.99
E2E_Evaluator_semantic_release 1538 ops/sec (±0.11%) 1536 ops/sec (±0.12%) 1.00
E2E_Evaluator_stale 1252 ops/sec (±0.47%) 1235 ops/sec (±0.62%) 0.99
E2E_Evaluator_stylecop 984 ops/sec (±0.35%) 980 ops/sec (±0.19%) 1.00
E2E_Evaluator_tmuxinator 2622 ops/sec (±0.12%) 2629 ops/sec (±0.17%) 1.00
E2E_Evaluator_ui5 715 ops/sec (±0.14%) 712 ops/sec (±0.17%) 1.00
E2E_Evaluator_ui5_manifest 256 ops/sec (±0.30%) 256 ops/sec (±0.30%) 1
E2E_Evaluator_unreal_engine_uproject 807 ops/sec (±0.17%) 811 ops/sec (±0.15%) 1.00
E2E_Evaluator_vercel 1227 ops/sec (±0.17%) 1221 ops/sec (±0.14%) 1.00
E2E_Evaluator_yamllint 1649 ops/sec (±0.59%) 1649 ops/sec (±0.16%) 1

This comment was automatically generated by workflow using github-action-benchmark.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark (linux/llvm)

Details
Benchmark suite Current: 0a2e330 Previous: 8c422d9 Ratio
E2E_Compiler_adaptivecard 68522482.22222418 ns/iter 67851385.77777793 ns/iter 1.01
E2E_Compiler_ansible_meta 28513171.70833312 ns/iter 27080149.96153889 ns/iter 1.05
E2E_Compiler_aws_cdk 503008.4013015351 ns/iter 502081.21459227137 ns/iter 1.00
E2E_Compiler_babelrc 2658607.2022899953 ns/iter 2674289.6450380227 ns/iter 0.99
E2E_Compiler_clang_format 17958722.358973596 ns/iter 18133414.868421033 ns/iter 0.99
E2E_Compiler_cmake_presets 26967324.038462963 ns/iter 26836654.769231074 ns/iter 1.00
E2E_Compiler_code_climate 2650678.996226447 ns/iter 2637647.6954886615 ns/iter 1.00
E2E_Compiler_cql2 13272795.509434039 ns/iter 13045066.339622976 ns/iter 1.02
E2E_Compiler_cspell 23604278.366667584 ns/iter 22618528.87096805 ns/iter 1.04
E2E_Compiler_cypress 3959035.409090655 ns/iter 4026195.28160917 ns/iter 0.98
E2E_Compiler_deno 8150168.941860324 ns/iter 8304428.9647057885 ns/iter 0.98
E2E_Compiler_dependabot 4181315.035714374 ns/iter 4227458.2514972575 ns/iter 0.99
E2E_Compiler_draft_04 2754975.3043477787 ns/iter 2730455.863281245 ns/iter 1.01
E2E_Compiler_fabric_mod 4851198.5208333405 ns/iter 4812404.758620781 ns/iter 1.01
E2E_Compiler_geojson 23797584.51724197 ns/iter 24322571.413792644 ns/iter 0.98
E2E_Compiler_gitpod_configuration 4978685.75177292 ns/iter 4989233.340425759 ns/iter 1.00
E2E_Compiler_helm_chart_lock 837589.1425149228 ns/iter 845045.980676316 ns/iter 0.99
E2E_Compiler_importmap 411390.26529409044 ns/iter 415598.04801421374 ns/iter 0.99
E2E_Compiler_jasmine 1463995.1273486717 ns/iter 1463123.7810525768 ns/iter 1.00
E2E_Compiler_jshintrc 4685164.926174454 ns/iter 4738880.777027263 ns/iter 0.99
E2E_Compiler_jsconfig 20911901.558822792 ns/iter 21952181.625000123 ns/iter 0.95
E2E_Compiler_krakend 151213899.59999758 ns/iter 143964980.20000762 ns/iter 1.05
E2E_Compiler_lazygit 36053327.10526155 ns/iter 34144918.449999295 ns/iter 1.06
E2E_Compiler_lerna 1799497.9564102427 ns/iter 1798599.1619537796 ns/iter 1.00
E2E_Compiler_nest_cli 7453535.776595258 ns/iter 7453298.404255564 ns/iter 1.00
E2E_Compiler_omc 205278552.0000005 ns/iter 164100323.75000584 ns/iter 1.25
E2E_Compiler_omnisharp 7042119.909999656 ns/iter 7133867.363636616 ns/iter 0.99
E2E_Compiler_openapi 25274207.035715383 ns/iter 25242692.821428087 ns/iter 1.00
E2E_Compiler_pre_commit_hooks 5259757.518797158 ns/iter 5257765.406015055 ns/iter 1.00
E2E_Compiler_pulumi 4097139.866279098 ns/iter 4113204.4327486926 ns/iter 1.00
E2E_Compiler_semantic_release 1659014.0165094894 ns/iter 1641284.576470592 ns/iter 1.01
E2E_Compiler_stale 1657986.7980997446 ns/iter 1662736.285012278 ns/iter 1.00
E2E_Compiler_stylecop 6404290.909090998 ns/iter 6326596.427272658 ns/iter 1.01
E2E_Compiler_tmuxinator 2148271.5779817416 ns/iter 2151320.091743039 ns/iter 1.00
E2E_Compiler_ui5 52641388.69230587 ns/iter 51954642.7692297 ns/iter 1.01
E2E_Compiler_ui5_manifest 413461116.9999971 ns/iter 332720013.99998885 ns/iter 1.24
E2E_Compiler_unreal_engine_uproject 4665434.699999954 ns/iter 4711781.912162279 ns/iter 0.99
E2E_Compiler_vercel 13623540.82352884 ns/iter 13936098.632653942 ns/iter 0.98
E2E_Compiler_yamllint 452342.8880258998 ns/iter 463672.38921377534 ns/iter 0.98
E2E_Evaluator_adaptivecard 36144.35017976513 ns/iter 36145.525134788455 ns/iter 1.00
E2E_Evaluator_ansible_meta 309843.87611012044 ns/iter 312493.5312779248 ns/iter 0.99
E2E_Evaluator_aws_cdk 79020.1517195627 ns/iter 75152.20133075435 ns/iter 1.05
E2E_Evaluator_babelrc 153464.54196114233 ns/iter 152522.65956521768 ns/iter 1.01
E2E_Evaluator_clang_format 136542.72790832992 ns/iter 135320.23356366743 ns/iter 1.01
E2E_Evaluator_cmake_presets 5418307.862903531 ns/iter 6117758.999999979 ns/iter 0.89
E2E_Evaluator_code_climate 279905.85995976324 ns/iter 279503.71277028887 ns/iter 1.00
E2E_Evaluator_cql2 308377.74358975474 ns/iter 305239.82145887613 ns/iter 1.01
E2E_Evaluator_cspell 743972.4262820531 ns/iter 729363.725941404 ns/iter 1.02
E2E_Evaluator_cypress 229575.62704115483 ns/iter 242195.9980178436 ns/iter 0.95
E2E_Evaluator_deno 402783.5651418825 ns/iter 403709.3033772447 ns/iter 1.00
E2E_Evaluator_dependabot 579826.4546211286 ns/iter 578847.0075757513 ns/iter 1.00
E2E_Evaluator_draft_04 8692682.99999969 ns/iter 10426168.55384652 ns/iter 0.83
E2E_Evaluator_fabric_mod 911454.4942675165 ns/iter 919081.6571056221 ns/iter 0.99
E2E_Evaluator_geojson 31211470.045455124 ns/iter 29903942.65217496 ns/iter 1.04
E2E_Evaluator_gitpod_configuration 320883.50827967987 ns/iter 317457.1005025235 ns/iter 1.01
E2E_Evaluator_helm_chart_lock 438930.1983523593 ns/iter 450189.14719173143 ns/iter 0.97
E2E_Evaluator_importmap 67795.14202148332 ns/iter 70699.27741802845 ns/iter 0.96
E2E_Evaluator_jasmine 161971.17337319016 ns/iter 173469.20986437684 ns/iter 0.93
E2E_Evaluator_jshintrc 1304930.067164241 ns/iter 1306615.36448604 ns/iter 1.00
E2E_Evaluator_jsconfig 515509.1693786818 ns/iter 524082.9551904356 ns/iter 0.98
E2E_Evaluator_krakend 259205.7993323432 ns/iter 265058.9988661995 ns/iter 0.98
E2E_Evaluator_lazygit 184856.91235895327 ns/iter 188348.83881146926 ns/iter 0.98
E2E_Evaluator_lerna 205809.85489146868 ns/iter 203651.60517892742 ns/iter 1.01
E2E_Evaluator_nest_cli 252997.55793678865 ns/iter 249688.18608005307 ns/iter 1.01
E2E_Evaluator_omc 28455.109236123688 ns/iter 28367.076291941237 ns/iter 1.00
E2E_Evaluator_omnisharp 713087.6795523777 ns/iter 726852.1338173891 ns/iter 0.98
E2E_Evaluator_openapi 16695926.951220693 ns/iter 17838285.25641003 ns/iter 0.94
E2E_Evaluator_pre_commit_hooks 612302.8942731016 ns/iter 590634.7017241744 ns/iter 1.04
E2E_Evaluator_pulumi 866671.068407997 ns/iter 904003.1716906759 ns/iter 0.96
E2E_Evaluator_semantic_release 138313.4876701476 ns/iter 139732.89709658 ns/iter 0.99
E2E_Evaluator_stale 199722.415621428 ns/iter 201803.07778415998 ns/iter 0.99
E2E_Evaluator_stylecop 368542.0858798984 ns/iter 366090.91653459315 ns/iter 1.01
E2E_Evaluator_tmuxinator 140684.0599161149 ns/iter 137955.5690802306 ns/iter 1.02
E2E_Evaluator_ui5 710678.5488798006 ns/iter 698885.477687674 ns/iter 1.02
E2E_Evaluator_ui5_manifest 3504763.308081012 ns/iter 3633266.3048780872 ns/iter 0.96
E2E_Evaluator_unreal_engine_uproject 532213.7901515159 ns/iter 531555.2210446474 ns/iter 1.00
E2E_Evaluator_vercel 399804.84778859944 ns/iter 400768.6984580215 ns/iter 1.00
E2E_Evaluator_yamllint 17855.823718863896 ns/iter 17765.39277947008 ns/iter 1.01
Micro_Draft4_Meta_1_No_Callback 252.52128673183958 ns/iter 264.4308203217872 ns/iter 0.95
Micro_Draft4_Required_Properties 1150.5256740848467 ns/iter 1182.4737242431017 ns/iter 0.97
Micro_Draft4_Many_Optional_Properties_Minimal_Match 30.757051193150314 ns/iter 31.492941781624864 ns/iter 0.98
Micro_Draft4_Few_Optional_Properties_Minimal_Match 20.249338086321014 ns/iter 19.625853719912126 ns/iter 1.03
Micro_Draft4_Items_Schema 644.8677018193426 ns/iter 624.1036216836876 ns/iter 1.03
Micro_Draft4_Nested_Object 3.116335023674284 ns/iter 3.116348922107837 ns/iter 1.00
Micro_Draft4_Properties_Triad_Optional 392.7432285227925 ns/iter 401.28369659882287 ns/iter 0.98
Micro_Draft4_Properties_Triad_Closed 321.6161787110768 ns/iter 329.25652680454544 ns/iter 0.98
Micro_Draft4_Properties_Triad_Required 433.65307369741475 ns/iter 439.549788007361 ns/iter 0.99
Micro_Draft4_Properties_Closed 98.14049754898642 ns/iter 79.43106966450914 ns/iter 1.24
Micro_Draft4_Non_Recursive_Ref 32.055477626103915 ns/iter 34.577843640428306 ns/iter 0.93
Micro_Draft4_Pattern_Properties_True 256.70269307987513 ns/iter 256.5015518591023 ns/iter 1.00
Micro_Draft4_Ref_To_Single_Property 20.240728164860634 ns/iter 19.637425828517237 ns/iter 1.03
Micro_Draft4_Additional_Properties_Type 59.75737420637124 ns/iter 66.89478128710287 ns/iter 0.89
Micro_Draft4_Nested_Oneof 88.66067752356979 ns/iter 89.34776772039272 ns/iter 0.99
Micro_Draft4_Short_Enum 15.270259738438638 ns/iter 14.985391609028905 ns/iter 1.02
Micro_Draft4_Long_Enum 19.619321954912458 ns/iter 19.297223812241523 ns/iter 1.02
Micro_Draft4_Long_Enum_Short_Strings 15.278533190727403 ns/iter 15.117376396682959 ns/iter 1.01
Micro_Draft4_Type_Object 9.653635451516392 ns/iter 9.029392746503369 ns/iter 1.07
Micro_Draft4_Ref_Single_100 2767891.809701599 ns/iter 2413445.072413808 ns/iter 1.15
Micro_Draft4_Compile_Ref_Many_Nested 1799911.6546391894 ns/iter 1770400.3583959606 ns/iter 1.02
Micro_Draft6_Property_Names 126.09289474944703 ns/iter 133.43631331747915 ns/iter 0.94
Micro_Draft7_If_Then_Else 38.9029643271904 ns/iter 40.50896922133338 ns/iter 0.96
Micro_2019_09_Unevaluated_Properties 54.62761408373091 ns/iter 52.91358377141658 ns/iter 1.03
Micro_2020_12_Dynamic_Ref 364.1522113587131 ns/iter 358.1579879886378 ns/iter 1.02
Micro_2020_12_Dynamic_Ref_Single 9.339964268747769 ns/iter 8.721172648811745 ns/iter 1.07
Micro_2020_12_Simple_Output_Mask 142423.34637211193 ns/iter 140349.47597809925 ns/iter 1.01
Micro_2020_12_Simple_Output_Annotations 170981.49373191746 ns/iter 165451.1462949706 ns/iter 1.03
Micro_2020_12_Compile_NonCircular_Shared_Refs 1109532.6800000293 ns/iter 1095180.259375006 ns/iter 1.01

This comment was automatically generated by workflow using github-action-benchmark.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark (macos/llvm)

Details
Benchmark suite Current: 0a2e330 Previous: 8c422d9 Ratio
E2E_Compiler_adaptivecard 115947089.2857176 ns/iter 113755819.33333479 ns/iter 1.02
E2E_Compiler_ansible_meta 41061804.687501535 ns/iter 41234851.888886064 ns/iter 1.00
E2E_Compiler_aws_cdk 591882.5420000075 ns/iter 678094.5512820707 ns/iter 0.87
E2E_Compiler_babelrc 3922345.1999994335 ns/iter 3641353.22159081 ns/iter 1.08
E2E_Compiler_clang_format 22224625.000000022 ns/iter 24279501.13513583 ns/iter 0.92
E2E_Compiler_cmake_presets 52826887.49999806 ns/iter 45266511.13333174 ns/iter 1.17
E2E_Compiler_code_climate 4127033.5399997295 ns/iter 3705568.7499998515 ns/iter 1.11
E2E_Compiler_cql2 20976330.56666837 ns/iter 19280806.250000637 ns/iter 1.09
E2E_Compiler_cspell 36400908.34999796 ns/iter 34718391.65000006 ns/iter 1.05
E2E_Compiler_cypress 6184401.648648327 ns/iter 7134458.325581786 ns/iter 0.87
E2E_Compiler_deno 9817870.575757712 ns/iter 12784897.666667921 ns/iter 0.77
E2E_Compiler_dependabot 5957158.4786323765 ns/iter 6772968.863157602 ns/iter 0.88
E2E_Compiler_draft_04 2955408.1679998487 ns/iter 3453318.750000149 ns/iter 0.86
E2E_Compiler_fabric_mod 5128188.541666153 ns/iter 6938164.948453575 ns/iter 0.74
E2E_Compiler_geojson 33427884.277772233 ns/iter 46652894.466660656 ns/iter 0.72
E2E_Compiler_gitpod_configuration 5463929.827067974 ns/iter 6923180.788136105 ns/iter 0.79
E2E_Compiler_helm_chart_lock 688688.930302999 ns/iter 1178143.2806200492 ns/iter 0.58
E2E_Compiler_importmap 356173.7596544783 ns/iter 518101.9638870864 ns/iter 0.69
E2E_Compiler_jasmine 1573395.6342858488 ns/iter 2140375.1183098895 ns/iter 0.74
E2E_Compiler_jshintrc 3935078.0909088273 ns/iter 6854336.227723315 ns/iter 0.57
E2E_Compiler_jsconfig 22910608.575757302 ns/iter 32718953.947365712 ns/iter 0.70
E2E_Compiler_krakend 177693430.33330643 ns/iter 239404500.0000157 ns/iter 0.74
E2E_Compiler_lazygit 43985865.777775265 ns/iter 56988875.000001825 ns/iter 0.77
E2E_Compiler_lerna 2239479.354354127 ns/iter 2513152.307116205 ns/iter 0.89
E2E_Compiler_nest_cli 8041600.17021283 ns/iter 11222516.891891517 ns/iter 0.72
E2E_Compiler_omc 279703333.33333504 ns/iter 288693354.00003135 ns/iter 0.97
E2E_Compiler_omnisharp 8505851.470587967 ns/iter 10228709.459459031 ns/iter 0.83
E2E_Compiler_openapi 33300436.608699426 ns/iter 38436996.0476241 ns/iter 0.87
E2E_Compiler_pre_commit_hooks 6362454.999999727 ns/iter 6565405.577981612 ns/iter 0.97
E2E_Compiler_pulumi 5831476.5090906145 ns/iter 6350677.958334216 ns/iter 0.92
E2E_Compiler_semantic_release 2440932.0729166237 ns/iter 2111177.405498021 ns/iter 1.16
E2E_Compiler_stale 2673567.4809784717 ns/iter 2293559.6098266672 ns/iter 1.17
E2E_Compiler_stylecop 15012674.99999964 ns/iter 9242285.363635954 ns/iter 1.62
E2E_Compiler_tmuxinator 2952413.3959045094 ns/iter 2951763.943609247 ns/iter 1.00
E2E_Compiler_ui5 88801640.62500739 ns/iter 98417547.57142748 ns/iter 0.90
E2E_Compiler_ui5_manifest 619359083.0000631 ns/iter 602888915.9999835 ns/iter 1.03
E2E_Compiler_unreal_engine_uproject 4727550.420290154 ns/iter 6764350.0919540655 ns/iter 0.70
E2E_Compiler_vercel 18659530.64705817 ns/iter 27794251.576923355 ns/iter 0.67
E2E_Compiler_yamllint 448974.62265375216 ns/iter 534279.4697317979 ns/iter 0.84
E2E_Evaluator_adaptivecard 56222.10632971624 ns/iter 38232.749945606534 ns/iter 1.47
E2E_Evaluator_ansible_meta 278067.92027429346 ns/iter 354249.16825090913 ns/iter 0.78
E2E_Evaluator_aws_cdk 61279.223617539334 ns/iter 70571.11705121204 ns/iter 0.87
E2E_Evaluator_babelrc 152149.489008861 ns/iter 150161.75303560757 ns/iter 1.01
E2E_Evaluator_clang_format 108843.14011070003 ns/iter 138638.96574359667 ns/iter 0.79
E2E_Evaluator_cmake_presets 4218049.330882637 ns/iter 7300870.075268708 ns/iter 0.58
E2E_Evaluator_code_climate 200933.80394847057 ns/iter 343798.2417640646 ns/iter 0.58
E2E_Evaluator_cql2 244793.43871171967 ns/iter 317548.18075116735 ns/iter 0.77
E2E_Evaluator_cspell 607685.6398523746 ns/iter 802674.4685258995 ns/iter 0.76
E2E_Evaluator_cypress 176955.19761775056 ns/iter 240115.29798617613 ns/iter 0.74
E2E_Evaluator_deno 288136.07070707955 ns/iter 342132.7707366911 ns/iter 0.84
E2E_Evaluator_dependabot 500387.1448212942 ns/iter 574589.1669999992 ns/iter 0.87
E2E_Evaluator_draft_04 7449595.121212235 ns/iter 11070057.300000258 ns/iter 0.67
E2E_Evaluator_fabric_mod 831244.6738894413 ns/iter 866135.3092783641 ns/iter 0.96
E2E_Evaluator_geojson 27212442.307695884 ns/iter 30926123.090911128 ns/iter 0.88
E2E_Evaluator_gitpod_configuration 305563.89528090914 ns/iter 340237.74206837796 ns/iter 0.90
E2E_Evaluator_helm_chart_lock 377899.71010488266 ns/iter 494309.94787141535 ns/iter 0.76
E2E_Evaluator_importmap 59570.86669999398 ns/iter 72966.58246499988 ns/iter 0.82
E2E_Evaluator_jasmine 134741.584295613 ns/iter 156985.5069922341 ns/iter 0.86
E2E_Evaluator_jshintrc 1396384.2315369349 ns/iter 1452812.160569075 ns/iter 0.96
E2E_Evaluator_jsconfig 540327.5000001031 ns/iter 562326.9159999609 ns/iter 0.96
E2E_Evaluator_krakend 255949.66296562506 ns/iter 318967.1133616455 ns/iter 0.80
E2E_Evaluator_lazygit 182232.2307508786 ns/iter 198222.32580232673 ns/iter 0.92
E2E_Evaluator_lerna 207826.06324110867 ns/iter 239391.30184746176 ns/iter 0.87
E2E_Evaluator_nest_cli 251261.05553412007 ns/iter 259587.06070289557 ns/iter 0.97
E2E_Evaluator_omc 20628.403558616348 ns/iter 31524.99387728231 ns/iter 0.65
E2E_Evaluator_omnisharp 556359.561753027 ns/iter 821117.4848992835 ns/iter 0.68
E2E_Evaluator_openapi 10108030.594937237 ns/iter 13833982.500000274 ns/iter 0.73
E2E_Evaluator_pre_commit_hooks 459841.63259341824 ns/iter 665324.2021467286 ns/iter 0.69
E2E_Evaluator_pulumi 676445.844781355 ns/iter 887197.5602027955 ns/iter 0.76
E2E_Evaluator_semantic_release 100092.52659884613 ns/iter 142905.6761157976 ns/iter 0.70
E2E_Evaluator_stale 152552.99736347757 ns/iter 184668.42532466835 ns/iter 0.83
E2E_Evaluator_stylecop 298385.9973649611 ns/iter 325940.0014238423 ns/iter 0.92
E2E_Evaluator_tmuxinator 105520.38619275349 ns/iter 125130.661335407 ns/iter 0.84
E2E_Evaluator_ui5 596882.9590000268 ns/iter 749253.3507073725 ns/iter 0.80
E2E_Evaluator_ui5_manifest 2349256.6617099303 ns/iter 3197581.182539417 ns/iter 0.73
E2E_Evaluator_unreal_engine_uproject 618035.6833910291 ns/iter 563305.4579999453 ns/iter 1.10
E2E_Evaluator_vercel 335905.13968257647 ns/iter 447810.65585485677 ns/iter 0.75
E2E_Evaluator_yamllint 20025.32455433277 ns/iter 17927.322384064162 ns/iter 1.12
Micro_Draft4_Meta_1_No_Callback 270.99775336072497 ns/iter 306.25745350800673 ns/iter 0.88
Micro_Draft4_Required_Properties 1037.8754561212634 ns/iter 1275.197488586311 ns/iter 0.81
Micro_Draft4_Many_Optional_Properties_Minimal_Match 32.49539634092386 ns/iter 37.070048325729545 ns/iter 0.88
Micro_Draft4_Few_Optional_Properties_Minimal_Match 17.06369845380396 ns/iter 19.75750530836972 ns/iter 0.86
Micro_Draft4_Items_Schema 635.2059209428357 ns/iter 732.722932948347 ns/iter 0.87
Micro_Draft4_Nested_Object 3.692646511964853 ns/iter 4.607834650805496 ns/iter 0.80
Micro_Draft4_Properties_Triad_Optional 327.0795376367908 ns/iter 666.1771047472689 ns/iter 0.49
Micro_Draft4_Properties_Triad_Closed 245.68796065048176 ns/iter 552.9217633327186 ns/iter 0.44
Micro_Draft4_Properties_Triad_Required 359.32293003381665 ns/iter 707.953857309117 ns/iter 0.51
Micro_Draft4_Properties_Closed 54.31061537410084 ns/iter 77.7640024636703 ns/iter 0.70
Micro_Draft4_Non_Recursive_Ref 22.57100288685172 ns/iter 28.45689013283877 ns/iter 0.79
Micro_Draft4_Pattern_Properties_True 153.0834697985056 ns/iter 235.4726766306228 ns/iter 0.65
Micro_Draft4_Ref_To_Single_Property 11.80823718810979 ns/iter 16.61164941792155 ns/iter 0.71
Micro_Draft4_Additional_Properties_Type 47.61999428625853 ns/iter 50.34575869906307 ns/iter 0.95
Micro_Draft4_Nested_Oneof 56.546715001109256 ns/iter 70.08587178737324 ns/iter 0.81
Micro_Draft4_Short_Enum 9.121263339197021 ns/iter 11.964984588656126 ns/iter 0.76
Micro_Draft4_Long_Enum 15.140588178865952 ns/iter 17.45962894775337 ns/iter 0.87
Micro_Draft4_Long_Enum_Short_Strings 10.639967023940052 ns/iter 11.71361836719513 ns/iter 0.91
Micro_Draft4_Type_Object 6.098620196469711 ns/iter 8.156871841455043 ns/iter 0.75
Micro_Draft4_Ref_Single_100 2192650.251515371 ns/iter 3163086.139422852 ns/iter 0.69
Micro_Draft4_Compile_Ref_Many_Nested 1484988.0705394326 ns/iter 2431186.9575163666 ns/iter 0.61
Micro_Draft6_Property_Names 136.624284620953 ns/iter 151.38141776696608 ns/iter 0.90
Micro_Draft7_If_Then_Else 37.15602764872501 ns/iter 47.5058560471921 ns/iter 0.78
Micro_2019_09_Unevaluated_Properties 52.05583310350249 ns/iter 72.54137637251995 ns/iter 0.72
Micro_2020_12_Dynamic_Ref 339.71445866093825 ns/iter 505.65513394801013 ns/iter 0.67
Micro_2020_12_Dynamic_Ref_Single 8.226226576919178 ns/iter 9.343415889887218 ns/iter 0.88
Micro_2020_12_Simple_Output_Mask 210017.3347034741 ns/iter 203251.78304715658 ns/iter 1.03
Micro_2020_12_Simple_Output_Annotations 221955.72274436042 ns/iter 224704.85710163845 ns/iter 0.99
Micro_2020_12_Compile_NonCircular_Shared_Refs 1231739.3227953406 ns/iter 1379343.5334728619 ns/iter 0.89

This comment was automatically generated by workflow using github-action-benchmark.

@jviotti jviotti changed the title Property fix references from within propertyNames Properly fix references from within propertyNames Jan 21, 2026
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark (linux/gcc)

Details
Benchmark suite Current: 0a2e330 Previous: 8c422d9 Ratio
Micro_2020_12_Dynamic_Ref 452.5602991525219 ns/iter 462.0877361870449 ns/iter 0.98
Micro_2020_12_Dynamic_Ref_Single 9.146104745358874 ns/iter 9.541478737673762 ns/iter 0.96
Micro_2020_12_Simple_Output_Mask 140481.5656704685 ns/iter 138615.3116425021 ns/iter 1.01
Micro_2020_12_Simple_Output_Annotations 176895.58503401745 ns/iter 175472.39089992872 ns/iter 1.01
Micro_2020_12_Compile_NonCircular_Shared_Refs 1271595.030965386 ns/iter 1237691.5904255772 ns/iter 1.03
Micro_2019_09_Unevaluated_Properties 48.25855543334864 ns/iter 47.032437513608315 ns/iter 1.03
Micro_Draft7_If_Then_Else 44.77198009545124 ns/iter 45.858597543864555 ns/iter 0.98
Micro_Draft6_Property_Names 171.0047115260244 ns/iter 163.43825862997136 ns/iter 1.05
Micro_Draft4_Meta_1_No_Callback 223.5559438069303 ns/iter 228.66628615347148 ns/iter 0.98
Micro_Draft4_Required_Properties 830.940701092146 ns/iter 867.9524645016254 ns/iter 0.96
Micro_Draft4_Many_Optional_Properties_Minimal_Match 30.017917408829046 ns/iter 30.0244621306391 ns/iter 1.00
Micro_Draft4_Few_Optional_Properties_Minimal_Match 18.827813903741543 ns/iter 18.81409961831558 ns/iter 1.00
Micro_Draft4_Items_Schema 530.973210871393 ns/iter 539.1499163380078 ns/iter 0.98
Micro_Draft4_Nested_Object 3.4225844129601497 ns/iter 3.2418503462247847 ns/iter 1.06
Micro_Draft4_Properties_Triad_Optional 467.11458167130695 ns/iter 613.2114946436395 ns/iter 0.76
Micro_Draft4_Properties_Triad_Closed 397.6214642612402 ns/iter 497.6360303257254 ns/iter 0.80
Micro_Draft4_Properties_Triad_Required 502.1425917718129 ns/iter 642.1119243833851 ns/iter 0.78
Micro_Draft4_Properties_Closed 83.4089154540628 ns/iter 83.8906119583319 ns/iter 0.99
Micro_Draft4_Non_Recursive_Ref 14.181097417319576 ns/iter 14.165882217157671 ns/iter 1.00
Micro_Draft4_Pattern_Properties_True 250.01984967132773 ns/iter 254.06078259824037 ns/iter 0.98
Micro_Draft4_Ref_To_Single_Property 18.525002383112334 ns/iter 19.859486769763265 ns/iter 0.93
Micro_Draft4_Additional_Properties_Type 19.40818575207255 ns/iter 19.135096390474924 ns/iter 1.01
Micro_Draft4_Nested_Oneof 111.41214738519128 ns/iter 112.06343298001805 ns/iter 0.99
Micro_Draft4_Short_Enum 17.84394136558106 ns/iter 17.77630119488586 ns/iter 1.00
Micro_Draft4_Long_Enum 18.91659290214789 ns/iter 19.787208174965116 ns/iter 0.96
Micro_Draft4_Long_Enum_Short_Strings 17.7953374114685 ns/iter 18.310253379190474 ns/iter 0.97
Micro_Draft4_Type_Object 9.20999621692712 ns/iter 10.060907055600603 ns/iter 0.92
Micro_Draft4_Ref_Single_100 2831512.9959679553 ns/iter 2676285.8740455564 ns/iter 1.06
Micro_Draft4_Compile_Ref_Many_Nested 1957829.3743014093 ns/iter 2033870.7500000976 ns/iter 0.96
E2E_Compiler_adaptivecard 74420293.12500153 ns/iter 75269113.0000045 ns/iter 0.99
E2E_Compiler_ansible_meta 31892626.227271523 ns/iter 32551520.57142498 ns/iter 0.98
E2E_Compiler_aws_cdk 564366.4818566099 ns/iter 583867.2646076496 ns/iter 0.97
E2E_Compiler_babelrc 3048453.8260867815 ns/iter 3093318.1111110267 ns/iter 0.99
E2E_Compiler_clang_format 20500748.558825254 ns/iter 20420162.352941003 ns/iter 1.00
E2E_Compiler_cmake_presets 30150174.913046613 ns/iter 29862911.480004188 ns/iter 1.01
E2E_Compiler_code_climate 3052945.4869565596 ns/iter 3096648.066666603 ns/iter 0.99
E2E_Compiler_cql2 15639716.022726381 ns/iter 14464550.693875879 ns/iter 1.08
E2E_Compiler_cspell 26612770.730768997 ns/iter 24871918.20689375 ns/iter 1.07
E2E_Compiler_cypress 4406636.484276841 ns/iter 4591609.145570256 ns/iter 0.96
E2E_Compiler_deno 9206342.960526938 ns/iter 9939427.893333837 ns/iter 0.93
E2E_Compiler_dependabot 4778463.262069354 ns/iter 4839344.034965163 ns/iter 0.99
E2E_Compiler_draft_04 3188896.2454543575 ns/iter 3130451.2857143357 ns/iter 1.02
E2E_Compiler_fabric_mod 5590490.738095396 ns/iter 5529040.259842786 ns/iter 1.01
E2E_Compiler_geojson 27093360.076924875 ns/iter 31228258.458331957 ns/iter 0.87
E2E_Compiler_gitpod_configuration 5643760.104838462 ns/iter 5760062.016528808 ns/iter 0.98
E2E_Compiler_helm_chart_lock 935949.7575757485 ns/iter 927243.1633467005 ns/iter 1.01
E2E_Compiler_importmap 460826.1357943247 ns/iter 455978.1540452858 ns/iter 1.01
E2E_Compiler_jasmine 1670005.9952606065 ns/iter 1644742.4370548292 ns/iter 1.02
E2E_Compiler_jshintrc 5360112.656489078 ns/iter 5279599.507575354 ns/iter 1.02
E2E_Compiler_jsconfig 23757369.0666674 ns/iter 25473613.749998745 ns/iter 0.93
E2E_Compiler_krakend 168745583.0000033 ns/iter 166531219.00000656 ns/iter 1.01
E2E_Compiler_lazygit 40957885.05882785 ns/iter 40901398.76470456 ns/iter 1.00
E2E_Compiler_lerna 2049981.5422738432 ns/iter 2032140.6878612854 ns/iter 1.01
E2E_Compiler_nest_cli 8546045.71951291 ns/iter 8665308.850000031 ns/iter 0.99
E2E_Compiler_omc 236638482.3333571 ns/iter 192558191.25001493 ns/iter 1.23
E2E_Compiler_omnisharp 8068725.05681869 ns/iter 8220714.220930256 ns/iter 0.98
E2E_Compiler_openapi 29785971.04167117 ns/iter 28654303.875001118 ns/iter 1.04
E2E_Compiler_pre_commit_hooks 6096570.052631123 ns/iter 6027339.724137791 ns/iter 1.01
E2E_Compiler_pulumi 4685420.17449712 ns/iter 4645366.993333938 ns/iter 1.01
E2E_Compiler_semantic_release 1887600.097034917 ns/iter 1850434.7745357365 ns/iter 1.02
E2E_Compiler_stale 1899073.0080645946 ns/iter 1858446.259946948 ns/iter 1.02
E2E_Compiler_stylecop 7117728.282827961 ns/iter 7042102.158415768 ns/iter 1.01
E2E_Compiler_tmuxinator 2468940.933566672 ns/iter 2423154.048442736 ns/iter 1.02
E2E_Compiler_ui5 58470860.08334183 ns/iter 56377811.83333838 ns/iter 1.04
E2E_Compiler_ui5_manifest 457517988.00000644 ns/iter 367097996.4999788 ns/iter 1.25
E2E_Compiler_unreal_engine_uproject 5331074.2424240615 ns/iter 5246128.282442615 ns/iter 1.02
E2E_Compiler_vercel 15061887.914895277 ns/iter 16238533.999998337 ns/iter 0.93
E2E_Compiler_yamllint 511179.02196195064 ns/iter 507011.1926140352 ns/iter 1.01
E2E_Evaluator_adaptivecard 35188.13732240746 ns/iter 31587.794080773256 ns/iter 1.11
E2E_Evaluator_ansible_meta 307517.31028450996 ns/iter 298028.4854077312 ns/iter 1.03
E2E_Evaluator_aws_cdk 60195.28164717349 ns/iter 60099.99536321774 ns/iter 1.00
E2E_Evaluator_babelrc 138482.18210673853 ns/iter 137411.2405113027 ns/iter 1.01
E2E_Evaluator_clang_format 110006.13766194046 ns/iter 107004.30278333693 ns/iter 1.03
E2E_Evaluator_cmake_presets 5854926.557377126 ns/iter 7214020.632653613 ns/iter 0.81
E2E_Evaluator_code_climate 239260.53447100578 ns/iter 241519.17830252333 ns/iter 0.99
E2E_Evaluator_cql2 321426.23231399915 ns/iter 312572.95887930307 ns/iter 1.03
E2E_Evaluator_cspell 672102.8463054044 ns/iter 666085.6515581007 ns/iter 1.01
E2E_Evaluator_cypress 185860.44473893495 ns/iter 188405.59015515904 ns/iter 0.99
E2E_Evaluator_deno 370087.9423889959 ns/iter 378462.58607667725 ns/iter 0.98
E2E_Evaluator_dependabot 521206.2339312582 ns/iter 515212.1752041112 ns/iter 1.01
E2E_Evaluator_draft_04 9664764.58333274 ns/iter 10235320.735293886 ns/iter 0.94
E2E_Evaluator_fabric_mod 954264.5034200796 ns/iter 940061.1493943653 ns/iter 1.02
E2E_Evaluator_geojson 26546309.92307935 ns/iter 29421249.43999715 ns/iter 0.90
E2E_Evaluator_gitpod_configuration 298678.99283912417 ns/iter 298374.8586723834 ns/iter 1.00
E2E_Evaluator_helm_chart_lock 365439.2102272805 ns/iter 355577.2664593331 ns/iter 1.03
E2E_Evaluator_importmap 60337.53900523117 ns/iter 60260.24588326062 ns/iter 1.00
E2E_Evaluator_jasmine 150825.05823165682 ns/iter 153207.6520255862 ns/iter 0.98
E2E_Evaluator_jshintrc 1050300.0963854745 ns/iter 1108697.7754801079 ns/iter 0.95
E2E_Evaluator_jsconfig 486451.2521008463 ns/iter 486212.9655814072 ns/iter 1.00
E2E_Evaluator_krakend 239204.89585474646 ns/iter 229459.77171780093 ns/iter 1.04
E2E_Evaluator_lazygit 168486.4490303439 ns/iter 164691.375646443 ns/iter 1.02
E2E_Evaluator_lerna 157047.6487935739 ns/iter 155798.17223359316 ns/iter 1.01
E2E_Evaluator_nest_cli 258089.79908675567 ns/iter 252869.9382102156 ns/iter 1.02
E2E_Evaluator_omc 26964.32480877797 ns/iter 26030.458954531798 ns/iter 1.04
E2E_Evaluator_omnisharp 610842.5000000539 ns/iter 599044.2349822791 ns/iter 1.02
E2E_Evaluator_openapi 15886644.041666878 ns/iter 12056018.894736154 ns/iter 1.32
E2E_Evaluator_pre_commit_hooks 583895.2945545302 ns/iter 572326.393442616 ns/iter 1.02
E2E_Evaluator_pulumi 851725.0049080368 ns/iter 834530.0507075326 ns/iter 1.02
E2E_Evaluator_semantic_release 141466.57163063058 ns/iter 136720.75600703392 ns/iter 1.03
E2E_Evaluator_stale 177364.78031861133 ns/iter 176478.6845177555 ns/iter 1.01
E2E_Evaluator_stylecop 361930.1854879595 ns/iter 368579.1995809147 ns/iter 0.98
E2E_Evaluator_tmuxinator 129825.26209162975 ns/iter 128660.21924060816 ns/iter 1.01
E2E_Evaluator_ui5 673709.568844234 ns/iter 661001.5101058775 ns/iter 1.02
E2E_Evaluator_ui5_manifest 3258108.8990828576 ns/iter 3269732.416666426 ns/iter 1.00
E2E_Evaluator_unreal_engine_uproject 536797.389105083 ns/iter 533914.7911146884 ns/iter 1.01
E2E_Evaluator_vercel 393280.8309278679 ns/iter 356422.75213245506 ns/iter 1.10
E2E_Evaluator_yamllint 13842.045023742985 ns/iter 13629.827291118323 ns/iter 1.02

This comment was automatically generated by workflow using github-action-benchmark.

@jviotti jviotti merged commit dff0468 into main Jan 21, 2026
16 checks passed
@jviotti jviotti deleted the propery-names-checks branch January 21, 2026 17:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants