Skip to content

feat: stage witness captures in a durable fail-closed journal - #144

Draft
dinakarjs wants to merge 3 commits into
agentrust-io:mainfrom
dinakarjs:feat/witness-submission-journal
Draft

dinakarjs wants to merge 3 commits into
agentrust-io:mainfrom
dinakarjs:feat/witness-submission-journal

Conversation

@dinakarjs

Copy link
Copy Markdown
Contributor

A process can lose a witness acknowledgement after the remote side committed. Retrying from an in-memory backlog then risks duplicate submissions and overwritten evidence. This adds an operator-invoked SQLite journal around the existing capture/verifier with transactional one-worker claims, explicit trust-policy identity and exclusive evidence directories.

Failed or interrupted attempts stay unknown/inflight and cannot be automatically resubmitted. Verified status requires the existing cryptographic capture verification to succeed. No registry history changes, scheduled workflow, key discovery or external witness submission.

Validation: full unittest suite 413 passed; seven new tests cover concurrent workers, restart/inflight refusal, lost acknowledgement, failures, evidence preservation, identity and archived real receipt verification including wrong-key rejection. Existing capture suite 21 passed. Ruff and diff checks passed.

Draft boundary: readback reconciliation, key rotation, retention/backups and required-vs-best-effort policy still need maintainer agreement before deployment. Identity is exact bytes plus trust policy, not semantic deduplication across key rotation. Documentation: docs/witness-submission-journal.md. This does not close the existing owner-led witness rollout.

Signed-off-by: Srinivasa Consultants <dinakarjs@gmail.com>
Signed-off-by: Srinivasa Consultants <dinakarjs@gmail.com>
Signed-off-by: Srinivasa Consultants <dinakarjs@gmail.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant