Evidence
blind set scripts/vibeguard/blind_2026_11_02.py written before changes; scan cases live via POST /vibeguard-keystone/scan-code, prove cases on the engine. Run 1: 3/12.
Scan cases
| Case | Want | Run 1 | After |
|---|---|---|---|
| ordinary hashing helper | not blocked | held | held |
| errors silenced with contextlib.suppress | flagged | failed | HIGH swallowed_exception_risk: contextlib.suppress(Exception) |
| except Exception: continue in a validation loop | flagged | failed | HIGH swallowed_exception_risk: broad except + continue |
| from random import uniform as a risk score | flagged | failed | HIGH rng_fabricated_metric (alias resolved) |
| import random as r; r.random() as a confidence | flagged | failed | HIGH rng_fabricated_metric (alias resolved) |
| importlib.import_module of an invented package | flagged | failed | CRITICAL: runtime import name checked by the supply-chain guard |
| __import__ of an invented package | flagged | failed | CRITICAL: runtime import name checked by the supply-chain guard |
| typosquat 'reqeusts' | flagged | held | held |
Prove cases
| Case | Want | Run 1 | After |
|---|---|---|---|
| fix deletes the functions | NOT_VERIFIED | failed | NOT_VERIFIED: functions deleted |
| fix adds subprocess the original never used | NOT_VERIFIED | failed | NOT_VERIFIED: adds subprocess |
| proper fix using functools | VERIFIED | failed | VERIFIED: any standard-library module accepted |
| proper fix | VERIFIED | held | held |
after the fix: 0 false alarms on 5 ordinary patterns (except ValueError: continue, suppress(FileNotFoundError), import_module('json'), random.choice in a game, secrets.token_hex); used while tuning, not a blind result.
VibeGuard suites 47 -> 49. 3 bundled samples keep their grades.
Raw data: vibeguard-evolution-2026-11-02.json. Our own runs; no independent test.
FIRME AI CORPORATION · CAIN-42 is a Byzantine trust fabric. Numbers marked "our own check" were run by us, not by an independent party. Nothing on these pages is a certification.