docs(blogging): allow multi-principle, longer synthesis posts; queue the 03+04+05 consolidation - #121
Conversation
…the 03+04+05 consolidation Three amendments, all preparatory to a consolidated post rather than a reshuffle of what ships. Standing rule 5 said "one reusable principle"; it now reads "at least one" — one is the floor, not the ceiling. A synthesis post may land several provided each carries its own evidence; what is forbidden is zero, not many. The shape rule keeps 700-1200 words as the default but explicitly permits a longer consolidation post when it is genuinely carrying more. Both rules are mirrored in CLAUDE.md, updated in step so the two copies do not drift. Queues verification-first-synthesis at #5, merging 03+04+05: each fails alone for a different reason (03 is evidence without a thesis, 05 a thesis without evidence, 04 the bridge that re-treads 00), and merged each supplies what the others lack. Its gate is deliberately 'write the draft, then evaluate' — publication is not pre-approved, and it must differentiate from 00 by arguing from failure data rather than design. 03, 04 and 05 are explicitly NOT retired: directory, stub, scores and evidence links all stay until that draft exists and has been judged. Adds a protocol rule making this general — a consolidation retires its sources on publish, never when merely planned — so a draft that turns out unpublishable costs nothing.
Reviewer quiz — synthesis rules + consolidation3 questions on this change (answers inside)1. Rule 5 changed from "one reusable principle" to "at least one." What does the amended rule still forbid — (a) more than one principle, (b) zero principles, (c) principles without a named audience? 2. Fill in the blank: 3. The queue row for Answers 1. (b) — zero. One is the floor, not the ceiling: a synthesis post may carry several principles provided each is stated plainly and carries its own evidence. 2. …ships (publishes), never when it is merely planned. 3. If it cannot differentiate from |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b55c9b380d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| 3. **Split measured fact from interpretation, visibly** — hedge the interpretation; never hedge the data. | ||
| 4. **Ship the receipts** — the reproduce command plus a link to the raw artifact (source them from that doc's *Evidence index*). | ||
| 5. **One reusable principle** a reader can apply without adopting this harness. | ||
| 5. **At least one reusable principle** a reader can apply without adopting this harness — one is the floor, not the ceiling; a synthesis post may carry several, each with its own evidence. |
There was a problem hiding this comment.
Recreate the commit with the local Git identity
The inspected commit object records both its author and committer as Codex <codex@openai.com>, making agent attribution part of Git history. Repository policy explicitly requires commit authorship to remain the local Git user and forbids AI attribution, so this changeset needs to be recreated under the contributor's configured identity before merging.
AGENTS.md reference: AGENTS.md:L67-L67
Useful? React with 👍 / 👎.
| | `03` | Failure modes from the first eval loop | 3 | 3 | 3 | 3 | **Deferred** — 2026-08-23. Fails the broadcast filter: an internal taxonomy addressed by its own labels (`A9`, `B3`) is reference material for this repo, not a post someone outside it can use. The catalog stays the canonical artifact other posts cite. **Sources the `verification-first-synthesis` draft** (queue #5) — supplies its evidence base. Nothing here is retired: directory, stub, scores and evidence links **stay** until that draft exists and has been evaluated for publishing. | | ||
| | `04` | A verifier is not a tool | 4 | 4 | 3 | 3 | **Deferred** — 2026-08-23. Two problems: it re-argues `00` (which already moved the authority for "done" out of the model), and the framing is harness-shaped rather than portable. Its best content — ADR-0007's *a model that authors its own rubric sets it low up front* — goes to the consolidated draft; it falls back to a section of `06` only if that draft is not published. **Sources the `verification-first-synthesis` draft** (queue #5) — supplies its mechanism. Nothing here is retired: directory, stub, scores and evidence links **stay** until that draft exists and has been evaluated for publishing. | | ||
| | `05` | The model proposes, the harness disposes | 3 | 4 | 3 | 2 | **Deferred** — 2026-08-23. Lowest uniqueness in the series (U2) and pure architecture-stance. Its own gate was "earned by the empirical posts beneath it"; with `03`/`04` deferred there is even less under it. Revisit only once the queue below has landed. **Sources the `verification-first-synthesis` draft** (queue #5) — supplies its thesis. Nothing here is retired: directory, stub, scores and evidence links **stay** until that draft exists and has been evaluated for publishing. | |
There was a problem hiding this comment.
Retain source stubs until the consolidation ships
If the consolidated draft is evaluated and rejected, these three new status clauses allow the source assets to be retired because their stated retention endpoint is merely completion of evaluation. That contradicts the new protocol at lines 36–41, which says retirement occurs only when the consolidation ships and rejected drafts must leave their sources intact; align these clauses with the publication boundary so the authoritative status document gives one unambiguous update procedure.
AGENTS.md reference: AGENTS.md:L44-L44
Useful? React with 👍 / 👎.
Description
Amends two Standing rules in
docs/blogging/blog-candidates.md(mirrored inCLAUDE.md) and queues a consolidated post that merges the three deferred entries03,04and05. Docs only. Follow-up to #120.Motivation
#120 deferred
03(failure taxonomy),04(a verifier is not a tool) and05(the manifesto) because each failed the broadcast filter. Reviewing why each failed showed the three failures are complementary rather than independent:03is evidence without a thesis,05is a thesis without evidence, and04is the bridge between them that happens to re-tread00. Merged, each supplies what the others lack — and the merge is what makes the taxonomy generalize, since a taxonomy transfers only when it is used to argue something. "Here are 19 ways runs failed" transfers to nobody; "failures sort into four kinds, and the ones you cannot see are exactly the ones a self-grading model hides" transfers to anyone running an agent.Two Standing rules blocked that post as written. Rule 5 required one reusable principle, which a synthesis of three sources cannot honestly satisfy. The shape rule capped every post at 700–1200 words, which is the right default for a single finding and the wrong ceiling for a consolidation.
Changes
CLAUDE.md, which duplicates the Standing rules verbatim and is the copy loaded automatically. Updated in the same commit so the two do not drift.verification-first-synthesisat Phase 2.5: context fidelity & secret safety (dogfood hardening) #5, ahead of the06flagship, with the merge rationale and an explicit constraint: it must differentiate from00by arguing the position from failure data where00argued it from design. A draft that cannot hold that line is00at triple length and does not publish.03,04and05are explicitly not retired. Directory, stub, scores and evidence links all stay until the consolidated draft exists and has been judged. Each status row now records which part it feeds (evidence / mechanism / thesis).02could delete its backlog rows precisely because it had already shipped; that distinction was implicit and is now written down.04's ADR-0007 argument (a model that authors its own rubric sets it low up front) is no longer unconditionally reassigned to06. It goes to the consolidation, falling back to a section of06only if that draft is not published.Testing
Docs-only change; no code paths touched, so no test suite applies.
blog-candidates.mdand that all three deferred status rows carry the non-retirement clause.CLAUDE.mdandblog-candidates.mdagree on both amended rules after the edit, since the duplication between them is the drift risk.origin/mainthat this branch is exactly one commit ahead and that the amended rule text is absent there — confirming docs(blogging): re-cut the blog queue around a broadcast filter #120's squash merge did not already carry it.