Skip to content

feat(auth): add durable audit and operator lifecycle - #4847

Draft
cea-block wants to merge 13 commits into
cea/o4-client-productionfrom
cea/o5-durable-audit-operator-lifecycle-4941806
Draft

feat(auth): add durable audit and operator lifecycle#4847
cea-block wants to merge 13 commits into
cea/o4-client-productionfrom
cea/o5-durable-audit-operator-lifecycle-4941806

Conversation

@cea-block

Copy link
Copy Markdown

Why

Protected authorization decisions need atomic, durable evidence, while privileged lifecycle operations need an authenticated and explicitly composed interface that remains unavailable in the stock relay.

What

  • Add a typed transactional audit outbox, append-only decision queue, ordered delivery leases, bounded retry/backpressure, quarantine, dead-letter, and restore handling
  • Make every production authorization evaluation pass through durable acceptance so new allows fail closed while denials remain denied and emit a bounded health signal
  • Add an authenticated, capability-gated, idempotent lifecycle runtime for list, preview, revoke, and rotate with single-use authority/approval evidence and atomic invalidation
  • Extend the SQLx migration chain linearly through 0050 and add non-vacuous PostgreSQL atomicity, concurrency, replay, tamper, and redaction tests
  • Add a synthetic repository-native OSS reviewer playground; lifecycle routes remain unregistered by default

Risk Assessment

Medium — this changes protected authorization decision recording and adds migrations, but the operator surface requires explicit composition and is absent from the stock router. No deployment, capability grant, route activation, or external sink configuration is included.

References

Generated with Codex

Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
(cherry picked from commit a5c28eaedb3616e74fc7604f00756d0cf896cd4b)
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
Signed-off-by: Cea Stapleton Cordasco <261786559+cea-block@users.noreply.github.com>
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