docs(docs): close audit findings — ADR gap rule, audits lifecycle, agent files#1390
Conversation
…ent files - Add KNOWN_NUMBERING_GAPS allowlist + findNumberingGaps() rule #6 in scripts/docs/check-adr-graph.mjs so the ADR graph validator catches any future undocumented sequential gap (whitelists 0029, the known collision from 2026-05-02 parallel sessions). - Add unit tests for findNumberingGaps + validateGraph gap-rule and a guard test that pins KNOWN_NUMBERING_GAPS membership. - docs/adr/README.md: refresh freshness header, replace stale 'наступний номер 0031' with detailed 0029-gap explanation referencing the whitelist. - docs/audits/README.md: add Status column + Lifecycle section (Active/Closed/Archived); mark closed audits as Closed. - Move ux-audit-2025.md to docs/audits/archive/, flip Status: Active to Status: Archived, add archival blockquote pointing to the canonical design system + UX-IMPROVEMENT-PLAN. - Update scripts/docs/freshness-config.json + governance/doc-freshness.md with the new archive/ path so coverage check stays green. - Commit the 2026-05-02 doc-hygiene audit itself as historical record with Status: Active. - CLAUDE.md / DEVIN.md: align as parallel thin pointers to AGENTS.md with a single-source-of-truth callout; keep only agent-specific bullets. Co-Authored-By: dmytro.s.stakhov <dmytro.s.stakhov@gmail.com>
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Caution Review failedPull request was closed or merged during review 📝 WalkthroughWalkthroughDocumentation audit identifying and enforcing ADR numbering consistency, refactoring agent-specific guidance documents as thin pointers to a central authority, archiving stale audit records, and extending ADR graph validation with a configurable known-gaps allowlist. ChangesDocumentation Hygiene and ADR Numbering
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Review rate limit: 3/10 reviews remaining, refill in 36 minutes and 9 seconds. Comment |
⏱️ CI Pipeline Duration ReportBased on the last 50 successful runs on the default branch. Overall Pipeline
Trend (last 20 runs): Per-Job Breakdown
|
Summary
Closes the quick-win findings of the 2026-05-02 doc-hygiene audit:
scripts/docs/check-adr-graph.mjs(findNumberingGaps()+KNOWN_NUMBERING_GAPSallowlist) — any new sequential gap fails CI.0029is whitelisted with a comment pointing at the README explainer; future undocumented skips will be caught.0032.Statuscolumn + a Lifecycle section (Active / Closed / Archived) todocs/audits/README.mdand assigns a status per row.docs/audits/ux-audit-2025.md→docs/audits/archive/ux-audit-2025.md, flippedStatus: Active→Archived, added an archival blockquote pointing at the canonical design system + UX-IMPROVEMENT-PLAN.freshness-config.jsonand the example indocs/governance/doc-freshness.mdwere updated to the new path so coverage stays green.CLAUDE.md/DEVIN.mdare now parallel thin pointers toAGENTS.mdwith a single-source-of-truth callout; redundant «Канонічні посилання» clones removed, only agent-specific bullets kept.docs/audits/2026-05-02-doc-hygiene-audit.md(Status: Active) so the findings + fixes are auditable later.scripts/docs/__tests__/check-adr-graph.test.mjsgets 10 new tests forfindNumberingGaps, the validator integration, and a guard pinning0029membership in the allowlist.No runtime / app code touched; this is doc + governance-script-only.
Governing Skill
Playbook
Verification
Additional checks:
--no-verify); prettier + bump-last-validated auto-appliedDocs and Governance
AGENTS.mdneeded an update. (No — Hard Rules untouched; CLAUDE/DEVIN now point at it more explicitly.)ux-audit-2025path.)doc-freshness.mdexample path bumped.)Updated docs:
docs/adr/README.md— gap explainer + freshness bumpdocs/audits/README.md— Status column + Lifecycle sectiondocs/audits/archive/ux-audit-2025.md— flipped to Archived (renamed)docs/audits/2026-05-02-doc-hygiene-audit.md— new historical recorddocs/governance/doc-freshness.md— example pathCLAUDE.md,DEVIN.md— thin-pointer rewriteRisk and Rollout
check-adr-graphrule activates immediately on next CI run; current tree is already compliant (validator passes locally).ux-audit-2025.md→archive/) is the only path-sensitive change — tracked viagit mv, fully reversible.KNOWN_NUMBERING_GAPSallowlist is data-only; removing it would re-fail CI until 0029 is filed or re-whitelisted.Hard Rule #15
AGENTS.mdbefore coding.--no-verify.Reviewer Notes
Worth a closer look:
docs/adr/README.mdandKNOWN_NUMBERING_GAPScomment: «0029-кандидат (per-source AI-memory ingestion gating) був згорнутий в ADR-0028 під час рев'ю». This was reconstructed fromgit logof the 2026-05-02 parallel sessions — please sanity-check the framing matches your recollection. If it doesn't, the README blockquote and theKNOWN_NUMBERING_GAPSinline comment are the two places to adjust.docs/audits/README.mdStatus column are inferred from filename + content (Closed for one-shot assessments, Active for trackers / templates). If any of2026-04-26-sergeant-audit-devin.md,2026-04-28-sergeant-comprehensive-audit.md, orUX-UI-AUDIT-2026.mdis still actively driving work, flip its row fromClosed→Active.findNumberingGaps()window semantics: it scans betweenmin(numbers)andmax(numbers)of the present ADRs. If the very first ADR (0001) is ever deleted, the window silently shifts; the rule still catches new gaps but won't notice a missing prefix. Acceptable for the intended use-case (catching parallel-session collisions at the front of the list) but worth flagging.bump-last-validatedlint-staged hook re-attributed all touched freshness headers to@Skords-01(the committer). This is the hook's intended behavior but might look surprising in the diff for files where the audit text mentions@claude.apps/*,packages/*, workflows, runtime configs are all untouched. Diff is concentrated indocs/,scripts/docs/, plus the two root agent files.Link to Devin session: https://app.devin.ai/sessions/fc46ff4a13544e01a3dc6aebe8ddbc34
Summary by cubic
Adds a CI rule to catch gaps in ADR numbering and cleans up docs per the 2026‑05‑02 doc‑hygiene audit. Also refreshes the audits index, archives the 2025 UX audit, and makes
AGENTS.mdthe clear source of truth for agent docs.New Features
findNumberingGaps()and a new gap rule inscripts/docs/check-adr-graph.mjs;0029whitelisted inKNOWN_NUMBERING_GAPSwith docs.scripts/docs/__tests__/check-adr-graph.test.mjs, including a guard for0029.docs/adr/README.mdwith “Note on missing 0029” and clarified the next ADR is0032.Statuscolumn and lifecycle todocs/audits/README.md; moveddocs/audits/ux-audit-2025.mdtodocs/audits/archive/(Archived) and updated paths inscripts/docs/freshness-config.jsonanddocs/governance/doc-freshness.md; addeddocs/audits/2026-05-02-doc-hygiene-audit.md.CLAUDE.mdandDEVIN.mdas thin pointers toAGENTS.mdwith agent-specific notes only; no runtime/app code changed.Migration
Written for commit 8c84c84. Summary will update on new commits.
Summary by CodeRabbit
Documentation
Chores