Feature

Evidence attached before finalization. Sealed with the commit hash.

Receipts, invoices, check images linked to commits during awaiting_evidence. Documents stored with SHA-256 hashes for dedup.

How evidence works in the pipeline.

Attach during awaiting_evidence

After review, the commit enters the evidence window. Cannot finalize until required evidence is present.

Hash-based dedup

Every uploaded document is hashed with SHA-256. Duplicates link to existing copies.

Sealed at finalization

The finalization hash covers the evidence hashes. Post-finalization changes require a new commit.

Object storage

Documents stored in DigitalOcean Spaces with storage_key in public.documents.

Evidence is not an afterthought. It is part of the commit.

Attach receipts before finalization. The hash seals the evidence with the entry.