fix(P0010): corpus frontmatter cleanup (52 of 58 findings)#220
Merged
Conversation
Resolves 52 of 58 blocking findings from the retrieval-readiness audit. The remaining 6 are about/ pages (tier:0, kind:unknown) — left flagged deliberately, as they are slated to move to a separate KB rather than be addressed with schema changes. Fixes by pattern: - 11 fm-missing: added complete frontmatter blocks (READMEs, planning, audit, book-session, evidence, and 5 old ledger docs predating the schema) - 20 audience-invalid: ledger/handoff/journal/system/backlog -> odd; agents/practitioners/human/internal -> docs/operators/apocrypha per role - 9 tier-missing, 6 exposure-missing, 4 audience-missing: backfilled from directory convention (odd/* = odd/nav/3; docs/* = docs/nav/3) - 2 exposure-invalid: examples/constraint -> nav Verified: existing validate-frontmatter.py still passes on writings/ (41/0); all edited YAML parses; audit drops 58 -> 6 (about/ only). Does not touch about/ — that debt stays visible in the audit until the KB split addresses it.
Canon Quality —
|
Canon Quality — Frontmatter Schema ✅All 41 file(s) in Validator: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
P0010 corpus cleanup — 52 of 58 retrieval-readiness findings
Fixes the structural-field drift the retrieval-readiness audit (#219) surfaced, clearing the path for the contract to eventually enforce. 6 findings deliberately left — the
about/pages (tier: 0,kind: unknown) stay flagged because they are slated to move to a separate KB rather than be patched with schema changes. The audit keeps surfacing them as a standing marker of that unfinished split.Fixes by pattern (37 files)
fm-missingaudience-invalidledger/handoff/journal/system/backlog→odd;agents→docs;practitioners→docs;human→operators;internal→docs/apocryphaper roletier-missingodd/*= 3,docs/*= 3)exposure-missingnav)audience-missingexposure-invalidexamples/constraint→navVerification
validate-frontmatter.pystill passes onwritings/(41 files, 0 findings) — the hard-block gate is unaffectedabout/, by design)What this does NOT do
about/— that's the KB-split debt, kept visiblestabilityvalues flagged informally (out of the audit's scope)Depends on #219 (the audit) for context but is independently mergeable. Next: once both land, flip the audit to
--strictfor the knowledge corpus (excludingabout/until the split).Note
Low Risk
Metadata-only YAML edits using existing enum values; no application code, schema changes, or
about/pages touched.Overview
This PR normalizes YAML frontmatter across the knowledge corpus so retrieval and future strict audits can rely on consistent
audience,tier, andexposure(and related fields) without changing document bodies or the schema.Eleven files that had no frontmatter now get full blocks (agent READMEs, audits, planning, gauntlet evidence, several
odd/ledgerentries). Twenty files replace non-schemaaudiencevalues (internal,handoff,ledger,agents,practitioners,human,system,backlog, etc.) with allowed values—mostlyoddfor handoffs/ledgers/constraints anddocsfor agent/orchestrator material;operatorsfordocs/oddkit/WHY.md;apocryphafor Meta-ODD.tierandexposureare backfilled where missing (typicallynavand tier 3 per path convention). Invalidexposurevalues likeexamples/constraintmove tonav.Per the PR description, six
about/findings stay open on purpose (KB split debt). Existingwritings/frontmatter validation is unchanged.Reviewed by Cursor Bugbot for commit 8faeab7. Bugbot is set up for automated code reviews on this repo. Configure here.