The v1.2 fresh baseline. Supersedes v1.1-claude48 (now archival). This is a genuine
re-scan, not a re-tag: model, knowledge bases, and remits all changed, so it is not
directly comparable to v1.1 — the v1.1 numbers are context, not a pass/fail gate. Roster
prominence + development-activity data lives in ../ROSTER_HEALTH.md.
claude-opus-5[1m]), pinned per-agent via
.claude/agents/opus5-scanner.md. Every scan self-reported its model identity at start and
end; zero classifier switches across ~90 scans — Praxen’s cybersecurity workload does
not trigger the Opus 5 fallback.1.2.
praxen_version 1.2.0, schema_version 3.0 (activates the remit-verbatim render invariant).Each target was scanned 3× on identical inputs (remit, source, scope byte-identical), and is frozen on its median-weighted run — one real scan, never an aggregate. The 3× also characterized run-to-run variance (bands below).
| Target | Median run | Weighted RAISE | Band (3× spread) |
|---|---|---|---|
| helperbot | run2 | 0.60 | 0.15 |
| finbot | run1 | 0.90 | 0.00 (re-scan) |
| craftbot | run1 | 1.30 | 0.15 |
| autogen-code-executor | run2 | 1.55 | 0.55 (wide) |
| salesforce-help-agent-accelerator | run3 | 1.70 | 0.00 (re-scan) |
| uagents | run1 | 1.70 | 0.45 (wide) |
| aider | run1 | 1.70 | 0.30 |
| openai-customer-service | run2 | 1.75 | 0.30 |
| openhands | run2 | 2.00 | 0.10 (re-scan) |
| deepagents-cli | run1 | 2.15 | 0.15 |
| yaah | run1 | 2.15 | 0.00 |
| hermes-agent-desktop | run1 | 2.55 | 0.30 |
Mean median RAISE 1.67. Variance sits inside the documented envelope
(docs/understanding-variability.md): 10/12 within ±0.30 of median, the exceptions being
autogen (0.55) and uagents (0.45), the judgment-sensitive cases; none beyond. Notably,
finbot’s over-reach fix collapsed its band from 0.55 (previously the widest target) to 0.00
— the ambiguous stay-in-lane clause was itself a variance driver, and removing it stabilized
all three runs at 0.90. Themes reproduced every run for every target.
Pinned SHAs recorded in ../../../local/v1.2-owasp2026-baseline/SOURCES.md. OpenHands is
scanned at its pre-migration commit (the Agent-Canvas rewrite cleared the Python tree).
deepagents re-scoped libs/cli → libs/code: the runtime moved to the sibling package;
the subject follows the code (tests/scan_instructions/deepagents-cli.md).
Remits were re-authored by the tool (blind, docs-only) and then hardened. A post-freeze FP sweep (one independent cross-model reviewer per target, verifying every finding against source) found zero detector false positives across ~130 findings — but a recurring class of generator authoring defects:
os.environ.copy() host-child leak, missing
repo allowlist; finbot’s full CTF Critical cluster; salesforce’s indirect-injection,
prompt-only-guardrail, and script-injection findings).The durable fix is the generator, not per-remit hand-editing — see RFE #198 (emit well-formed, docs-grounded, non-over-reaching statements). The heading-as-rule pattern (closure obligations left implicit) is systemic across remits and is part of #198.
All 12 pass python3 tests/render/test_render.py (schema-valid · HTML/TXT byte-identical
re-render · every policy_rule_text quoted verbatim from tests/remits/<slug>.md).