Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 54 additions & 0 deletions canon/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,60 @@ This changelog tracks changes to the **Canon pack** as a whole.
The Canon uses **pack-level versioning** (one version number) rather than per-file versioning.
Per-file versions are intentionally omitted to reduce ceremony and prevent metadata rot.

## 0.38.0 — 2026-05-12

**Substrate Becomes the Wire (E0009)**

A new epoch. Epoch 8 made validation observable (E0008.3), encoding-types governed (E0008.4), operator-attention defended (E0008.4), and specs locked at implementation (E0008.6). Epoch 9 retires the integration pattern those disciplines were defending against: human-as-wire. The substrate stack is named end-to-end (`canon/architecture/substrate-stack`); persona-shaped runtimes are specified (`canon/methods/persona-shaped-agent-runtime`); the per-session contract is bounded (`canon/methods/spawned-agent-session-runtime-contract`); dispatch paths are bounded into a binary (`canon/methods/dispatch-paths`); trigger sources are taxonomized (`canon/methods/trigger-source-taxonomy`); audit gates are spawned agent sessions, not pattern matchers (`canon/constraints/audit-gates-are-spawned-agent-sessions`); and the first production-grade exercise of the runtime — the audit-gate migration onto Cloudflare's Agents Week primitives — landed its planning artifact in `klappy/agent-messaging-service` PR #77 (merged 2026-05-12) with the multi-PR migration in flight.

The narrative form of the epoch's central argument — "We Were the Wire" — lands in `writings/` as a public-facing essay. The spine is imported from `klappy/agent-messaging-service:ESSAY.md` (the hackathon scene that originally named the problem); the expansion covers the broader Epoch 9 themes (the wire problem is never just agent-to-agent; the substrate stack is the answer; the dispatch-path question settles everything else; R2-drop-a-file-get-knowledge as the canonical autonomous-trigger pipeline; audits-as-spawned-sessions; Oddie as the first deployable L4 persona).

Behavior change: from this version forward, when canon describes a workflow that includes a human in an integration role, it is describing a design smell unless the role is explicitly direction-setting or pivot-decisioning. The operator is a director, not a relay. Validators are spawned agent sessions. Audits are spawned agent sessions. Ingestion is autonomous-trigger pipelines. The wire is no longer a person.

### Added — Canon Surface

- **Appendix: Epoch 9 — Substrate Becomes the Wire** (`docs/appendices/epoch-9.md`) — Tier 2, neutral, stable. Names the forcing fault (the operator was the wire), the new invariant (substrate is the wire), the core shift (director, not relay), and the six-layer receipt table (what "done" looks like at each of L1–L6, which canon already covers it, what remains).
- **Essay: We Were the Wire** (`writings/we-were-the-wire.md`) — Tier 3, first-person, stable. Public-facing essay form of the argument. Spine imported from `klappy/agent-messaging-service:ESSAY.md` (~2,300 words preserved); expansion (~1,500 words) covers the substrate stack, dispatch-paths binary, R2-ESE pipeline worked example, audits-as-spawned-sessions, and Oddie-as-L4-peer.
- **Release Notes: Epoch 9 — Substrate Becomes the Wire** (`docs/oddkit/release-notes/2026-05-12-epoch-9-substrate-becomes-the-wire.md`) — Tier 2, neutral, stable. Frames the release by behavior change, not file inventory. Names what changes for operators, what changes for agents, what does not change, and how to recognize operator-as-wire (and replace it).

### Retagged — Frontmatter `epoch:` field

Substrate-shaped canon retagged from `E0008.5` to `E0009` (per-doc verification against `governs` field confirmed substrate / agentic-runtime / persona-shaped subject matter):

- `canon/architecture/substrate-stack.md`
- `canon/methods/persona-shaped-agent-runtime.md`
- `canon/methods/spawned-agent-session-runtime-contract.md`
- `canon/methods/spawned-agent-session-substrate-options.md`
- `canon/methods/dispatch-paths.md`
- `canon/methods/trigger-source-taxonomy.md`
- `canon/principles/agents-need-their-own-wire.md`
- `canon/principles/symmetric-participation.md`
- `canon/principles/sessions-mirror-modes.md`
- `canon/principles/creators-get-paid.md`
- `canon/principles/magical-first-run.md`
- `canon/principles/methodology-personification.md`
- `canon/principles/voice-as-cognitive-load-shedding.md`
- `canon/constraints/mode-transitions-require-encoded-handoff.md`
- `canon/constraints/critic-cannot-be-resolver.md`
- `canon/constraints/audit-gates-are-spawned-agent-sessions.md` (addition beyond the planning session's candidate list; per its own `governs` field this constraint directly governs the L4 substrate work)
- `canon/observations/clone-klappy-to-oddie-recognition.md`
- `canon/definitions/epistemic-modes.md`
- `docs/appendices/mode-separated-conversations.md`

Bootstrap operating contract receives a frontmatter-only bump (E0008.3 → E0009):

- `canon/bootstrap/model-operating-contract.md` — content update for E0009-specific disciplines (dispatch-path discipline, autonomous-trigger error-routing, runtime-contract awareness) is deferred to a separate session.

Not retagged (verified out of scope by per-doc inspection): `canon/voice/oddie-the-river-guide` (voice spec; predates substrate push), `canon/methods/borrow-bend-break-beget-build` (generic 6B methodology), `canon/constraints/borrow-evaluation-before-implementation` (generic governance), `writings/reverse-engineer-the-future` (bible-translation theme), and the E0008.4 software-virtues package and the E0008.6 specs-lock-at-implementation (own sub-epochs, not part of the substrate push).

### Related

- `klappy/agent-messaging-service` #77 (audit-gate runtime migration — plan landed 2026-05-12; multi-PR migration in flight)
- `klappy://odd/handoffs/2026-05-12-epoch-9-trio` (execution spec)
- `klappy://odd/ledger/2026-05-12-epoch-9-planning` (planning session audit trail)

---

## 0.37.0 — 2026-04-30

**Specs Lock at Implementation — A Spec Is a Contract; Don't Change It Mid-Build (E0008.6)**
Expand Down
2 changes: 1 addition & 1 deletion canon/architecture/substrate-stack.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: evolving
tags: ["canon", "principle", "architecture", "layered-model", "substrate", "vodka-architecture", "orthogonality", "OSI-equivalent", "ams", "tincan", "oddie"]
epoch: E0008.5
epoch: E0009
date: 2026-05-10
derives_from: "canon/principles/vodka-architecture.md, canon/principles/doing-less-enables-more.md, canon/principles/dream-house-principle.md, ams://canon/decisions/D0020-agents-as-customer-and-third-party-vas-substrate, ams://canon/decisions/D0006-dream-house-wire-edge-wrappers, ams://canon/decisions/D0016-buffering-and-persistence-as-wrapper-primitive"
complements: "canon/principles/magical-first-run.md, canon/principles/symmetric-participation.md, canon/principles/creators-get-paid.md, canon/voice/oddie-the-river-guide.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/bootstrap/model-operating-contract.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: semi_stable
tags: ["canon", "bootstrap", "oddkit", "governance", "mode-discipline", "vodka-architecture", "prompt-over-code"]
epoch: E0008.3
epoch: E0009
date: 2026-05-08
derives_from: "canon/values/orientation.md, canon/values/axioms.md, canon/definitions/epistemic-modes.md, canon/validation-as-epistemic-mode.md, canon/constraints/oddkit-prompt-pattern.md, canon/constraints/mode-discipline-and-bottleneck-respect.md, canon/principles/dry-canon-says-it-once.md, canon/principles/verification-requires-fresh-context.md, canon/observations/time-blindness-axiom-violation.md"
complements: "docs/oddkit/proactive/posture-lapse.md, docs/oddkit/proactive/proactive-gate.md, docs/appendices/mode-separated-conversations.md, canon/voice/oddie-the-river-guide.md"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: semi_stable
tags: ["canon", "constraint", "governance", "validation", "audit", "spawned-agent-sessions", "vodka-architecture", "anti-pattern", "ci", "drift", "sync"]
epoch: E0008.5
epoch: E0009
date: 2026-05-07
derives_from: "canon/methods/governance-validation-via-agents.md, canon/methods/reference-integrity-audit.md, canon/constraints/canon-integration-audit.md, canon/principles/vodka-architecture.md, canon/values/axioms.md"
complements: "canon/constraints/borrow-evaluation-before-implementation.md, canon/constraints/no-irreversible-action-without-epistemic-justification.md, canon/methods/spawned-agent-session-substrate-options.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/constraints/critic-cannot-be-resolver.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: semi_stable
tags: ["canon", "constraints", "mode-discipline", "agent-design", "detection", "remediation", "separation-of-concerns", "context-corruption"]
epoch: E0008.5
epoch: E0009
date: 2026-05-08
derives_from: "canon/principles/verification-requires-fresh-context.md, canon/values/axioms.md"
complements: "canon/voice/oddie-the-river-guide.md, canon/constraints/mode-discipline-and-bottleneck-respect.md"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: evolving
tags: ["canon", "constraints", "epistemic-modes", "handoff-contract", "journal", "dolcheo", "session-discipline", "mode-discipline", "encoding"]
epoch: E0008.5
epoch: E0009
date: 2026-05-10
derives_from: "canon/principles/sessions-mirror-modes.md, canon/definitions/epistemic-modes.md, canon/constraints/critic-cannot-be-resolver.md, canon/principles/verification-requires-fresh-context.md"
complements: "canon/methods/persona-shaped-agent-runtime.md, docs/mode-separated-conversations.md, canon/definitions/dolcheo-vocabulary.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/definitions/epistemic-modes.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: semi_stable
tags: ["epistemology", "decision-making", "governance"]
epoch: E0008.5
epoch: E0009
date: 2026-05-10
---

Expand Down
2 changes: 1 addition & 1 deletion canon/methods/dispatch-paths.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 2
voice: neutral
stability: draft
tags: ["canon", "methods", "spawned-agent-sessions", "dispatch", "assistant-orchestrated", "autonomous-trigger", "agent-runtime", "vodka-architecture"]
epoch: E0008.5
epoch: E0009
date: 2026-05-11
derives_from: "canon/methods/spawned-agent-session-runtime-contract.md, canon/methods/persona-shaped-agent-runtime.md, canon/methods/trigger-source-taxonomy.md, canon/principles/agents-need-their-own-wire.md, canon/constraints/mode-discipline-and-bottleneck-respect.md"
complements: "canon/methods/trigger-source-taxonomy.md, canon/methods/spawned-agent-session-substrate-options.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/methods/persona-shaped-agent-runtime.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: evolving
tags: ["canon", "methods", "agent-runtime", "persona-profile", "substrate", "vodka-architecture", "oddie", "spawned-agent-session", "role-enforcement", "surface-profile"]
epoch: E0008.5
epoch: E0009
date: 2026-05-10
derives_from: "canon/methods/spawned-agent-session-substrate-options.md, canon/principles/sessions-mirror-modes.md, canon/constraints/mode-transitions-require-encoded-handoff.md, canon/constraints/critic-cannot-be-resolver.md, canon/principles/verification-requires-fresh-context.md, canon/voice/oddie-the-river-guide.md, canon/principles/vodka-architecture.md"
complements: "canon/methods/spawned-agent-session-runtime-contract.md, canon/principles/methodology-personification.md, canon/principles/voice-as-cognitive-load-shedding.md, canon/principles/participation-replaces-integration.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/methods/spawned-agent-session-runtime-contract.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 2
voice: neutral
stability: draft
tags: ["canon", "methods", "spawned-agent-sessions", "runtime", "governance", "epistemic-modes", "engagement", "vodka-architecture", "mechanizes-canon", "session-discipline", "five-mode-bound-roles"]
epoch: E0008.5
epoch: E0009
date: 2026-05-10
derives_from: "canon/epistemic-modes.md, canon/principles/sessions-mirror-modes.md, canon/constraints/mode-transitions-require-encoded-handoff.md, canon/constraints/mode-discipline-and-bottleneck-respect.md, canon/constraints/critic-cannot-be-resolver.md, canon/constraints/audit-gates-are-spawned-agent-sessions.md, canon/methods/spawned-agent-session-substrate-options.md, canon/methods/persona-shaped-agent-runtime.md, canon/voice/oddie-the-river-guide.md, canon/principles/vodka-architecture.md, canon/principles/verification-requires-fresh-context.md"
complements: "canon/methods/persona-shaped-agent-runtime.md, canon/methods/governance-validation-via-agents.md, canon/constraints/canon-integration-audit.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/methods/spawned-agent-session-substrate-options.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: evolving
tags: ["canon", "methods", "spawned-agent-sessions", "substrate", "cost-shape", "vendor-portability", "anthropic", "cloudflare", "vodka-architecture"]
epoch: E0008.5
epoch: E0009
date: 2026-05-09
derives_from: "canon/constraints/audit-gates-are-spawned-agent-sessions.md, canon/principles/vodka-architecture.md, canon/principles/doing-less-enables-more.md, canon/constraints/borrow-evaluation-before-implementation.md"
complements: "canon/methods/governance-validation-via-agents.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/methods/trigger-source-taxonomy.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 2
voice: neutral
stability: draft
tags: ["canon", "methods", "spawned-agent-sessions", "trigger-source", "dispatch-routing", "autonomous-trigger", "agent-runtime", "vodka-architecture", "substrate-agnostic", "ese", "r2-events", "ams-frames"]
epoch: E0008.5
epoch: E0009
date: 2026-05-11
derives_from: "canon/methods/spawned-agent-session-runtime-contract.md, canon/methods/persona-shaped-agent-runtime.md, canon/methods/spawned-agent-session-substrate-options.md, canon/constraints/mode-discipline-and-bottleneck-respect.md, canon/epistemic-surface-extraction.md, canon/principles/symmetric-participation.md, canon/principles/vodka-architecture.md"
complements: "canon/methods/spawned-agent-session-runtime-contract.md, canon/methods/persona-shaped-agent-runtime.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/observations/clone-klappy-to-oddie-recognition.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 2
voice: neutral
stability: semi_stable
tags: ["canon", "observation", "oddie", "methodology", "personification", "clone-klappy", "recognition", "longitudinal"]
epoch: E0008.5
epoch: E0009
date: 2026-05-08
derives_from: "canon/values/axioms.md"
complements: "canon/voice/oddie-the-river-guide.md, canon/principles/methodology-personification.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/principles/agents-need-their-own-wire.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: semi_stable
tags: ["canon", "principle", "substrate", "wire-layer", "L1", "human-as-relay", "bottleneck", "multi-agent", "AMS", "constitutional", "use-case-need"]
epoch: E0008.5
epoch: E0009
date: 2026-05-10
derives_from: "canon/values/axioms.md, canon/principles/discernment-layer.md, canon/principles/doing-less-enables-more.md, canon/principles/vodka-architecture.md, writings/copy-paste.md, writings/shifting-bottlenecks-climbing-ladders.md, ams://canon/decisions/D0001-tokens-not-messages, ams://canon/decisions/D0003-per-account-stream-ownership, ams://canon/decisions/D0009-stream-as-primitive-ownership-excludes-subscription, ams://canon/decisions/D0016-buffering-and-persistence-as-wrapper-primitive, ams://canon/decisions/D0020-agents-as-customer-and-third-party-vas-substrate"
complements: "canon/principles/symmetric-participation.md, canon/architecture/substrate-stack.md, canon/principles/magical-first-run.md, canon/principles/creators-get-paid.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/principles/creators-get-paid.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: semi_stable
tags: ["canon", "principle", "economy", "L6", "creators", "monetization", "substrate", "anti-extraction", "stripe", "constitutional"]
epoch: E0008.5
epoch: E0009
date: 2026-05-09
derives_from: "canon/values/axioms.md, canon/architecture/substrate-stack.md, canon/principles/maintainability-one-person-indefinitely.md, ams://canon/decisions/D0020-agents-as-customer-and-third-party-vas-substrate, ams://canon/decisions/D0021-stripe-integration-surface"
complements: "canon/principles/magical-first-run.md, canon/principles/symmetric-participation.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/principles/magical-first-run.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: semi_stable
tags: ["canon", "principle", "ux", "first-run", "non-technical-users", "L5", "applications", "tincan", "magic", "60-seconds", "constitutional"]
epoch: E0008.5
epoch: E0009
date: 2026-05-09
derives_from: "canon/values/axioms.md, canon/architecture/substrate-stack.md, canon/principles/vodka-architecture.md, canon/principles/maintainability-one-person-indefinitely.md"
complements: "canon/principles/symmetric-participation.md, canon/principles/creators-get-paid.md, canon/voice/oddie-the-river-guide.md, canon/principles/methodology-personification.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/principles/methodology-personification.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 2
voice: neutral
stability: evolving
tags: ["canon", "principles", "personification", "methodology", "voice", "accessibility", "oddie", "borrow-evaluation"]
epoch: E0008.5
epoch: E0009
date: 2026-05-08
derives_from: "canon/constraints/guide-posture.md, canon/values/axioms.md"
complements: "canon/voice/oddie-the-river-guide.md, canon/principles/voice-as-cognitive-load-shedding.md, canon/observations/clone-klappy-to-oddie-recognition.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/principles/sessions-mirror-modes.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: evolving
tags: ["canon", "principles", "epistemic-modes", "session-discipline", "context-corruption", "mode-discipline", "agent-design", "fresh-context"]
epoch: E0008.5
epoch: E0009
date: 2026-05-10
derives_from: "canon/definitions/epistemic-modes.md, canon/principles/verification-requires-fresh-context.md, canon/constraints/critic-cannot-be-resolver.md, canon/constraints/mode-discipline-and-bottleneck-respect.md"
complements: "canon/constraints/mode-transitions-require-encoded-handoff.md, canon/methods/persona-shaped-agent-runtime.md, docs/mode-separated-conversations.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/principles/symmetric-participation.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 1
voice: neutral
stability: semi_stable
tags: ["canon", "principle", "substrate", "wire-layer", "L1", "vodka-architecture", "BYOA", "BYOC", "open-substrate", "constitutional"]
epoch: E0008.5
epoch: E0009
date: 2026-05-10
derives_from: "canon/values/axioms.md, canon/architecture/substrate-stack.md, canon/principles/vodka-architecture.md, canon/principles/doing-less-enables-more.md, ams://canon/decisions/D0020-agents-as-customer-and-third-party-vas-substrate, ams://canon/decisions/D0006-dream-house-wire-edge-wrappers"
complements: "canon/principles/magical-first-run.md, canon/principles/creators-get-paid.md, canon/principles/dream-house-principle.md"
Expand Down
2 changes: 1 addition & 1 deletion canon/principles/voice-as-cognitive-load-shedding.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tier: 2
voice: neutral
stability: evolving
tags: ["canon", "principles", "voice", "cognitive-load", "incident-response", "calm", "brevity", "information-density"]
epoch: E0008.5
epoch: E0009
date: 2026-05-08
derives_from: "canon/values/axioms.md, canon/constraints/guide-posture.md"
complements: "canon/voice/oddie-the-river-guide.md, canon/constraints/ai-voice-cliches.md"
Expand Down
Loading
Loading