mirror of
https://github.com/norandom/OpenUltraSAST.git
synced 2026-10-20 05:29:28 +00:00
feat(pre-push-safety-net): record admission vetoes and meet M1a on NodeGoat
Add group 9 to the approved task plan as the bounded owner amendment release milestone M1a requires, implement the task-local recorded-veto evaluation flag, and run the three pinned NodeGoat revisions under it. The flag re-runs the production comparison and admission over a lifted copy of the same evidence and records each veto instead of applying it. Recognized completeness vetoes are lifted and logged; failures never are, because silence from a failure is not a quiet fixed twin. It is off by default, accepted only on explicit base/head replay, refused in Git stdin mode, labels every payload it produces, and admits no defect even when a lifted candidate otherwise would. M1a outcome, inside its one-week box and with expectations frozen on disk first: the three entailed <lambda>2 witnesses are present at contributions.js 32-34; the fixed twin was genuinely analyzed and quiet, answering its target question with zero rows and no deadline reason while the same findings appear as base-only; the unchanged revision was analyzed and recorded unchanged. The kill criterion did not trigger. Five vetoes fired and were recorded. M1a also corrected the diagnosis: with all five lifted the detection still stops at operation_correspondence_unresolved, because a newly introduced operation sits on a changed line and has no base anchor. The unchanged revision resolves its base location on the same lines and classifies as unchanged, which isolates correspondence as the mechanism. That fifth veto was not in the earlier four-veto diagnosis and is now M1b's central repair. Diagnosis only. No defect admitted, no capability enabled, no gate changed, no latency claim; the 900-second development budget cannot measure the hook gate. Rollout and task 8.3 remain NO-GO. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> Claude-Session: https://claude.ai/code/session_01EmM1j46qgKMh3zqD1QMwEo
This commit is contained in:
co-authored by
Claude Opus 5
parent
8b66d5cb75
commit
3224884d8f
@@ -1,17 +1,24 @@
|
||||
# Pre-push safety net status — v1.2.0-alpha.1
|
||||
|
||||
Updated 2026-09-14. Phase: **implementation**. Requirements, design and tasks are
|
||||
approved. **26/27 executable tasks complete; task 8.3 remains blocked.**
|
||||
Updated 2026-09-16. Phase: **implementation**. Requirements, design and tasks are
|
||||
approved. **28/29 executable tasks complete; task 8.3 remains blocked.**
|
||||
Rollout: **NO-GO**. The alpha tag publishes experimental implementation and evidence;
|
||||
it does not approve normal hook capabilities or production enforcement.
|
||||
|
||||
## Next release milestone
|
||||
|
||||
**M1a: show the NodeGoat detection with every admission veto recorded rather than
|
||||
applied, fixed twin analyzed and quiet, one-week time box. Then M1b: repair only the
|
||||
vetoes that fired and rerun through production rules.** None of the five release
|
||||
milestones is verified yet.
|
||||
The 26/27 task count is implementation progress, not proximity to rollout. Follow the
|
||||
**M1a is met. M1b is next: repair only the vetoes M1a showed to matter, then rerun the
|
||||
three revisions through the production rules.** The other four milestones remain unverified.
|
||||
|
||||
M1a ran on 2026-09-16 within its one-week box. The raw `<lambda>2` witnesses are present at
|
||||
contributions.js lines 32–34, the fixed twin was genuinely analyzed and quiet, and the
|
||||
unchanged revision was not reported as a new regression, so the kill criterion did not
|
||||
trigger. Five vetoes fired and were recorded; with all five lifted the detection still stops
|
||||
at `operation_correspondence_unresolved`, because a newly introduced operation sits on a
|
||||
changed line and has no base anchor. That fifth veto was not in the earlier diagnosis and is
|
||||
now M1b's central repair. See [M1a evidence](m1a-recorded-vetoes.md).
|
||||
|
||||
The 28/29 task count is implementation progress, not proximity to rollout. Follow the
|
||||
accepted [release milestone spec](release-milestones.md): usefulness → speed → shared
|
||||
PHP/Python transfer → independent qualification → narrow advisory rollout.
|
||||
|
||||
@@ -37,7 +44,10 @@ gates and a packaged native PHP/JavaScript partition smoke. See
|
||||
Still 0/24 declared target checks completed. Maximum observed cancellation/report
|
||||
overrun was 0.874s, below the two-second allowance. After M1 establishes the useful
|
||||
comparison, amortize engine startup/loading and rerun the frozen seven-class profile; require warm p95 <=30s and >=95% completed supported checks.
|
||||
2. **Target and change-context evidence remains incomplete.** VAmPI preserves raw findings
|
||||
2. **Target and change-context evidence remains incomplete.** M1a measured exactly which
|
||||
contracts fail on the Node case: per-family change context, question-owned vendor
|
||||
relevance, operation correspondence for changed lines, file-wide correspondence ambiguity
|
||||
and query-to-operation provenance. VAmPI preserves raw findings
|
||||
at all three known sites, but the exact SQLI function question/transitive witness and
|
||||
supported authorization context are unresolved. Raw findings or rank positions cannot
|
||||
establish an actionable new regression. Repair this in the shared scan boundary and
|
||||
|
||||
Reference in New Issue
Block a user