WeAreDevelopers × BAND · Dark Factory · Pocketful · run report

Proof before ship.

Five Claude Code seats in BAND Desktop built a wallet service from one dispatched task. Only the builder writes product code; an independent gate accepts nothing until an adversary has attacked the same revision. 4/4 ACCEPTED

4/4stages accepted by the gate
7defects caught before acceptance
0oracle mismatches in 153,610 comparisons
834seat turns across five seats
$123.87API-equivalent cost, measured

The run, seat by seat

STAGE 1STAGE 2STAGE 3STAGE 4Claude usage limit · 9.5 hClaude usage limit · 4 hlaptop asleep · 16.5 hhumancoordinatoranalystbuilderadversarygateSun 03:05 · coordinator · coordinator: open stage logSun 03:26 · analyst · analyst: stage 1 coverage matrix and acceptance checksSun 03:27 · coordinator · coordinator: stage 1 handoffsSun 13:12 · coordinator · coordinator: resend builder handoffSun 13:30 · builder · builder: Pocketful stage 1 service (payments, requests, splits, settlements)Sun 13:42 · coordinator · coordinator: stage 1 attack/verify handoffsSun 13:58 · adversary · adversary: stage 1 attack report and scriptsSun 14:09 · coordinator · coordinator: stage 1 reject 1, rework handoffSun 14:12 · builder · builder: stage 1 rework 1 - bound request bodies and headers (G1-G3)Sun 14:14 · coordinator · coordinator: stage 1 re-verify handoffsSun 14:27 · adversary · adversary: stage 1 round 2 re-verification report and scriptsSun 14:29 · coordinator · coordinator: stage 1 reject 2, rework 2 handoffSun 15:00 · builder · builder: stage 1 rework 2 - import accepts large exports (H1), per-user seed saltsSun 15:02 · coordinator · coordinator: stage 1 round 3 handoffsSun 15:19 · adversary · adversary: stage 1 round 3 re-verification report and scriptsSun 15:21 · coordinator · coordinator: stage 1 accepted; copy stage-1 to stage-2Sun 15:21 · coordinator · coordinator: stage 2 analyst handoffSun 16:06 · analyst · analyst: stage 2 coverage matrix, API and browser acceptance checksSun 16:06 · coordinator · coordinator: stage 2 builder handoffSun 16:27 · builder · builder: stage 2 - wallet screens and payment authorizationsSun 16:33 · builder · builder: stage 2 - /login and /signup always show their formSun 16:37 · coordinator · coordinator: stage 2 attack/verify handoffsSun 17:00 · adversary · adversary: stage 2 attack report and scriptsSun 17:02 · coordinator · coordinator: stage 2 accepted; copy stage-2 to stage-3Sun 17:02 · coordinator · coordinator: stage 3 analyst handoffSun 21:14 · coordinator · coordinator: resend stage 3 analyst handoffSun 21:37 · analyst · analyst: stage 3 coverage matrix and acceptance checksSun 21:38 · coordinator · coordinator: stage 3 builder handoffSun 21:48 · builder · builder: stage 3 - statements, corrections and historical balancesSun 21:52 · coordinator · coordinator: stage 3 attack/verify handoffsSun 22:48 · adversary · adversary: stage 3 attack report and scriptsSun 23:28 · coordinator · coordinator: relay stage 3 attack report to gateSun 23:30 · coordinator · coordinator: stage 3 reject 1, rework handoffSun 23:35 · builder · builder: stage 3 rework 1 - O(1) snapshots, seeded closed holds, RFC 3339 forms (K1-K3)Sun 23:39 · coordinator · coordinator: stage 3 re-verify handoffsMon 00:26 · coordinator · coordinator: resend stage 3 round 2 adversary handoffMon 00:41 · adversary · adversary: stage 3 round 2 re-verification report and scriptsMon 00:59 · coordinator · coordinator: stage 3 accepted (owner decision); copy stage-3 to stage-4Mon 00:59 · coordinator · coordinator: stage 4 analyst handoffMon 00:59 · coordinator · coordinator: stage 3 gate ACCEPT recordedMon 01:16 · analyst · analyst: stage 4 coverage matrix and acceptance checksMon 01:17 · coordinator · coordinator: stage 4 builder handoffMon 01:22 · builder · builder: stage 4 - refunds, correction batches, snapshots across importMon 01:27 · coordinator · coordinator: stage 4 attack/verify handoffsMon 01:32 · gate · gate: stage 4 provisional verdict for 7cd430a (adversary report pending)Mon 18:43 · adversary · adversary: stage 4 attack report and scriptsMon 18:44 · coordinator · coordinator: stage 4 attack report receivedMon 18:44 · coordinator · coordinator: all four stages accepted; final stage log
gate REJECTgate ACCEPThuman message (5)seat commithatched = stalls, time compressed

Every human word, on the record

0.2%of 2,312 room messages were human
220human words after the dispatch
0technical instructions
~9 hworking time for 4 stages; stalls shown, not hidden
#When (CDT)Trigger, visible in the roomWhat the band did next
1Oct 4 03:04the dispatch: task, specs, stance (737 words)stage-1 analysis committed 22 min later
2Oct 4 13:12builder: "You've hit your session limit" → resume note, 53 wordssame handoff re-sent; stage 1 built 18 min later
3Oct 4 21:14analyst: "You've hit your session limit" → resume note, 54 wordsstage-3 analysis committed 23 min later
4Oct 4 23:28adversary committed its report but never messaged the gate → 51 wordsreport relayed; the gate REJECTED on its own evidence
5Oct 5 00:58same missed handoff in round 2 → owner acceptance, 62 wordsthe gate issued its own ACCEPT one minute later

Remove any note and the code does not change, only when it was written. Each one maps to a generic fix (watchdog after usage limits; coordinator and gate check the repository for an overdue report) that would make the next run one message. Details: FACTORY.md §6.

Work was shared

adversary23328%
builder20625%
gate16820%
analyst14718%
coordinator8010%

Seat turns from each seat's own Claude Code session log. No seat carries the run.

What review caught

StageDefectFound byOutcome
1Crash (heap exhausted) under 50 concurrent large requestsadversary, reproduced by gateREJECT → fixed
1Large bodies stalled the server past the 5 s budgetadversary, reproduced by gateREJECT → fixed
1Over-long idempotency key: 400 instead of 422adversary, reproduced by gateREJECT → fixed
1The crash fix made the service refuse its own export after ~28,000 paymentsadversary round 2, gateREJECT → fixed → ACCEPT
3Statement snapshots leaked memory until the service diedadversary, reproduced by gateREJECT → fixed
3Expired seeded hold disagreed between historical and current viewsadversary, reproduced by gateREJECT → fixed
3Valid RFC 3339 forms (lowercase t/z, leap second) rejectedadversary, reproduced by gateREJECT → fixed → ACCEPT

Check it yourself