feat: boarding-pass canon — versioned home for account/project instructions#245
Conversation
Reliance moved from model memory (cleared 2026-06-10) to account- and project-level instructions. This doc is the authoritative text of both layers; settings are projections of it, canon wins on conflict. Update discipline binds boarding-relevant law changes to same-PR updates here.
Canon Quality — Homepage Surfacing ✅46 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: |
Canon Quality — P0010 Retrieval-Readiness
|
Canon Quality —
|
| Line | Rule | Occurrence | Message |
|---|---|---|---|
| 242 | dead-reference |
klappy://writings/nothing-new-even-ai |
URI does not resolve |
writings/choosing-faith-not-fear.md — 1 finding(s)
| Line | Rule | Occurrence | Message |
|---|---|---|---|
| 203 | dead-reference |
klappy://writings/four-questions-that-change-everything |
URI does not resolve |
2 finding(s) suppressed via <!-- audit-allow: ... --> directives.
Soft-block mode — this status is informational; the job will not fail. Hard-block ships in PR-3.2 after the observation cycle.
What to do for each finding:
- Fix the slug if the target now lives at a different
klappy://URI.- Remove the link if it is no longer needed.
- Allowlist with a reason if the rot is intentional (e.g. forward-ref to an upcoming article): place
<!-- audit-allow: dead-reference reason="..." -->on the line above the offending link. The directive is line-level and scopes to the next markdown link.
Spec: klappy://docs/oddkit/specs/oddkit-audit · Workflow: .github/workflows/canon-quality.yml · Run: #242
Canon Quality — Frontmatter Schema ✅All 46 file(s) in Validator: |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Missing time rule in paste
- Added an explicit time rule line to the project-level paste block stating that
oddkit_timeis the first tool call of every turn with no exceptions, matching the operating contract and flight-deck model.
- Added an explicit time rule line to the project-level paste block stating that
You can send follow-ups to the cloud agent here.
Reviewed by Cursor Bugbot for commit 283566f. Configure here.
| The authoritative copy of these instructions is klappy://canon/bootstrap/boarding-pass — canon wins over settings on any conflict. | ||
|
|
||
| E0010, an experiment: failures go to the debrief and become canon. No blame, no repeat. | ||
| ``` |
There was a problem hiding this comment.
Missing time rule in paste
Medium Severity
The project-level paste block is labeled the full boarding pass, but it omits the time rule that sibling bootstrap canon and the operating contract require in pasted project instructions. Sessions that follow only this text may skip oddkit_time on early turns before the contract is fetched.
Reviewed by Cursor Bugbot for commit 283566f. Configure here.


Implements the maintainer's directive: rely on instructions, not memory. Model memory cleared of all governance entries this session (journaled). This document holds the paste-ready authoritative text for both instruction layers; settings are projections; canon wins on conflict.
Note
Low Risk
Documentation-only canon addition with no runtime, auth, or data-path changes; operational impact is maintainer re-pasting instructions after merge.
Overview
Adds
canon/bootstrap/boarding-pass.md(klappy://canon/bootstrap/boarding-pass) as the versioned source of truth for maintainer instructions, replacing reliance on model memory for governance.The doc defines account-level (short universal rules) and project-level (full boarding pass) paste-ready blocks, states that UI settings are projections and canon wins on conflict, and requires same-PR updates when boarding-relevant law changes plus a re-paste reminder in the PR description.
Reviewed by Cursor Bugbot for commit 283566f. Bugbot is set up for automated code reviews on this repo. Configure here.