Build1 publisher3 min readPublished
A 76,326-word BMAD plan blocked its own implementation on day five
One operator ran spec-driven development at full BMAD weight for four weeks on an autonomous coding repo. The planning stage produced 1,782 files and 16 MB of artifacts, and a single story burned around thirty million tokens.
The Engineer · Build desk

What happened
- On September 5 the author deleted 1,782 files, roughly 16 MB of agents, templates, workflow configs, a PRD, an architecture document and a story backlog, from the autopilot repository in one commit.
- BMAD's four-week planning run produced a 13,397-word PRD, a 19,867-word architecture spine and a 43,062-word epics backlog covering nine epics and 86 stories, each with acceptance criteria.
- Before installing BMAD, the autopilot generated its own fix for oversized pull requests, a nearly six-thousand-line size gate that split large issues into ordered sub-issues, which the author never merged.
Compiled by The EngineerSomething wrong?How this is made
Why it matters
- cost Every review round in a writer-plus-reviewer loop is billed, so a planning stage that adds stories adds billable rounds before any product code merges.
- constraint A planning framework is only adoptable on this harness if the operator can cap tokens, wall-clock time and review cycles per story, because the framework itself does not bound them.
- decision Operators choosing spec-driven development have to decide whether plan documents are themselves subject to agent review, since that moves the review churn upstream instead of removing it.
- contradiction The author concedes he probably misconfigured something, so the token figures describe one repository's setup and cannot be read as BMAD's cost.
The loop underneath is ordinary. The autopilot receives GitHub webhooks and runs headless Claude Code sessions that write, review and merge pull requests with nobody at the keyboard [2]. BMAD puts a planning stage in front of that loop: AI analysts, architects, product managers and developers, run in a fixed order [3]. Its output is documents. The documents are agent output too, so they get reviewed.
That review fired on day five. An implementation-readiness assessment found one critical omission and three major planning defects and blocked all further implementation, and the fix approved the same day took the backlog from 86 stories to 91 [9][10][5].
Then the per-story bill. A typical story burned one to two million tokens [11]. At that rate a 91-story backlog is 91 to 182 million tokens [1]. One story hit around thirty million on its own [12], which is 15 to 30 times a typical one [2]. The defensive config that followed set a four-million-token budget per story, a 210-minute session timeout, a hard cap of seven review cycles, and nudge budgets for sessions that stall without a result [13]. The outlier story would have exceeded that budget by a factor of 7.5 [3]. "Those are not settings. Those are restraining orders," the author wrote [14].
Two things have to hold for thirty million tokens to appear in someone else's repo: a reviewer model that argues with the writer, and a cycle cap high enough to let it run. A third matters if the plan travels in context. The three planning documents run 13,397, 19,867 and 43,062 words, which is 76,326 words together [9][4]. The author does not rule out operator error. "Maybe I misconfigured something; honestly, I probably did," he wrote [15].
The problem was real before either fix. One cleanup that should have been a quiet deletion collected sixty comments across ten review rounds, with two models arguing and every round billed, and he closed the pull request without merging it; the whole argument came out of one line he wrote in thirty seconds [5].
His first attempted fix came from the autopilot itself: a scope agent that estimated the diff an issue would produce and, above a budget, carved the work into ordered sub-issues, at almost six thousand lines of new code [6]. The PR body diagnosed the disease correctly, that large pull requests drive the review churn [7]. He did not merge it. "Splitting work after it exists is triage, not planning," he wrote [8]. The day after rejecting it he installed BMAD, which he had found through a podcast on spec-driven development where one guest was a BMAD contributor [16].
The post says the thing that eventually fixed the problem was small, and the published text ends before naming it [17]. The four weeks support a narrower finding than the file count suggests. When the plan is itself agent output, it enters the same review loop the plan was bought to shorten, and in this repository four weeks of it produced no lines of product [1].
What to watch
- Whether the author publishes the smaller planning change that replaced BMAD, with per-story token figures measured on the same harness.
- Whether BMAD's maintainers document token cost per story or ship a lighter default workflow for single-operator repositories.
- Whether other operators running writer-plus-reviewer loops report similar per-story burn once a review-cycle cap is in place.