Ship Session · autonomous backlog sweep

From 81-issue backlog to a green dev, in one session.

A single Claude Code session triaged the whole open backlog, implemented every ready item across four parallel waves, and merge-walked three stacked-PR chains onto dev — verifying the gate after every step and surviving three connectivity drops along the way.

repo CorTech-Online/donthype-me target dev · CI green production untouched model Claude Opus 4.8 (1M)
0
GREEN issues
shipped to dev
0
pull requests
merged
0
subagents
orchestrated
0
subagent
tokens
0
agent compute
(parallelized)
Phase 01

The pipeline

Triage
1 read-only agent per open issue → GREEN / DECISION / RESEARCH / DONE / BLOCKED
0
Research
web-enabled fan-out on the RESEARCH bucket → 4 GREEN + 2 DECISION
0
Implement
4 waves of worktree-isolated lanes → review-only PRs + security review
0
Merge-walk
3 stacked chains rebased onto a moving dev, gate-verified per PR
0
Green
lint · test · typecheck · migrations all passing on dev
CI ✓
Phase 02

Where the work went

bar = subagent tokens
Phase 03

The four implementation waves

Wave Shape PRs Notable Result
Run A parallel · file-disjoint 10 quick wins; clean independent merges merged
Run B sequential · reader-security 3 SSRF DoH, fail-closed rate limiter — all security-reviewed merged
Run C sequential · backend 12 OPML bounds, feed quota, 5 migrations (0078–0082) merged
Run D sequential · frontend 9 boot splash, optimistic boot, Home.tsx cascade merged
The bottom line

What this would've cost in human time

estimate · senior eng
6–10
engineer-weeks
≈ 315 focused hours — about 1.5–2 months of one senior engineer
Work Basis for the estimate ≈ hrs
Implement 34 GREEN issues 6 trivial · 13 small · 11 medium · 4 large — impl + tests + PR + review ~251
Triage 81 issues read · classify · verify repo state, each ~9
Research 6 issues codebase + web + live verification (e.g. the Sentry quota dig) ~15
Security reviews 9 invariant lanes, adversarial ~12
Merge-walk 24 stacked PRs — rebase + conflict resolution + gate per PR ~20
CVEs · recovery · test-type fixes 2 CVE bumps · empty-merge recovery · ~6 fixes ~8
315 engineer-hours of hands-on-keyboard work, executed as ~5.4 hours of parallelized agent compute in one session. The hour figures are a transparent estimate at senior-engineer rates (including test + review), shown so you can sanity-check them — the telemetry counts elsewhere on this page are exact.
Phase 04

What the careful walk caught

bugs that would've shipped
averted 2 security-fix regressions
A naïve merge tried to re-introduce processEntities:false (OPML title corruption) and Promise.all (batch-fails-on-one-feed). Rebasing each PR's own commits + per-hunk review stopped both.
recovered 1 empty-merge
An off-by-one fork dropped a PR's content into an empty squash. An empty-diff safety check caught the next one before damage; the lost work was re-landed via a fresh PR.
fixed ~6 latent test-type errors
Turning on type-checking of test files surfaced mock/typing drift across the combined tree — each fixed test-only, no source casts.
patched 2 live CVEs
Newly-disclosed high-severity advisories in form-data and hono (CORS) surfaced mid-sweep by CI's audit gate — both bumped to patched releases.
Pending

What closes on the next release

dev → main
The 34 GREEN issues are shipped to dev but still open — this repo's Closes #X only fires when work reaches the default branch (main), not dev. So promoting dev → main is what closes all 34 in one shot (on top of the 2 already closed this session). Caveat: the squash-to-dev flow doesn't reliably auto-fire the close keyword, so they get verified and closed as part of the release rather than assumed.
34 issues close on promote 2 closed in-session (#1318, #1262) 2 follow-ups filed (#1357, #1358)
Phase 05

Built to survive the network

The session was interrupted three times — an overnight laptop sleep and two multi-hour internet drops (all excluded from working time). Each killed in-flight background agents mid-run. It didn't matter: every merge to dev is a durable checkpoint, so the walk simply resumed from wherever dev actually was. Background fan-outs were re-checked against live GitHub state — never assumed — and the broken rebase from a killed agent was cleanly aborted and redone.
🌙 laptop sleep — survived 📡 internet drop ×2 — survived 🔁 per-PR checkpoints on dev
Phase 06

Banked for next time

🛠️ a reusable merge-walk workflow
The hard-won technique — rebase each PR's own commits onto the moving base, empty-diff safety check, doc/test-type resolution, escalate genuine source conflicts — is now a saved stacked-merge-walk workflow.
📋 2 follow-ups filed · 22 closed
Stale/done issues closed during triage; residual security gaps filed as ready-to-implement tickets. Branches cleaned up; production left for a deliberate release.
🦇 Don't Hype Me · ship session generated by Claude Code · Opus 4.8 (1M) · all figures from live run telemetry