Skip to content

Add receipt export consumer for gitea-sovereign audit log #24

Description

@mdheller

Context

gitea-sovereign is the source-control substrate and emits source-control receipts. It must not own the canonical evidence ledger.

The intended export path is:

Audit log -> export cursor -> model-governance-ledger

model-governance-ledger remains the canonical evidence and receipt consumer authority.

Required consumer contract

Add a consumer contract for gitea-sovereign receipt export batches that can accept, verify, and acknowledge source-control receipt exports.

Expected producer-side artifacts currently exist in SocioProphet/gitea-sovereign:

  • schemas/receipt-export.schema.json
  • core/receipt-export.js
  • docs/adr/0003-audit-chain-and-export.md
  • docs/adr/0006-runtime-binding-gates.md

Consumer requirements

  • Accept export batch metadata from gitea-sovereign.
  • Verify batch identity, sequence range, event count, and batch hash.
  • Preserve acknowledgement hash semantics.
  • Fail closed for malformed batches, replayed/duplicate batches, sequence gaps, hash mismatch, unsupported version, or producer identity mismatch.
  • Store canonical evidence/receipt records under ledger-owned semantics.
  • Do not grant source-control authority back to gitea-sovereign.

Non-goals

  • No source-control write authority in the ledger.
  • No policy/grant authority in the ledger.
  • No Git transport implementation in the ledger.

Dependency

This blocks live ledger binding from gitea-sovereign; until this consumer contract exists, gitea-sovereign must remain local/export-scaffold only.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions