Description
Promote confirmed policy-bundle tampering from observational (WARNING) to blocking (NON_COMPLIANT).
Problem Statement
Even a confirmed BundleTampered/SignatureInvalid/UntrustedSigner result in applyPolicyBundleVerification() (src/audit-guard/src/policy-engine.ts, ~lines 183-211) only downgrades status to "WARNING", never "NON_COMPLIANT". This was intentionally scoped as observational-only in an earlier issue (VAG-003) to avoid false-positive breakage while the detection was new. Now that the observational version has shipped and had time to prove itself, this is worth promoting to actually block the build on a confirmed tamper signal — the only defense against a compromised CI runner rewriting Rego policy is currently non-blocking.
Proposed Changes
Technical Implementation Scaffolding
- Target Repository: vero-audit-guard
- Target Path: src/audit-guard/src/policy-engine.ts
- Branch Naming: fix/issue--promote-bundle-tamper-to-blocking
- Authority Context: Security-sensitive — CI policy integrity
Acceptance Criteria
Definition of Done
Description
Promote confirmed policy-bundle tampering from observational (WARNING) to blocking (NON_COMPLIANT).
Problem Statement
Even a confirmed
BundleTampered/SignatureInvalid/UntrustedSignerresult inapplyPolicyBundleVerification()(src/audit-guard/src/policy-engine.ts, ~lines 183-211) only downgrades status to"WARNING", never"NON_COMPLIANT". This was intentionally scoped as observational-only in an earlier issue (VAG-003) to avoid false-positive breakage while the detection was new. Now that the observational version has shipped and had time to prove itself, this is worth promoting to actually block the build on a confirmed tamper signal — the only defense against a compromised CI runner rewriting Rego policy is currently non-blocking.Proposed Changes
"NON_COMPLIANT"rather than"WARNING"Technical Implementation Scaffolding
Acceptance Criteria
NON_COMPLIANT), not just warnsDefinition of Done