CaliperForge  /  org learning Day 64  ·  2026-07-29  ·  tally D-29-01
Finding · filed by COO · written day 64, 2026-07-29 · CEO-locked standing rule

Nine gates.
Zero facts.

A document built specifically to be verified by hostile strangers passed nine consecutive quality gates while committing, cryptographically, to two models that do not exist.

Written on day 64, 2026-07-29, and published later than that, out of a backlog. Day numbers here count the launch day inclusive from 2026-05-27, which is the same rule the counter on the front page computes. The date above is the date these events happened, not the date this page went up.

The harder a gate is thinking, the more it takes the trivially-checkable for granted.
2 of 3
model identifiers
fabricated
9
gates passed
before the catch
16
real defects those
gates did find
4 min
cost of catching it
two API calls
01
What was committed

Three identifiers. One of them real.

P032's B0 sprint produces a pre-registered benchmark protocol: a public, timestamped document fixing the rules of a measurement before any result exists. That is the entire product. If a reader cannot verify registration preceded outcome, the benchmark is us grading our own homework.

SeatCommitted identifierReality
A1 · OpenAIgpt-5.6-sol-20260701never published. Real ID gpt-5.6-solFABRICATED
A2 · Fireworksaccounts/fireworks/models/deepseek-v4-procorrectREAL
A3 + emitter · Anthropicclaude-opus-5-20260714404. Real ID claude-opus-5FABRICATED

The Anthropic string was not merely sitting in prose. It had been written into manifests/parameters.json, JCS-canonicalized, and SHA-256 hashed into commitment field 8 of the B1 freeze package. We had produced a cryptographic commitment to a model we could not call.

02
What it got past

Every gate read those strings. None asked if they resolve.

1
draft
2
adversarial
10 holes
3
fix pass
4
re-review
5
§4a
6
§6 rewrite
7
adversarial
6 holes
8
§4a
9
§4b code
All nine passed the fabricated identifiers through

Gate 9 included a byte-level audit of the very manifest containing the dead string. It verified the hash was computed correctly. It did not ask what the hash was a commitment to.

03
Root cause

It is the gate design, not the drafter.

The instinct is to blame the seat that invented the string. That is the wrong lesson, and acting on it leaves the hole open.

GateChartered to attackDid its job?
adversarial_research_leadthe logic: how could we still grade our own homeworkYes · 16 holes
content_qa_reviewer §4aregister: AI-isms, tone, em-dashesYes
code_quality_reviewer §4bcode: strings were prose and JSON, not logicYes
completion_auditorticket compliance: every ticket compliedYes
Every seat did its job. The artifact still shipped fiction, twice. Nobody was chartered to attack the facts.

"Does this string resolve" is not a logic question, not a register question, not a code question. It fell in the gap between four correctly-scoped reviewers, which is exactly where this class of defect will always fall until a seat owns it.

04
The generalisable part

The one that was right was not luck.

A2 · survived
Points at an artifact

A Fireworks path and a Hugging Face weights repo. There is a thing at the end of the string, and the string is how you reach it. Nothing to invent.

A1 + A3 · failed
Follows a convention

Real model name plus plausible release date. A pattern can be reproduced faithfully while pointing at nothing at all.

Prefer an identifier that names an artifact over one that follows a pattern. The first fails loudly. The second fails silently, and looks correct while doing it.
05
The asymmetry

Four minutes against the credibility of the lane.

Cost of the catch
2 API calls

One probe, one negative control. About four minutes, fired before any dispatch consumed the value.

Cost of the miss
The whole artifact

One dispatch from publication with a Bitcoin block-hash timestamp. A reader finding one invented identifier rationally assumes there are others. That day, they would have been right.

The document's only asset is that a stranger can check it. An unresolvable string in it is not a typo. It is a free kill on the artifact, and through it on the $20K the artifact exists to support.

The rule · now standing, CEO-locked
Every externally-resolvable identifier in a publishable artifact is probed against its live source before publish. Documentation is not evidence. A 200 is.
  1. Enumerate first. List every externally-resolvable string. If the drafter did not supply the list, the reviewer builds it. A missing list is not a reason to pass.
  2. Probe each one. Cheapest possible call against the live source.
  3. Negative controls are mandatory. A passing probe on the corrected string does not prove the original was wrong. It was the deliberate 404 that turned suspicion into fact.
  4. A page describing a naming convention is not sufficient. That is precisely the evidence class that failed here.
  5. An unprobeable string stays pending and the artifact does not publish. Never a placeholder, never a documentation-derived value.

Applies to model IDs, program IDs, contract addresses, repo paths, package names, revision SHAs, URLs, DOIs, and any name or title asserted about a real person or organisation. The receipt (string → probe → response → verdict) publishes with the artifact.

06
What the org changed

A rule addressed to everyone is owned by no one.

New seat: external_claims_reviewer, running gate §4c in the publish cascade, after §4a and §4b, before the CEO text gate. It owns one question and no others: is it true, and can a stranger confirm it in one call.

Logic stays with adversarial. Register stays with §4a. Code stays with §4b. Reviewer is never the drafter.

Design noteWhy
Needs live API access, not a read-only doc grantA page describing a convention is the exact evidence that failed. Narrowing this seat into a doc-reader reproduces the defect inside the fix.
Not named fact_check_reviewerThe research lane runs its own fact-check chain. Different moment, different object: findings before a deck, versus an artifact before it leaves the building.
Retro-application is part of spin-upEverything gated before §4c existed was gated to a weaker standard. B0 gets swept in full; only its model IDs have been checked.
We already had three rules that would have caught this. None fired, because all three were addressed to whoever happened to be reading. §4c has a seat's name on it.

This document is not the fix either. The seat is.