Found during 0.25.0 release testing. Pre-existing (band is corpus-manifest-encoded since 0.23.x; verified identical on 0.24.0).
OPENA2A_CORPUS_DETERMINISTIC=1 hackmyagent secure ~/.opena2a/corpus/soul/malicious/permissive-overrides-soul:
2 high-severity issues found
Security ━━━━━━━━━━━━━━━━━━━━ 76/100
Verdict Not safe as-is. SOUL.md Injection Vectors in SOUL.md + 3 more. Fix, then rescan.
Exit code 1 and verdict direction are correct; scan-soul on the same file correctly reports 9 violations / "actively subverts governance". The incoherence is the composite number: 76 sits in the visually "good" band next to a red verdict, because a SOUL-only governance subversion barely dents the infra-weighted composite. Same family as the opena2a-cli #221 verdict/composite coherence fix — that shipped a wrapper-side floor; secure itself has no governance floor.
Fix direction: when the verdict is fail-direction ("Not safe"), floor/clamp the composite out of the good band (the #206/#251 clamp shape), or annotate the score line with the reason it does not mean "good". The corpus manifest band (min 73 max 79) must be re-baked with the change — this is a deliberate calibration change, not drift.
P2: direction contract holds everywhere (exit code, verdict, findings); this is numeric-display coherence.
Found during 0.25.0 release testing. Pre-existing (band is corpus-manifest-encoded since 0.23.x; verified identical on 0.24.0).
OPENA2A_CORPUS_DETERMINISTIC=1 hackmyagent secure ~/.opena2a/corpus/soul/malicious/permissive-overrides-soul:Exit code 1 and verdict direction are correct;
scan-soulon the same file correctly reports 9 violations / "actively subverts governance". The incoherence is the composite number: 76 sits in the visually "good" band next to a red verdict, because a SOUL-only governance subversion barely dents the infra-weighted composite. Same family as the opena2a-cli #221 verdict/composite coherence fix — that shipped a wrapper-side floor;secureitself has no governance floor.Fix direction: when the verdict is fail-direction ("Not safe"), floor/clamp the composite out of the good band (the #206/#251 clamp shape), or annotate the score line with the reason it does not mean "good". The corpus manifest band (min 73 max 79) must be re-baked with the change — this is a deliberate calibration change, not drift.
P2: direction contract holds everywhere (exit code, verdict, findings); this is numeric-display coherence.