fix(writings): repair software-virtues-revisited frontmatter#194
Merged
Conversation
- exposure: published → public (only valid values per canon schema:
nav | public | draft | hidden | internal; the renderer's homepage
filter silently drops anything else, which is why this essay was
invisible despite being on main since 2026-05-10)
- voice: klappy → first_person (not in voice enum either)
- backfill discovery block: type, slug, public, hook, description,
author, subtitle, og/twitter — without these the homepage card
rendered empty per the doc-listing API response
Body untouched. Pulled hook/description from author's own opening
blockquote, not invented.
Canon: klappy://canon/constraints/frontmatter-validation-before-merge
klappy://canon/meta/frontmatter-schema
Canon Quality —
|
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.
What
Fixes the May 10 essay
writings/software-virtues-revisited.mdso it actually appears on the homepage.Why it was invisible
The doc-listing Supabase function (which feeds the homepage) silently filters out entries whose frontmatter doesn't conform. This essay had:
exposurepublishedpublicpublishedis not a valid value. Canon allowsnav | public | draft | hidden | internal.voiceklappyfirst_persontypeessayslugsoftware-virtues-revisitedpublictruehook/description/subtitle/author/ og+twitterBoth crash patterns above are documented in
klappy://canon/constraints/frontmatter-validation-before-merge§ Known Crash Patterns. The canon constraint mandates automated schema validation pre-merge; the implementation gap (canon-quality.yml only auditsklappy://reference integrity, not frontmatter schemas) will be closed in a follow-up oddkit PR adding afrontmatter-schemarule pack tooddkit_audit.Verification
public:false + exposure:publiccontradictions, no quoted-boolean issues.Canon
klappy://canon/constraints/frontmatter-validation-before-mergeklappy://canon/meta/frontmatter-schemaNote
Low Risk
Low risk: changes are limited to frontmatter metadata (enums/required fields) to make the essay render/list correctly; no application logic changes.
Overview
Fixes
writings/software-virtues-revisited.mdfrontmatter to conform to the site’s expected schema so the essay is eligible for listing/rendering.Adds missing required metadata (
type,slug,public, plus social/discovery fields) and normalizes invalid values (e.g.,exposure: public,voice: first_person) while leaving the body content unchanged.Reviewed by Cursor Bugbot for commit f3f2a40. Bugbot is set up for automated code reviews on this repo. Configure here.