Skip to main content
Version: v5.6.1

Evidence ledger entry

Included from Basic tierpacks:security-governance

The evidence ledger is the append-only, hash-chained record governance surfaces write their attestations to: each row carries its payload, the previous row's hash and its own, so the chain verifies end to end and a break is detectable, acknowledgeable (a re-anchor) and never silently repairable. Served by the v2 GovernanceService: ListEvidenceLedger, VerifyEvidenceLedger, ExportEvidenceLedger, AppendAttestation, ReAnchorEvidenceLedger and SetEvidenceLegalHold.

EvidenceLedgerEntry​

EvidenceLedgerEntry is one row of the append-only hash-chained evidence ledger.

FieldTypeMeaning
created_attimestampWhen the record was created.
created_bystringUsername of the creating identity.
idstringThe record's identity.
kindstringThe row kind; "attestation" is the governance-foundation vocabulary.
legal_holdbooleanA held row is exempt from every purge/retention path until explicitly unflagged. Administrative metadata outside the hashed content.
payload_jsonstringThe exact stored JSON payload — the bytes row_hash covers.
prev_hashstringThe previous row's row_hash ("" at genesis).
row_hashstringSHA-256 over prev_hash and this row's content fields.
seqinteger/stringThe chain position, 1-based and gap-free.

EvidenceRef​

EvidenceRef is a typed citation to supporting evidence — a digest or id reference, never a copy.

FieldTypeMeaning
kindstringThe citation kind: "artifact" (a sha256: blob digest), "audit_event", "campaign", "export" (a manifest hash), "waiver", "external".
refstringThe digest, id or locator the kind names.

EvidenceChainSegment​

EvidenceChainSegment is one maximal verified run of ledger rows.

FieldTypeMeaning
end_seqinteger/stringThe last seq of the verified run.
start_seqinteger/stringThe first seq of the verified run.

EvidenceChainDiscontinuity​

EvidenceChainDiscontinuity is one acknowledged break: the re-anchor row's recorded observation plus who re-anchored, and when.

FieldTypeMeaning
anchor_idstringThe re-anchor ledger row's id.
anchor_seqinteger/stringThe re-anchor row's seq — the new segment starts here.
anchored_after_seqinteger/stringThe last row of the broken segment as observed at re-anchor time.
broken_head_hashstringThe last stored row_hash as observed at re-anchor time.
justificationstringThe operator's recorded incident story (mandatory at re-anchor).
observed_break_seqinteger/stringWhere verification reported the break when the operator re-anchored.
re_anchored_attimestampWhen the re-anchor was recorded.
re_anchored_bystringUsername of the operator who recorded the re-anchor.
  • opschain docs governance — attestation, verification, re-anchoring and the ledger's retention posture.
  • opschain docs resources/campaign — the closing attestations campaigns append.
  • opschain docs storage — sealed-segment archival and how legal hold guards cited evidence.