Skip to content

Task grain and review cadence: largest-ownable tasks, frontier review, resume-based fix loop, sde-telemetry (v7.59.0) - #81

Merged
SSFSKIM merged 18 commits into
mainfrom
task-grain-cadence
Aug 21, 2026
Merged

Task grain and review cadence: largest-ownable tasks, frontier review, resume-based fix loop, sde-telemetry (v7.59.0)#81
SSFSKIM merged 18 commits into
mainfrom
task-grain-cadence

Conversation

@SSFSKIM

@SSFSKIM SSFSKIM commented Aug 21, 2026

Copy link
Copy Markdown
Owner

What

Re-tunes the controlled track's unit economics — the doctrine change the closed experiment spec (PR #72) was designed to test, adopted now with telemetry monitoring instead of a paired double-run (human's call, 2026-08-21).

  • writing-plans — Task Right-Sizing (human's wording): a task is the unit one executor can reliably own from a single self-contained brief, not the smallest unit a reviewer could gate; boundaries drawn by interface frontiers, reviewable diff, ownability. Criteria only, no numbers. Interfaces: Consumes now names the producing task. "Bite-Sized Task Granularity" → "Bite-Sized Steps" (content unchanged).
  • subagent-driven-execution — review at dependency frontiers: a task is reviewed clean before anything that consumes what it produced dispatches; sibling tasks batch into a wave reviewed together (one reviewer per task, concurrent when their focused tests are hermetic); a deferred review's dispatch names the current HEAD and what landed since, with a detached worktree at the packaged HEAD for checks that need the task's own tree. Fix loop resumes the executor (and the reviewer for re-review) instead of dispatching fresh fixers; fresh fixer when resume is impossible or two re-reviews failed. Ledger gains executed lines (base, handles) so compaction never re-executes an executed-but-unreviewed task. Model text aligned to the standing directive: opus/high default, sonnet for simple tasks, never fable.
  • scripts/sde-telemetry: per-session dispatch counts by role, span and active time, token totals deduplicated by message id, start-time-sorted dispatch list.
  • Spec docs/doperpowers/specs/2026-08-21-task-grain-and-review-cadence-design.md: quotes the skill-bound text verbatim, carries the four-run baseline (2026-08-18..20) and the monitoring protocol (next three controlled-track features; reopen criteria), Decision Log, and the smoke-check results.

Evidence

  • Baseline telemetry (4 runs, 90 dispatches): reviewer time equals or exceeds executor time in two runs; fixer dispatches of the same order as executors; practice had drifted to 5–7 tasks; per-task reviews caught test-quality classes, final codex review caught cross-task correctness.
  • Wording smoke checks: new Right-Sizing on the PR Board client reads the paged surface (read-surface program, patch 2) #74 spec → 7/6/6 tasks (control on the old text: 8), every earlier-task Consumes naming its producer 3/3; new SDE loop on the PR Board client reads the paged surface (read-surface program, patch 2) #74 plan → frontier schedule with batched siblings and concurrent reviewers 5/5 reps (v1: {1}|{2,3,4,5}|{6}|{7} ×3; v1.1: one split at the Task 3→4 shared-file overlap, one batched), ledger executed lines and no re-execution after simulated compaction.
  • tests/claude-code/run-skill-tests.sh --test test-subagent-driven-execution.sh PASS against the worktree skill (via claude --plugin-dir shim).
  • Independent spec review (fable): 15 findings, adopted in v1.1. Codex native review (gpt-5.6-sol): five rounds (3 → 2 → 4 → 1 → clean), each fixed by one fix-wave subagent; one round-3 finding (adversarial before/after evals before release) declined on the human's evidence choice and recorded in the Decision Log.

Monitoring

After each of the next three controlled-track features: run the collector, append a row to the spec's Surprises, compare against the baseline; reopen on the spec's §3 criteria.

v7.59.0 — version collision: PR #80 also bumps to 7.59.0; whichever merges second rebumps on the manifest conflict (no other file overlap with main).

SSFSKIM added 13 commits August 21, 2026 05:27
…e-based fix loop, opus worker text; land scripts/sde-telemetry
…lines, reviewed-clean frontier, stale-resume context, sonnet→opus escalation, acceptance fixes)
… by message id and reports active time (codex P1+P2s)
…, frontier review, resume-based fix loop, sde-telemetry)
…sk-prefixed noun descriptions (codex round 2)
…routes through the frontier; reviewer template task-head/checkout-head (codex round 3)

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1c558ea2f7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread scripts/sde-telemetry Outdated
Comment on lines +29 to +31
(re.compile(r"^(implement|execute|run) task|^task \d+:"
r"|^t\d+ (implementer|executor)", re.I), "executor"),
(re.compile(r"^t\d+ fixer|\bfix", re.I), "fixer"),

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Do not classify every Task N: dispatch as an executor

When the fresh-fixer fallback is described naturally as Task 2: fix pagination (or a reviewer as Task 2: review pagination), the broad ^task \d+: alternative matches first, so role_of never reaches the fixer or reviewer pattern. This misreports the role counts used to monitor whether the new execution cadence reduces fixer/reviewer dispatches; restrict this alternative to executor-shaped descriptions or prioritize explicit fix/review descriptions.

Useful? React with 👍 / 👎.

Comment thread scripts/sde-telemetry Outdated
Comment on lines +93 to +95
if t - previous > IDLE_GAP:
active += previous - segment_start
segment_start = t

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Exclude only confirmed resume waits from active time

For any test, build, or model/tool operation that legitimately takes more than 15 minutes, the transcript contains a gap over IDLE_GAP and this branch discards the entire interval as idle. Controlled-track executors and reviewers can run commands this long, so the reported active duration—and therefore comparisons against the monitoring baseline—is understated; identify actual wait/resume boundaries from transcript events instead of treating every long gap as an idle resume.

Useful? React with 👍 / 👎.

Comment on lines +55 to +59
Your review is read-only on this checkout. Do not mutate the working
tree, the index, HEAD, or branch state in any way.
tree, the index, HEAD, or branch state in any way. A check that must
see this task's own tree — a focused test, a named risk — runs in the
detached worktree the controller names, not in this checkout, which
may sit past the task's head.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Provision the detached worktree before requiring it

When an immediate review runs at the task head, the controller omits the Checkout line and does not create a detached worktree, yet this instruction still requires every focused test or named-risk check needing the task tree to run in a detached worktree that the controller names. Likewise, during a deferred review the reviewer may discover the need for such a check only after reading the diff, after the controller has already decided whether to provision one. In either case the reviewer can be left unable to perform an otherwise warranted focused check; make this conditional on a named worktree actually being supplied, allow the reviewer to request/create one, or provision one for every affected review.

Useful? React with 👍 / 👎.

@SSFSKIM

SSFSKIM commented Aug 21, 2026

Copy link
Copy Markdown
Owner Author

Historical-spec before/after (human-proposed, 2026-08-21)

Eight shipped controlled-track specs (2026-08-03..20) re-cut from their pre-execution spec text at fork-point checkouts: 2 opus planners on the NEW writing-plans text + 1 opus planner on the OLD text per spec (breakdowns with Interfaces only). The shipped plan + its real run (telemetry/ledger) is the before.

Spec (real run) Shipped plan tasks Real run: dispatches exec/rev/fix · tasks needing fix · final-gate Control (old text, opus) New text (opus) reps New frontier review points Δ tasks new-median vs shipped Δ review points vs shipped per-task
#43 codex-workflow-engine (08-03..05) 8 37: 8/8/11 · every task (retro) · 4 P1 + 2 P2; dogfood 17 in 3 waves 13 6, 9 (median 7.5) 5, 6 -6% -31%
#50 a2-board-adapter (08-09..10) 14 50: 14/14/19 · 13 of 14 · 5 rounds: 33→8→3→3→1 confirmed 14 9, 8 (median 8.5) 8, 6 -39% -50%
#61 dp51-a1-consumption (08-11) 10 63: 22/21/16 · 10 task-ids fixed · PR-review flow-back (api-scale) 9 8, 8 (median 8.0) 5, 5 -20% -50%
#65 dp51-deferrals-dp60 (08-12..13) 11 28: 10/9/4 · 1 of 11 (+final panel) · final panel findings, 1 wave 12 6, 6 (median 6.0) 4, 3 -45% -68%
#74 board-client-paged-reads (08-18) 7 22: 8/7/5 · 2 of 7 · 4 P2 over 4 rounds 10 5, 6 (median 5.5) 3, 4 -21% -50%
#76 client-agent-grade-reads (08-20) 5 14: 5/5/2 · 1 of 5 · 0 Critical/Important 7 3, 4 (median 3.5) 3, 4 -30% -30%
arkho#11 read-surface (08-18) 11 37: 11/10/14 · 9 of 10 · 3 codex + 3 PR-level 11 6, 7 (median 6.5) 6, 4 -41% -55%
arkho#17 agent-grade-reads (08-19) 6 17: 6/7/2 · 2 of 6 · 0 Critical/Important 5 4, 4 (median 4.0) 4, 4 -33% -33%

Totals over 8 specs: shipped 72 tasks; controls (n=8) 81; new-text medians 49.5; new frontier review points 37.

Read: shipped 72 tasks → new-text medians 49.5 (−31%; −39% vs same-model old-text controls, which cut finer than the frontier-authored shipped plans in 5/8). Frontier review points from the new breakdowns' Consumes: 37 vs 72 per-task reviews (−49%), reviewers concurrent inside sets. Producer-naming Consumes 16/16. Spread between new reps up to 3 tasks (#43: 6 vs 9) — judgment room as intended. Pain alignment: fix-loop-dominated runs (#50: 19 fixers/14 tasks; #43: fixer active 2× executor) are where resume-based fixes bite; the review-idle run (#65: 9 reviews, 1 fix) loses the most review points; chain-shaped specs (arkho#11/#17, #76) gain from grain only; PR #74's cross-task final-review defects sat inside the primitives task in every cut — that class stays the final gate's. Proposals, not executed runs — no quality measurement of the new cuts; §3 monitoring remains the eval. Recorded in the spec (v1.7).

@SSFSKIM SSFSKIM closed this Aug 21, 2026
@SSFSKIM
SSFSKIM deleted the task-grain-cadence branch August 21, 2026 09:37
@SSFSKIM
SSFSKIM restored the task-grain-cadence branch August 21, 2026 09:37
@SSFSKIM SSFSKIM reopened this Aug 21, 2026
@SSFSKIM
SSFSKIM merged commit 6cebc3d into main Aug 21, 2026
@SSFSKIM
SSFSKIM deleted the task-grain-cadence branch August 21, 2026 09:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant