This repository was archived by the owner on Jun 26, 2026. It is now read-only.
Idea: fanout-phase — multi-conversation dispatch board for phases with 10+ homogeneous atomic units
#3256
zzhuxiaojun-glitch
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
The gap I keep hitting
GSD's existing
gsd-execute-phasedoes excellent wave parallelism with subagents inside one conversation. That works beautifully when each task fits in summary-back context (~20-30k tokens to spawn + retrieve).Where it falls over for me: phases where each atomic task itself needs ~50–100k tokens of context — typically:
When I have N=20+ such tasks, neither approach scales:
What I built outside GSD
Last week I built a "dispatch-board" pattern for a JLPT mock exam project (60k+ questions, 6 textbooks to extract, 3 explanation enhancement tracks). Currently 167 atomic dispatches across 11 categories, in production with multi-session validation.
The pattern boils down to file conventions + a small Python aggregator:
The user opens N parallel Claude Code sessions; each says
execute dispatch <category>/<id>; each completes its full ~50k token job, writesstatus/<task_id>.json, regeneratesMASTER_PROGRESS.{md,html}, thengit pull --rebase+ push. Validated within 24h: 7 parallel sessions independently captured 8 new pitfalls without status-file collisions, all merged cleanly.Sketch of what would land in GSD
Smallest-viable shape (one new command, no new phase type):
Behavior:
PLAN.md; if it has ≥10 homogeneous tasks marked something likekind: parallel-atom, generate.planning/<phase>/dispatch-board/{dispatches/, status/, build_dashboard.py}from a manifest derived from PLAN.md.execute dispatch <slug>/<id>in each."gsd-verify-work) checksstatus/*.jsoncount == manifest entries, treats it as wave equivalent.Anything bigger (new phase type, new state field) is probably scope creep — the pattern is mostly file conventions + a Python aggregator (~250 LOC).
Why I'm not just opening a Feature Request
Per CONTRIBUTING.md: discuss first. Real questions before I write the spec:
dispatch-board) already; that route may suit you better given maintenance burden./gsd-fanout-phaseas a new command, or a flag on/gsd-execute-phase(e.g.--mode=fanout), or a new phase type emitted by/gsd-plan-phase?status/<task_id>.jsonfiles be reflected back intoSTATE.md, or stay as a separate sub-system that only the verification step reads?Happy to write the full Feature Request spec + PR if maintainers indicate interest. Otherwise I'll keep it as a community skill and just submit a docs link.
All reactions