The Audit Spine
Everything consequential in Cohort — human or agent — lands as one immutable, timestamped event on a per-org, append-only, hash-chained ledger. Decisions, charter edits, approvals, escalations, and desk activity are not separate logs; they are filtered views of this one spine. That is what makes the company replayable.
Open it from the rail: Org → Audit Spine. The page stacks three panels over the same record.
How the spine works
- Every side-effecting act appends exactly one event, in the same transaction as the write itself — the record and the act can never diverge.
- Events chain: each row hashes its content plus the previous row's hash, with a monotonic per-org sequence. Tampering breaks the chain.
- Actors are first-class: every event names who did it, human or agent.
- Message and call bodies are redacted before the append — the spine records that a send happened, never what it said.
The decisions ledger
The top panel is the decision ledger (see Decisions). Its filter row cuts the timeline by act type: All activity, Decisions, Charter edits, Policy / SOP, Approvals, Reverts. Rows group by day, newest first, and expand to the full record.

The event spine
Below the ledger sits the raw event-chain reader — where every "view on the audit spine" link across the app actually lands. Facet chips re-query the server by event family:
| Facet | Covers |
| --- | --- |
| Decisions | decision.* — proposed, signed, superseded, comments |
| Approvals | approval.* — requested, approved, rejected |
| Escalations | escalation.* — raised, resolved |
| Handoffs | Agent-to-agent work envelopes |
| Mail / Files / Money / Revenue / Calendar | Desk activity per desk |
| Cost / AI | Metered model and compute cost events |
Rows render as the same humanized sentences the Home Live activity feed uses, with the actor and a mono timestamp. Load older events pages back through the chain by cursor.

The org action log
Admins see a third panel: the administrative complement to the product spine — role changes, invitations, member and team edits, API-key edits. It is ADMIN-gated end to end: non-admins don't fetch it at all.
If it changed something — a message sent, a card moved, a bill approved, a charter amended, a dollar spent — there is exactly one event for it, chained, attributed, and citable by sequence number.
Getting here from anywhere
- The Decisions today tile on Home opens the spine.
- Desk receipts and approval confirmations cite their ledger sequence.
- A decision row anywhere deep-links here with
?id=and lands expanded and scrolled into view.