Implement AUDIT-WP-0007 hash-chain integrity.

Accept now extends a single-schema chain. Verify walks it; a rewritten
payload_hash is a break. Tamper evidence is that detector plus an
external chain-head attestation, not WORM.
This commit is contained in:
tegwick 2026-08-16 01:18:30 +02:00
parent 5faede18fc
commit 5fd04e2095
17 changed files with 696 additions and 29 deletions

View file

@ -46,11 +46,11 @@ metadata:
# Rollback position. Update both together; `kubectl rollout undo` returns to
# the previous digest, and the schema note records whether that is safe.
audit-core.railiance.io/rollback-note: >-
Migrations 0001-0005 are additive (CREATE TABLE/INDEX/TRIGGER IF NOT
EXISTS, plus GRANTs) and are not reversed by a rollback. An older image
runs against the newer schema without harm. A future migration that drops
or narrows a column breaks that property and must state its own rollback
position before it is released.
Migrations 0001-0006 are additive. 0006 adds chain_hash/chain_prev and
then NOT NULL. An image that does not write those columns cannot accept
events after 0006. Do not roll back past sha256:05fe1c06… to a pre-0007
writer. A future migration that drops or narrows a column must state
its own rollback position before it is released.
spec:
replicas: 1
revisionHistoryLimit: 5