Skip to content

sweep(writings): allowlist 3 forward-refs to upcoming chapters (PR-3.1.5)#152

Merged
klappy merged 3 commits intomainfrom
phase-3/sweep-known-link-rot-with-allowlist-directives
Apr 27, 2026
Merged

sweep(writings): allowlist 3 forward-refs to upcoming chapters (PR-3.1.5)#152
klappy merged 3 commits intomainfrom
phase-3/sweep-known-link-rot-with-allowlist-directives

Conversation

@klappy
Copy link
Copy Markdown
Owner

@klappy klappy commented Apr 27, 2026

Sweep PR for the link-rot Phase 3 observation cycle. Adds <!-- audit-allow: dead-reference reason="..." --> directives for the three pre-existing dead klappy:// references in writings/ — the ones the canon-quality workflow surfaced when it self-tested on its own PR (#149).All three are intentional forward references to upcoming book chapters: the targets are drafted in draft-zeros/ but not yet promoted to writings/. Once those drafts land at their published slugs, the resolver will start finding them, the directives become harmless dead text, and a future cleanup sweep can remove them.This PR depends on #149 (the workflow itself) being merged first.## What changes per file### writings/choosing-faith-not-fear.mdClosing paragraph had two klappy:// links on a single line — one resolving (the-most-expensive-problem), one dead (four-questions-that-change-everything). The directive grammar is line-level and scopes to the next markdown link, so a directive above the original line would have suppressed the wrong link. Split the paragraph into two italic blocks (the "next chapter" recommendation + the alternative "principles" path) with the directive between them. Reads cleanly as two distinct next-step options, which is what the prose was already doing.### writings/the-broken-wall-and-the-buried-talent.mdClosing paragraph had three klappy:// links — two resolving, one dead (the appendix at draft-zeros/appendix-a-the-biblical-roots). Same split rationale: the previous-chapter + this-chapter sentence stays as one italic block; the appendix sentence becomes its own block with the directive above it.### writings/the-voice-came-first.mdThe dead link is already the first link on its line, so this file gets the directive only — no prose split required. Closing paragraph reads identically.## Reason stringsAll three reason strings name (a) what the forward target is, (b) where the draft currently lives in draft-zeros/, and (c) the auto-heal condition (target promoted to writings/). This pattern lets a future reviewer or workflow author understand why a directive exists without having to read the paragraph it sits in.## Expected workflow signalAfter this merges, the next push to a writings//canon//odd//docs/ path will trigger canon-quality.yml. Expected oddkit_audit envelope:- summary.total_findings: 0 (down from 3)- summary.suppressed_count: 3 (the three suppressed forward-refs)- status: OKThe sticky comment will be the green-checkmark "no dead references" version. The observation cycle starts from a clean floor.## Refs- Workflow PR (canon-quality.yml): #149- Spec: klappy://docs/oddkit/specs/oddkit-audit (DRAFT v2.2 — directive grammar at ## Allowlist)- Campaign: klappy://docs/planning/link-rot-elimination-campaign (Phase 3, observation cycle prerequisite)- The drafted-but-not-promoted chapters: - draft-zeros/ch07-four-questions-that-change-everything.md - draft-zeros/appendix-a-the-biblical-roots.md## After this lands1. The 3-finding floor goes to zero.2. Observation cycle proceeds as planned (3–5 PRs through the soft gate to gather signal).3. PR-3.2 flips vars.AUDIT_ENFORCEMENT_MODE to hard once observation is satisfactory.4. Whenever Ch.7 or Appendix A are promoted to writings/, the directives quietly become no-ops; a passing future sweep can delete them.


Note

Low Risk
Low risk: markdown-only edits that add audit-allow directives and minor paragraph splitting to silence known dead-link checks for intentional forward references.

Overview
Adds HTML <!-- audit-allow: dead-reference ... --> directives ahead of three intentional forward klappy:// links (upcoming Ch.7 and Appendix A) so the link-audit workflow suppresses these known dead references until the targets are published.

To ensure the directive applies to the correct link, two chapter outro callouts are split into separate italicized blocks (choosing-faith-not-fear.md and the-broken-wall-and-the-buried-talent.md); the-voice-came-first.md only inserts the directive above the existing next-chapter link.

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

@klappy klappy merged commit 49d0510 into main Apr 27, 2026
1 check passed
@klappy klappy deleted the phase-3/sweep-known-link-rot-with-allowlist-directives branch April 27, 2026 18:14
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