Skip to content

test: report a bare docs/adr/NNNN citation as unresolved - #499

Merged
lesnik512 merged 1 commit into
mainfrom
test/adr-short-citations
Sep 19, 2026
Merged

lesnik512 merged 1 commit into
mainfrom
test/adr-short-citations

Conversation

@lesnik512

Copy link
Copy Markdown
Member

tests/test_adr_citations.py only matched docs/adr/NNNN-<slug>.md, so a citation written as a bare docs/adr/NNNN was invisible to it. After a renumber or a drop such a citation points at whichever record holds that number next, and nothing notices.

The pattern now also captures the bare form. A bare number names no file, so it falls out of the existing is_file() check as unresolved, with no second code path. One new case in the test-of-the-test covers it, and the INVARIANT: docstring states the rule.

Same change as modern-python/httpware#129; the file stays byte-identical across the org.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Benchmark

Details
Benchmark suite Current: 18d7725 Previous: 524f28d Ratio
benchmarks/test_guard_by_type.py::test_g16_resolve_by_type 4193349.6493825098 iter/sec (stddev: 8.795858706399945e-9) 5598910.7207091525 iter/sec (stddev: 7.26915251762792e-9) 1.34
benchmarks/test_guard_by_type.py::test_g17_resolve_by_type_large_registry 4053423.637121336 iter/sec (stddev: 1.025274911611755e-8) 5585463.852668096 iter/sec (stddev: 7.196401399491763e-9) 1.38
benchmarks/test_guard_cold.py::test_g8_cold_first_resolve 15530.43733477769 iter/sec (stddev: 0.0001697831917167987) 22081.988809071587 iter/sec (stddev: 0.00018091858330856117) 1.42
benchmarks/test_guard_cold.py::test_g8b_cold_first_resolve_cached 13779.160296294536 iter/sec (stddev: 0.00004816259981867011) 20498.878881118402 iter/sec (stddev: 0.0000352854689135663) 1.49
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[1] 550.9508778779998 iter/sec (stddev: 0.00006946493957698296) 695.3334732534075 iter/sec (stddev: 0.000053486212526659624) 1.26
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[2] 501.6646248598985 iter/sec (stddev: 0.00022814267183809416) 654.6838802692513 iter/sec (stddev: 0.000029542260375029222) 1.31
benchmarks/test_guard_concurrency.py::test_g14_concurrent_cached_hit[4] 452.52154641950085 iter/sec (stddev: 0.00008970788971136865) 586.1355595582054 iter/sec (stddev: 0.00002554556056311911) 1.30
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[1] 1632.6984435764984 iter/sec (stddev: 0.00022815831090165734) 2341.7309431159524 iter/sec (stddev: 0.00014339360322852674) 1.43
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[2] 1348.4067832224991 iter/sec (stddev: 0.00018766321184359794) 1910.299134219355 iter/sec (stddev: 0.00013436297004015588) 1.42
benchmarks/test_guard_concurrency.py::test_g15_concurrent_first_resolve[4] 987.400311241708 iter/sec (stddev: 0.00018089691629806628) 1197.755334637698 iter/sec (stddev: 0.001079518266410367) 1.21
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[1] 1403.3887206418833 iter/sec (stddev: 0.0013179985259333827) 2315.7123320247174 iter/sec (stddev: 0.0001519233413637376) 1.65
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[2] 1207.0808084472544 iter/sec (stddev: 0.00022771488329167896) 1705.1018893565981 iter/sec (stddev: 0.0001511576949024101) 1.41
benchmarks/test_guard_concurrency.py::test_g15b_concurrent_first_resolve_sibling_children[4] 810.7341799970059 iter/sec (stddev: 0.00022724347590644781) 1112.4026414777984 iter/sec (stddev: 0.00015850153500018962) 1.37
benchmarks/test_guard_lifecycle.py::test_g6_build_child_container 734869.3253534877 iter/sec (stddev: 3.9041405683692376e-8) 919995.0246658805 iter/sec (stddev: 1.8499624850834436e-7) 1.25
benchmarks/test_guard_lifecycle.py::test_g6b_build_child_container_auto_scope 682287.0603410599 iter/sec (stddev: 3.703544686629357e-8) 856408.456304969 iter/sec (stddev: 4.231562202585244e-8) 1.26
benchmarks/test_guard_lifecycle.py::test_g7_request_lifecycle_batch 2488.8725710185668 iter/sec (stddev: 0.000012559331115188302) 3056.052717078274 iter/sec (stddev: 0.000029388297346404162) 1.23
benchmarks/test_guard_lifecycle.py::test_g7c_event_loop_floor_control 61809.21351569864 iter/sec (stddev: 0.0000019873526849966415) 77621.66988916937 iter/sec (stddev: 0.0000016895713755092008) 1.26
benchmarks/test_guard_lifecycle.py::test_g13_teardown_at_scale 49785.9039827497 iter/sec (stddev: 0.0000019801360953027174) 59197.13086082746 iter/sec (stddev: 0.0000024960996332147702) 1.19
benchmarks/test_guard_resolve.py::test_g1_transient_resolve 2477811.3541878997 iter/sec (stddev: 2.332300897168641e-8) 2819257.275139699 iter/sec (stddev: 6.750230746987248e-8) 1.14
benchmarks/test_guard_resolve.py::test_g2_cached_resolve 4108419.5485135484 iter/sec (stddev: 1.538516093091777e-8) 5092416.668463188 iter/sec (stddev: 2.6223024995915988e-8) 1.24
benchmarks/test_guard_resolve.py::test_g3_deep_chain 854488.2916099186 iter/sec (stddev: 4.224806221491062e-8) 927529.1772851313 iter/sec (stddev: 1.89289619219367e-7) 1.09
benchmarks/test_guard_resolve.py::test_g4_wide_resolve 509210.92547732027 iter/sec (stddev: 3.083744022093891e-7) 576587.7467946163 iter/sec (stddev: 4.585749160472392e-7) 1.13
benchmarks/test_guard_resolve.py::test_g5_cross_scope 1882659.7482695968 iter/sec (stddev: 2.8594995104606042e-8) 2535574.4261436476 iter/sec (stddev: 2.46754851918816e-8) 1.35
benchmarks/test_guard_resolve.py::test_g9_context_resolve 1104952.810090592 iter/sec (stddev: 1.2698862602134017e-7) 1450147.2370748282 iter/sec (stddev: 1.2167689296650866e-7) 1.31
benchmarks/test_guard_resolve.py::test_g12_override_active_resolve 845891.5807229168 iter/sec (stddev: 3.9915340140737184e-8) 1039896.135173878 iter/sec (stddev: 4.225795455913317e-8) 1.23
benchmarks/test_guard_resolve.py::test_g18_alias_hop 2783597.97185008 iter/sec (stddev: 1.0207962561040927e-8) 3693149.639516103 iter/sec (stddev: 3.9638323918477484e-8) 1.33
benchmarks/test_guard_validate.py::test_g10_validate_deep_chain 24500.262030281152 iter/sec (stddev: 0.000024856352272885555) 34478.015317743026 iter/sec (stddev: 0.00002558516930629368) 1.41
benchmarks/test_guard_validate.py::test_g11_validate_wide 15256.809017228125 iter/sec (stddev: 0.000030485974992660118) 20998.271548283607 iter/sec (stddev: 0.000020273574046902753) 1.38

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

@lesnik512
lesnik512 merged commit 7cfecfd into main Sep 19, 2026
10 checks passed
@lesnik512
lesnik512 deleted the test/adr-short-citations branch September 19, 2026 10:27
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.

1 participant