The Notebook Is the Product
A chat transcript is a souvenir. Firebrand's record is the lab notebook: one JSON object per line, contiguous sequence numbers, a timestamp, a turn, a step, and a kind. Large bodies live beside the file as content-addressed artifacts. The kinds cover what the model said, what the operator said, what the engine decided, and what the world returned — session start, user, request, delta, assistant text and thinking, tool-call and result, permission, plan, ask, compaction, cut, error, session end.
Raw wire per step is stored by digest too. The wire is what the model said, so a dialect decode bug is falsifiable from the record alone. A digest chain for tamper-evident export is a named option that is not built. Nothing writes it, nothing verifies it, and no surface claims it. An unbuilt integrity feature is a hole you can name. A claimed one you cannot verify is a lie.
Chrome Stays Out
Operator-only session chrome — a title, an archived flag — is not model-visible, so it does not enter the JSONL. It lives in the session metadata file, updated only while holding the writer lock. Mixing chrome into the record would make resume feed the model a filing cabinet.