You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Apr 16, 2026. It is now read-only.
ASB is the most security-sensitive service in the platform (privileged credential issuance with OIDC attestation) but has critical operational and testing gaps.
internal/bootstrap/service.go line 114: auditSink := auditmemory.NewSink(). Every audit event (session creation, grant issuance, artifact unwrap, policy decision, approval transition) is lost on pod restart. For a service that handles privileged credential issuance, there is zero durable audit trail in production.
Session JWT manager is untested
internal/crypto/sessionjwt/manager.go is the most security-sensitive path — it signs and verifies session JWTs that gate agent sessions. No test file exists. No tests for:
Context
ASB is the most security-sensitive service in the platform (privileged credential issuance with OIDC attestation) but has critical operational and testing gaps.
Problems
In-memory audit sink (issue #22)
internal/bootstrap/service.goline 114:auditSink := auditmemory.NewSink(). Every audit event (session creation, grant issuance, artifact unwrap, policy decision, approval transition) is lost on pod restart. For a service that handles privileged credential issuance, there is zero durable audit trail in production.Session JWT manager is untested
internal/crypto/sessionjwt/manager.gois the most security-sensitive path — it signs and verifies session JWTs that gate agent sessions. No test file exists. No tests for:sid/tenant_idclaimsOIDC verifier has minimal tests
Only 2 tests; no coverage for:
allowedSubjectPrefixes=[](bypasses prefix check entirely)nbfin the futureNo Helm chart (issue #21)
No standardized k8s manifests, resource limits, health probes, PDB, or secrets management.
Requirements
auditgRPC service (closes Add durable audit pipeline with guaranteed delivery #22)sessionjwttests: expired, algorithm confusion, missing claims, tampered payload, clock skewtoolregistryunit tests (currently only tested indirectly viaservice_test.go)