Skip to content

Fix frontmatter: A Proxy Confers Shape, Not Standing#260

Merged
klappy merged 1 commit into
mainfrom
fix/proxy-principle-frontmatter
Jun 19, 2026
Merged

Fix frontmatter: A Proxy Confers Shape, Not Standing#260
klappy merged 1 commit into
mainfrom
fix/proxy-principle-frontmatter

Conversation

@git-repo-auth

@git-repo-auth git-repo-auth Bot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Frontmatter-only fix (no body change). The merged principle failed canon/meta/frontmatter-schema — the validation gate was skipped on the original PR.

  • add the four missing universal fields: uri, audience: canon, exposure: nav, stability: experimental
  • status: candidate -> status: proposed (canon status enum has no 'candidate'; 'proposed' = in canon, not graduated)
  • drop public: false (not a canon field; canon visibility is exposure)
  • quote tags, add audience/type tags

Open question: kind: canon is retained but is not in the authoritative schema. If resolveKind depends on it, update the schema to add kind (per its own rule 4); otherwise drop it.


Note

Low Risk
Metadata-only change with no runtime or principle-body impact; only validation and catalog fields change.

Overview
Aligns YAML frontmatter on a-proxy-confers-shape-not-standing.md with canon/meta/frontmatter-schema after the original merge skipped validation. The principle text is unchanged.

Adds the missing universal fields: uri, audience: canon, exposure: nav, and stability: experimental. Replaces invalid status: candidate with status: proposed, removes non-schema public: false (visibility is exposure), and normalizes tags to a quoted array with canon/type tags. kind: canon remains in place; the PR description flags whether the schema should formally include kind or it should be dropped.

Reviewed by Cursor Bugbot for commit 5164ae1. Bugbot is set up for automated code reviews on this repo. Configure here.

…xposure/stability; status candidate->proposed; drop non-schema public; quote tags)
@github-actions

Copy link
Copy Markdown

Canon Quality — Homepage Surfacing ✅

48 essay(s) scanned. Soft report — never blocks; the hard field gate is the Frontmatter Schema job.

All published essays resolve to the homepage feed.

Report: scripts/surfacing-report.py · Canon: klappy://canon/constraints/frontmatter-validation-before-merge

@github-actions

Copy link
Copy Markdown

Canon Quality — Frontmatter Schema ✅

All 48 file(s) in writings/ conform to klappy://canon/meta/frontmatter-schema.

Validator: scripts/validate-frontmatter.py · Canon: klappy://canon/constraints/frontmatter-validation-before-merge · Run: #293

@github-actions

Copy link
Copy Markdown

Canon Quality — P0010 Retrieval-Readiness ⚠️

Soft report for klappy://canon/constraints/retrieval-disclosure-contract. 678 files scanned. Never blocks — informational until the corpus is ready to enforce.

  • Blocking-class findings: 15 (structural fields the contract would filter on)
  • Warnings: 0 (kind resolves to unknown)
  • Informational: 13 (exempt templates/archive/drafts)

Kind distribution: {'essays': 50, 'canon': 228, 'apocrypha': 38, 'docs': 297, 'journals': 59, 'unknown': 6}
Kind source: {'path': 548, 'frontmatter': 124, 'none': 6} (frontmatter-primary, path-secondary)
Default-include visibility: 575 visible, 103 hidden (journals/apocrypha/unknown)

By rule: {'audience-invalid': 2, 'exposure-missing': 5, 'tier-missing': 5, 'tier-invalid': 7, 'fm-missing': 3, 'kind-unresolvable': 6}

These are not schema violations (see the Frontmatter Schema job for those on writings/). They are corpus-readiness signals for the retrieval contract: invalid/missing audience, exposure, tier, and docs whose kind cannot be resolved. Fix in a corpus-cleanup PR before the contract flips to enforcing. See the retrieval-readiness-findings artifact for the full list.

Validator: scripts/audit-retrieval-readiness.py · Constraint: klappy://canon/constraints/retrieval-disclosure-contract · Run: #293

@github-actions

Copy link
Copy Markdown

Canon Quality — oddkit_audit

No dead klappy:// references or legacy link patterns found in writings/. 50 files scanned.

Spec: klappy://docs/oddkit/specs/oddkit-audit · Workflow: .github/workflows/canon-quality.yml · Run: #293

@klappy klappy merged commit b3aecc9 into main Jun 19, 2026
5 checks passed
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