Convergence
Verdict: not converged
Multiple signals unmet: S1, S2, S3, S6. See per-signal detail.
| Signal | Name | Status | Detail |
|---|---|---|---|
S1′ |
two-clean-rounds-per-lens | unmet | 28 of 28 rounds count toward NO streak (27 no code identity, 1 dirty worktree); 0/13 lenses satisfied. Short: L1 contract 0/2, L2 persistence-concurrency 0/2, L3 error-surface 0/2, L4 behaviour-idempotency 0/2, L5 data-correctness 0/2, L6 security-secrets 0/2, L7 operator-experience 0/2, L8 test-quality 0/2, L9 enforcement-integrity 0/2, L10 reachability 0/2, L11 performance-resource 0/2, L12 packaging-environment 0/2, L13 free-sweep 0/2. |
S2 |
section-coverage | unmet | 9 uncovered in last 5 rounds: §9, §10, §11, §13, §14, §16, §17, §19, §19.5 |
S3 |
forbidden-aliases-clean | unmet | bare HadurError raises in modules with typed subclass: hadur_core/handoff.py:89; bare HadurError raises in modules with typed subclass: hadur_core/handoff.py:96; bare HadurError raises in modules with typed subclass: hadur_core/handoff.py:102; bare HadurError raises in modules with typed subclass: hadur_core/handoff.py:104; bare HadurError raises in modules with typed subclass: hadur_core/handoff.py:113; bare HadurError raises in modules with typed subclass: hadur_core/handoff.py:143; bare HadurError raises in modules with typed subclass: hadur_core/handoff.py:145; bare HadurError raises in modules with typed subclass: hadur_core/worktree.py:33; bare HadurError raises in modules with typed subclass: hadur_core/worktree.py:43; bare HadurError raises in modules with typed subclass: hadur_core/sweep/config.py:105 (+ 3 more) |
S4 |
exports-have-tasks | met | |
S5 |
imports-cite-current | met | |
S6 |
self-review-populated | unmet | plan-06-jira-bridge: missing Self-Review section; plan-07-jira-bridge-pull: missing Self-Review section; plan-08-dev-session-bridge: missing Self-Review section; plan-09-hook-portability: missing Self-Review section |
S7 |
lens-coverage | met | all 13 lenses certifiably exercised. floor: Hadur verifies artifacts, not attention — a certified lens means a distinct reviewer id and a hash-pinned brief naming that lens exist at a code state the loop did not choose. It does NOT mean a reviewer read the code or asked the question; a fabricated brief with a matching hash is always possible. |
Lenses
| Id | Name | State | Question |
|---|---|---|---|
L1 |
contract | exercised | Does the code match the Contract's §-sections? |
L2 |
persistence-concurrency | exercised | Locks, atomicity, crash consistency, lost updates. |
L3 |
error-surface | exercised | Does failure surface correctly, and does the exit-code gate hold? |
L4 |
behaviour-idempotency | exercised | Trace a user journey end-to-end. Is a re-run idempotent? What does a partial failure leave behind? |
L5 |
data-correctness | exercised | Is what we write semantically right — right parent, right label, right round — not merely written without crashing? |
L6 |
security-secrets | exercised | Can a credential or PII reach a place with a wider audience? Can hostile input from one side corrupt the other? |
L7 |
operator-experience | exercised | Under stress, does the tool tell the truth? Is the documented recovery procedure real? |
L8 |
test-quality | exercised | Would these tests fail if the invariant broke? |
L9 |
enforcement-integrity | exercised | Is the guard/invariant itself sound, complete, and fail-closed — or correct only on the shapes it already knows? |
L10 |
reachability | exercised | Is every declared capability traced to an operator entry point, or is it dead surface? |
L11 |
performance-resource | exercised | Time, memory, file handles, unbounded growth, N+1 work. |
L12 |
packaging-environment | exercised | Does it install, import, and run outside the author's machine? |
L13 |
free-sweep | exercised | Deliberately NOT the lens of the last N rounds (§7.7 tunnel signal). |
Lens × Round coverage
Findings — round 28
| Id | Severity | Plan | § | Location | Evidence | Status |
|---|---|---|---|---|---|---|
R28-P00-M1 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M1 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P00-M2 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P00-M3 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M2 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M3 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P02-M1 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M4 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P02-M2 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M5 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M6 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M7 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M8 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M9 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P02-N1 |
Minor | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-C1 |
Critical | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P05-M1 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M10 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P03-M1 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-C2 |
Critical | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M11 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M12 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M13 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P05-C1 |
Critical | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P05-M2 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P05-M3 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M14 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M15 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P05-M4 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P00-N1 |
Minor | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P00-M4 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-C3 |
Critical | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-M16 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-N1 |
Minor | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P05-M5 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P05-M6 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P05-N1 |
Minor | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P05-N2 |
Minor | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P00-M5 |
Major | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P01-C4 |
Critical | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P06-C1 |
Critical | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
R28-P06-C2 |
Critical | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | (detail omitted in public export) | resolved |
Trends
| Round | Criticals | Majors |
|---|---|---|
| 1 | 20 | 10 |
| 2 | 5 | 7 |
| 3 | 5 | 5 |
| 4 | 2 | 4 |
| 5 | 0 | 3 |
| 6 | 1 | 5 |
| 7 | 1 | 2 |
| 8 | 0 | 10 |
| 9 | 0 | 2 |
| 10 | 0 | 4 |
| 11 | 0 | 1 |
| 12 | 0 | 1 |
| 13 | 0 | 0 |
| 14 | 0 | 0 |
| 15 | 0 | 0 |
| 16 | 0 | 11 |
| 17 | 1 | 3 |
| 18 | 0 | 1 |
| 19 | 0 | 1 |
| 20 | 0 | 0 |
| 21 | 0 | 5 |
| 22 | 0 | 2 |
| 23 | 0 | 1 |
| 24 | 0 | 2 |
| 25 | 0 | 4 |
| 26 | 1 | 3 |
| 27 | 1 | 1 |
| 28 | 7 | 30 |
Coverage
Waves
No waves recorded yet.
Audits
| Domain | Status | Round | Result |
|---|---|---|---|
| code_drift | checked | 1 | clean |
| security | checked | 1 | clean |
| infrastructure | checked | 1 | clean |
| performance | checked | 1 | clean |
| accessibility | checked | 1 | clean |
| seo | checked | 1 | clean |
| integration | checked | 1 | clean |
| wave_consistency | checked | 1 | 48 Critical |
Sweep
| Regime | Status | Round | Result | Acknowledged (C18) |
|---|---|---|---|---|
| sweep_contract | not run this round | — | 0 | |
| sweep_code | not run this round | — | 0 |
Key
Signals (§7.3)
- S1′
- two clean rounds per lens, on the current code (S1′)
- S2
- every Contract §-section reviewed within the window — no blank rows
- S3
- no forbidden import aliases / retired names in narrative
- S4
- every §18 Export row has an owning task
- S5
- every §18 Import cites the provider's current version + signature
- S6
- each plan's §-by-§ self-review table is filled
- S7
- every lens covered with certified provenance — no blank lens rows
Lenses (§7.3.1) — the 13-lens registry
- L1 — contract
- Does the code match the Contract's §-sections?
- L2 — persistence-concurrency
- Locks, atomicity, crash consistency, lost updates.
- L3 — error-surface
- Does failure surface correctly, and does the exit-code gate hold?
- L4 — behaviour-idempotency
- Trace a user journey end-to-end. Is a re-run idempotent? What does a partial failure leave behind?
- L5 — data-correctness
- Is what we write semantically right — right parent, right label, right round — not merely written without crashing?
- L6 — security-secrets
- Can a credential or PII reach a place with a wider audience? Can hostile input from one side corrupt the other?
- L7 — operator-experience
- Under stress, does the tool tell the truth? Is the documented recovery procedure real?
- L8 — test-quality
- Would these tests fail if the invariant broke?
- L9 — enforcement-integrity
- Is the guard/invariant itself sound, complete, and fail-closed — or correct only on the shapes it already knows?
- L10 — reachability
- Is every declared capability traced to an operator entry point, or is it dead surface?
- L11 — performance-resource
- Time, memory, file handles, unbounded growth, N+1 work.
- L12 — packaging-environment
- Does it install, import, and run outside the author's machine?
- L13 — free-sweep
- Deliberately NOT the lens of the last N rounds (§7.7 tunnel signal).
Drift catalog (§20)
- C1-C18
- the §20 narrative-drift catalog the sweep greps for
- C18
- fail-open enumeration — a denylist guard where an unknown construct passes; surfaced as candidates, never 'clean' (§6.5)
Severity
- Critical
- blocks convergence; Breaker-gated fix + re-review
- Major
- real defect; blocks a clean round
- Minor
- should fix; does not block
- Nit
- polish / preference
Sweep three-state model
- verified-clean
- checked, no drift — the only state counting toward clean
- drift
- a real disagreement — blocks (exit 3)
- skipped
- could not check — never 'clean'; blocks only under --strict
- candidate
- a C18 fail-open surfacing — a reviewed note, not a safety verdict
Exit codes
- 0
- clean
- 2
- typed error / usage error
- 3
- drift, unacknowledged candidate, or (--strict) a skip