chore: add CI integrity check for docs/doc-deps.yaml#519
Conversation
Overall assessment
Executive summary
Methodology
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
Path to Approval
Validation note: |
|
🔁 AI review rerun (requested by @igerber) Head SHA: Overall assessment✅ Looks good — the prior P1 from the last AI review is resolved, and I found no new unmitigated P0/P1 issues in the changed files. Executive summary
Methodology
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
Validation note: |
3809f22 to
481c2d7
Compare
|
🔁 AI review rerun (requested by @igerber) Head SHA: Overall assessment✅ Looks good — this re-review resolves the prior P1, and I found no new unmitigated P0/P1 issues in the changed files. One non-blocking P2 test-parser robustness gap remains. Executive summary
Methodology
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
Validation note: |
Guard the doc dependency map (consumed by /docs-impact, /pre-merge-check,
CLAUDE.md) with a new pure-stdlib (no PyYAML) integrity test:
1. no stale paths — every referenced doc path / sources key / groups
member exists on disk;
2. no unmapped public source — every public diff_diff/**/*.py module is
mapped (private _-prefixed modules and __init__.py exempt);
3. resolvable groups — every group is non-empty and its primary (first)
member has a sources: entry, since members resolve to the primary for
doc lookup.
The module skips when docs/doc-deps.yaml is absent (e.g. the installed-wheel
"Python Tests" matrix copies tests to a temp dir), so it only runs from the
source tree. Wired into the docs-tests.yml doc-snippets job with the same
PYTHONPATH=. prefix the snippet step uses (conftest imports diff_diff at
collection).
Map diff_diff/agent_workflow.py — the lone unmapped public module — to its
agent guide (llms-autonomous.txt).
Re-file TODO L174 (.txt guide-snippet validation) as not-low-lift: a probe
of the 112 guide code fences found only ~20% standalone-runnable (the rest
are API-signature references, context fragments, or data-shape-specific).
Remove the now-shipped L175 row.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
481c2d7 to
906f517
Compare
|
🔁 AI review rerun (requested by @igerber) Head SHA: Overall Assessment ✅ Looks good — this re-review resolves the prior parser false-green gap, and I found no new unmitigated P0/P1 issues in the changed files. Executive Summary
Methodology
Code Quality
Performance
Maintainability
Tech Debt
Security
Documentation/Tests
Validation note: |
Summary
tests/test_doc_deps_integrity.py— a pure-stdlib (no PyYAML) line-parser CI check that guardsdocs/doc-deps.yamlagainst (1) stale referenced paths and (2) unmapped publicdiff_diffsource modules. Wired into thedocs-tests.ymldoc-snippets job with thePYTHONPATH=.prefix (conftest importsdiff_diffat collection, and that job doesn'tpip install diff_diff).diff_diff/agent_workflow.py— the lone unmapped public module — to its agent guide (llms-autonomous.txt).TODO.mdL174 (.txtguide-snippet validation) as not low-lift: a probe of the 112 guide code fences found only ~20% standalone-runnable (the rest are API-signature references, context fragments, or dataset-shape-specific). Remove the now-shipped L175 row.The map is consumed by
/docs-impact,/pre-merge-check, and CLAUDE.md but had no CI guard; this prevents future drift (0 stale today). Private (_-prefixed) modules and__init__.pyare exempt by convention; intentional public exceptions go in an (initially empty)_ALLOWLIST.Methodology references (required if estimator / math changes)
Validation
tests/test_doc_deps_integrity.py(142 cases pass in 0.04s). Negative controls confirmed both guards fail-closed: a boguspath:failstest_referenced_paths_exist, and an unmapped public module failstest_all_public_sources_mapped.tests/test_doc_snippets.pystill collects (116 tests); nodiff_diff/source touched.Security / privacy
🤖 Generated with Claude Code