docs(tasks): add task_061026_20 (contract follow-ups) and task_061026_21 (full-GI alignment); close task_021026_19 - #232
Conversation
…sk-plan-051026-1/-2); close task_021026_19 - task_061026_20: contract follow-ups (InfiniteZeroFoundation#201 A4 DINTaskAuditor getter trim + required fold review, InfiniteZeroFoundation#180 dual-role guard, InfiniteZeroFoundation#193 two-level S5). Approved in PR No. 219 (amendments 1-5, decisions 1-3). Tracking: Discussion No. 230. - task_061026_21: full-GI alignment (contracts check, three new GIstates with an every-batch test-data commitment gate, dincli commands closing No. 223, tests/dincli on foundry running a complete GI, GI docs). Approved in PR No. 229 (amendments 1-6, decisions 1-4). Tracking: Discussion No. 231. - task_021026_19: Status -> Closed, linking Discussion No. 216 (PR No. 219 review amendment 1). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review: deep verificationReviewed against 1. Faithful to the amended plans
2. The shared budget, re-measuredA scratch prototype on 3. ReferencesVerified at
Did not hold up:
4. Links, IDs and the task_021026_19 status
Amendments
Everything else checks out. Once amendment 1 is in, this is ready to merge, together with PR No. 219 and PR No. 229, whose status lines link these two files on |
Files changed (3) — as of
|
| Field | Value |
|---|---|
| Change | New |
| Lines | +174/−0 |
| Diff (what exactly is in this PR) | The task spec forwarded from task-plan-051026-1 (PR No. 219): Part A (issue No. 201 A4, four DINTaskAuditor getters → internal, required fold review), Part B (issue No. 180, dual-role guard in registerDINAuditor), Part C (issue No. 193, two-level S5), the shared DINTaskAuditor budget table, Coordination, and Out of scope. Tracking: Discussion No. 230 |
| Functionality — how & why | How: Parts A+B go in one PR, so the CI size gate proves both fit in one build. Part C is a separate PR on DinValidatorStake, in parallel. The budget table carries task 21's +75 B, so the auditor's margin after both tasks (2,001 B, warn band) is known before either lands. Why: DINTaskAuditor sits in the warn band (1,858 B), dual-role registration is a KNOWN GAP (Row 6), and S5 counts per slasher contract (Row 11), so cross-model and S1/S2 misses never add up |
Diff vs current develop HEAD |
None (new file) |
| Recommended merge proposal | Merge as-is. Every reference and size re-verified (verification comment §2–§3) |
| Actual merge proposal | Soon |
| Pending proposal | None |
| Local merge conflict | No |
| GitHub merge conflict | No |
Developer/tasks/task_061026_21.md
| Field | Value |
|---|---|
| Change | New |
| Lines | +316/−0 |
| Diff (what exactly is in this PR) | The task spec forwarded from task-plan-051026-2 (PR No. 229): Part A (contracts check, with precondition and dincli coverage tables), Part B (AuditSeedLocked, AuditTestDataAssigned with the every-batch commitment check, AggSeedLocked), Part C (dincli commands; closes issue No. 223), Part D (tests/dincli on foundry, one complete GI), Part E (GI docs incl. setup.md, ROADMAP.md:19). Tracking: Discussion No. 231 |
| Functionality — how & why | How: four sequential PRs (A+B → C → D → E), so commands and the suite are built on the final state machine. The new states are set inside existing functions, so they add no extra owner transactions. startLMsubmissionsEvaluation gains the missing test-data gate. Why: dincli and the integration suite can't drive a full GI on the foundry contracts (old constructors, no funding/key/claim/dispute commands, hardhat artifacts), and evaluation can start without test data assigned |
Diff vs current develop HEAD |
None (new file) |
| Recommended merge proposal | Merge after amendment 1: claimDisputeBond :1575 → :1583 (:200). Optional nit: deploy.py:61-62 → :63-64 (:187) |
| Actual merge proposal | Soon |
| Pending proposal | Amendment 1 (one line) |
| Local merge conflict | No |
| GitHub merge conflict | No |
Developer/tasks/task_021026_19.md
| Field | Value |
|---|---|
| Change | Modified |
| Lines | +1/−1 |
| Diff (what exactly is in this PR) | **Status:** Open (assigned) → Closed (completed 2026-10-05), listing PRs No. 211 / 212 / 214 / 215 and the No. 207 wiki revision, with a link to the Discussion No. 216 closing comment |
| Functionality — how & why | How: a status-line edit only; the rest of the spec is untouched. Why: PR No. 219 review amendment 1. Discussion No. 216 closed the task on 2026-10-05, but the file still said Open |
Diff vs current develop HEAD |
None. develop's last touch was PR No. 217 (a1fcce2), which is the merge-base |
| Recommended merge proposal | Merge as-is. The listed PRs are all merged, and the comment ID was fetched via GraphQL |
| Actual merge proposal | Soon |
| Pending proposal | None |
| Local merge conflict | No |
| GitHub merge conflict | No |
Verification
Docs only, so there's no build or test to run. The budget numbers were reproduced with a scratch via_ir prototype (reverted). check_doc_links.py Developer is green, and git diff --check is clean. Full detail is in the verification comment above.
Local vs. GitHub agree: both report clean, with no conflicts.
…d at :1583 - Part C table (:200): claimDisputeBond() is at DINTaskCoordinator.sol:1583; :1575 is _burnAndForward(d.bond) inside resolveDispute. Same fix as PR No. 229. - :187 (nit): the auditor-side stake guard in deploy.py is at :63-64, not :61-62. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Actual outcome — PR No. 232 merged (pushed)This supersedes the pre-merge merge-proposal comment above with what actually happened. Fix commit reviewed: One commit on
No deviation commit was needed. Files unchanged from the PR (3 of 3:
|
This PR forwards the two plans approved in #219 and #229 as task specs. Docs only.
Developer/tasks/task_061026_20.md(new)- Part A: #201 A4.
DINTaskAuditorgetter trim, plus a required fold review- Part B: #180 dual-role guard
- Part C: #193 two-level S5
Includes the shared
DINTaskAuditorbyte budget across both tasks (22,575 B after both, 2,001 B margin). Tracking: Discussion #230Developer/tasks/task_061026_21.md(new)- Part A: contracts check, with a precondition table and a dincli coverage table
- Part B:
AuditSeedLocked,AuditTestDataAssigned(gated on an every-batch commitment check) andAggSeedLocked- Part C: dincli commands. Closes #223
- Part D:
tests/dinclion foundry, running one complete GI- Part E: GI docs, including
setup.mdandROADMAP.md:19Tracking: Discussion #231
Developer/tasks/task_021026_19.md**Status:**changes to Closed, with a link to Discussion #216 (PR #219 review amendment 1)Notes:
DINShared.soledits, theDINTaskAuditorABI and byte budget, and the getters task 21 reads.check_doc_links.py Developeris green.🤖 Generated with Claude Code