Skip to content

v0.13.0 — Opt-in run trace journal with whole-run coverage seals

Choose a tag to compare

@mostlydev mostlydev released this 23 Oct 14:36
· 11 commits to master since this release
f69e426

Highlights

  • Run trace journal — set CLLAMA_TRACE_JOURNAL=on to record every admitted request as its own durable segment under <session-history>/<agent>/journal/: upstream requests and responses, managed tool calls and results, and the response delivered to the client. Records are fsynced one by one; a closed segment carries its record count and a SHA-256 over its prior bytes, so later tampering or truncation is detectable. Segments left open by a crash are recovered as incomplete at startup.
  • Whole-run coverage — each process start writes a fresh capture_epoch; each request gets an agent_seq at admission, before its body is read; and a revocation writes seal-<generation>.json after in-flight requests drain and before the revoke is acknowledged. Operators can prove that every request of a run is accounted for, not only that the recorded ones are intact.
  • Reference verifier — tracejournal.VerifyCoverage applies the operator rule and reports RequestsVerified (every admitted request accounted for exactly once) separately from ContentComplete (every request fully captured).

Safety

  • The journal fails closed: if a segment cannot be opened the request is refused with 503 before anything is dispatched, and a write failure mid-request stops further effects and aborts the response.
  • Hidden reasoning (thinking blocks, reasoning items and deltas, encrypted reasoning) is dropped, and known credentials and credential-named fields are redacted. Bodies that cannot be parsed are omitted and mark the segment truncated rather than being stored raw.
  • CLLAMA_TRACE_OWNER sets the owner of journal files for host-side collectors.

Other

  • Images now stamp the cllama version and revision at build time (CLLAMA_VERSION / CLLAMA_REVISION build args).

The journal is off by default; behavior is unchanged unless it is enabled. See the README "Trace Journal" and "Whole-run coverage" sections.