← Architecture

Implemented (stub provider) · June 2026 · public adaptation

Advisor calls under custody

The design driver is an incident we have written about as the day the hash had no bytes: a well-formed advisory record holding the SHA-256 of a prompt whose bytes were never kept. This design's first obligation is to make that state structurally impossible — not discouraged, unrepresentable.

How

The exact framed request bytes persist durably before the provider is called, and the receipt's binding hash is computed from the retained bytes, never supplied by a caller. A record whose hash points at absent bytes without a declared, validated reason cannot be stored — the validator refuses it. The response persists before the receipt issues, so a crash at the worst moment leaves a loud typed record that still holds the answer the daemon received.

Every way a call can fail lands in one row of a six-state machine — pending, never-sent, failed, interrupted, unreceipted, completed — with the send journaled before the network write so crash recovery can tell whether an external effect may exist. Steering embedded in documents is denied before the payload is even assembled, and the denial retains nothing it refused to send.

Model identity, honestly

Each response records which model the provider claimed produced it, distinct from what was requested. The claim is recorded, not endorsed: a provider echoing the requested alias back is flagged as parroted, an omitted identity is a declared absence, and independent corroboration is explicitly future work. The receipt proves custody of the claim, not truth of the claim.

Source status: this page records fourth-generation design context. The repository's main line is now the Gen5 clean-sheet implementation; its accepted architecture and current maturity live in architecture/system.md with the feature and capability maps. Today's implementation runs against a deterministic offline stub provider; real provider connectors are designed separately.