Quality at Scale
Slash command: /scale
Templates: reference.md · Examples: examples.md
Produce N units at the same quality bar as one hand-crafted gold unit.
Medium-agnostic. Volume without uniqueness and craft parity is FAILURE.
Core principles (non-negotiable)
- Gold first — freeze one verified exemplar before bulk
- Same bar at N — unit #N gets the same craft as unit #1
- Uniqueness > volume — refuse count-only done
- Unit bank before invent-on-the-fly — specs exist before generation
- Waves, not floods — verify each wave before the next
- Calibrate after wave 1 — continue / shrink / STOP
- Quarantine, never hard-delete — failures logged with reason
- Stop on collapse — drift, twins, or craft drop → halt and fix
- Done requires evidence — ledger + stratified sample + reports
- Refuse unscalable huge N — no scalable path → propose feasible N/path
- Harness bulk, don't dump — a generator script without per-wave sensors is FORBIDDEN (see Bulk harness)
Bulk harness (1→N collapse)
Failure mode this skill exists to kill: unit #1 is careful and good; at N the agent writes a script, runs it once, and ships sludge. That is not “tiredness” — the verify loop disappeared.
| Rule |
Requirement |
| Generation may be dumb/fast |
OK to use bulk generator scripts or CLIs for volume |
| Acceptance may never be |
Same verify method as gold, every wave |
| Script legality |
Bulk script/CLI is legal only if it emits verify artifacts (scores, frames, diffs, exit codes) that the parent checks before the next wave |
| Wave gate |
After every wave: medium verify on stratified sample → ledger → then continue / shrink / STOP |
| Sensory media |
Video / UI / audio / SVG samples → invoke /reviewresults (wave mode) before marking the wave done |
| End sensor alone ≠ enough |
Final /reviewresults on one file does not excuse skipping wave gates across N units |
| Done |
Ledger done + wave reports + sample evidence — never “script exited 0” or file count == N |
Auto-REFUSE / auto-STOP: “generate 1000 then review once”; “eyeball a couple”; lowering craft mid-batch to hit a number; marking done without SCALE_LEDGER.jsonl done entry.
When active
Activate on /scale, or when the request implies N ≥ 10 unique deliverables of any medium.
Say once: “Running quality-at-scale protocol.”
Do not assume SVG / Three.js / PECS / any visual stack. Detect medium from the task.
Protocol checklist
SCALE PROGRESS:
- [ ] 0. Preflight (medium, execution path, budget, gold, unit bank, axes, wave plan)
- [ ] 1. Gold locked + verified with medium's verify method
- [ ] 2. Quality contract written
- [ ] 3. Ledger started (SCALE_LEDGER.jsonl)
- [ ] 4. Wave 1 produced
- [ ] 5. Calibration PASS (or shrink/STOP handled)
- [ ] 6. Later waves + verify + quarantine as needed
- [ ] 7. Done-evidence complete + ledger `done` entry
0. PREFLIGHT
Collect
- Medium — code | docs | tests | ui | data | prompts | configs | visuals | research | other
- N — target unique units
- Global spec — what the set must satisfy
- Unit-spec source — outline/scenario/schema/topic bank, or “build bank first”
- Execution path — Cursor only, or named project-approved bulk CLI/script/engine
- Budget — if paid/quota path, ask and wait for ack
Execution routing (medium-agnostic)
| Role |
Who |
| Gold + verify |
Always Cursor (full craft + medium verify method) |
| Bulk generation |
Project-approved engines/CLIs/scripts when named; else Cursor waves |
| Huge N, no scalable path |
REFUSE — propose feasible N or path |
Cursor frontier is for gold, calibration, verify, and modest high-craft waves — not silent dump volume when a bulk path exists.
Wave size defaults (adjust by craft intensity):
| Target N |
Default wave |
| ≤ 100 |
5–25 |
| 101–1000 |
25–100 |
| > 1000 |
50–500 only with scalable bulk path; else refuse |
Gold lock
| Source |
Action |
| User has a winner |
Path + 5–10 why-it-wins traits |
| No winner |
Craft 1 premium unit; verify; confirm before scaling |
| Prior batch was sludge |
Do not scale that process — fix craft, re-lock |
Unit bank (before generate)
One row per planned unit (schema in reference.md):
id, title/spec, medium, distinguishing_features
diversity_axis_intents (values for the chosen 3–7 axes)
verify_method
Rules:
- Bank ≥ N (or wave-chunked for huge N, uniqueness vs prior ledger)
- No inventing units on the fly mid-wave without appending bank rows first
- Two units sharing all diversity-axis intents = duplicate → reject/merge
Diversity axes (pick 3–7 for this medium)
Designed variety — not RNG. Starter lists in reference.md. Examples:
| Medium |
Example axes |
| Code |
API shape, error paths, deps, sync/async, statefulness, side effects |
| Docs |
Audience, depth, structure, tone, example density, prerequisites |
| Tests |
Scenario class, input class, failure mode, boundary, concurrency |
| UI |
Layout, state, density, theme, interaction, viewport, a11y |
| Data |
Schema variant, edge case, nullness, scale, locale, distribution |
| Prompts |
Persona, task class, constraints, output shape, difficulty |
| Configs |
Environment, flags, region, tenant, version, policy |
| Visuals |
Camera, composition, silhouette, palette, lighting, motion |
| Research |
Domain, source tier, recency, methodology, scope |
Auto-FAIL: ≥3 units share the same full axis-intent set; rename/recolor/copy-paste twins; template paste under new titles.
1. Quality contract
Write SCALE_CONTRACT.md. Mirror gold — never a lowered bulk bar.
Minimum: fidelity-to-spec, craft bar, uniqueness, technical gates, verify method, stop conditions (sample FAIL > 20% → halt; twin/axis-collision rate rising → halt).
2. Produce a wave
- Briefs from unit bank, not improvised spam
- Aim at gold craft, not throughput
- Disjoint output paths if swarming
- Route bulk to named approved engines when present
3. CALIBRATION (after wave 1, before wave 2)
Sample ≥ 5 (or all if wave < 5). Score each vs gold (0–3 per dim; gold = 3/3/3):
- Fidelity-to-spec — satisfies unit + global spec?
- Craft-parity-vs-gold — structure, polish, conventions match gold?
- Uniqueness-vs-siblings — differs on declared diversity axes?
Verdict:
- ≥90% of sample at 3/3/3 and none <2 on uniqueness → continue
- 1–2 WEAK → shrink next wave 50%, tighten brief, re-calibrate
- Collapse (≥3 weak, or >10% uniqueness fail) → STOP; revise bank/axes; ask before more spend
Re-calibrate every wave until 2 consecutive clean waves, then every 3rd wave (plus on any collapse signal).
4. Verify before “wave done”
Structural/file counts alone are never enough. Wave done without verify = harness failure.
- Run the medium’s verify method on the wave (see matrix below)
- Stratified sample across diversity axes (edges + random + suspicious):
- wave ≤ 25 → ≥ 5 (or all)
- 26–100 → ≥ 10
100 → max(15, 10%)
- Always keep gold as a control reference
- For video / ui / audio / svg (and packs of those): run
/reviewresults --mode wave on the stratified sample set (or each sampled deliverable). Append paths of .reviews\ reports to the wave report + ledger wave_review entry
- Write
SCALE_WAVE_REPORT.md with PASS / WEAK / FAIL
- Sample FAIL rate > 20% vs gold → STOP (same as contract stop conditions)
| Medium |
Verify method |
| Code |
tests + typecheck + review vs gold |
| Docs |
Read + structural/spec diff vs gold |
| Tests |
run + coverage/assertion quality |
| UI |
/reviewresults --mode wave (screenshot matrix + Read) |
| Data |
schema validate + uniqueness/edge coverage |
| Prompts |
eval on held-out cases + diff vs gold |
| Configs |
schema validate + dry-run |
| Visuals |
render + inspect + uniqueness; pack samples → /reviewresults --mode wave when sensory |
| Video |
/reviewresults --mode wave on stratified sample units |
| Audio |
/reviewresults --mode wave (loudness + probe + optional waveform Read) |
| Research |
source check + claim–evidence pairing |
On FAIL: quarantine, fix process — do not start the next wave.
5. Quarantine (not delete)
Near-dupes / verify fails → quarantine/<run_id>/, ledger quarantine entry.
Quarantined units do not count toward N; regenerate later.
6. Subagent / swarm
- Parent owns ledger, gold, calibration, final verify
- Workers get: gold path, unit-bank slice, diversity intents, disjoint output prefix, quarantine-not-delete contract
- Workers return
{id, path, self_check} — self-check is not final
- Parent runs medium verify + uniqueness before accept
7. Ledger
Append-only SCALE_LEDGER.jsonl in the work folder.
Types: meta · unit_bank · wave · calibration · quarantine · done
(Schema in reference.md.)
Resume: if no done, continue from last wave/calibration. Never re-do gold.
8. DONE-DEFINITION
All required:
- N live units (quarantine excluded)
- Unit-bank rows consumed for shipped units
- Every completed wave has calibration; no ignored
stop
- Every sensory wave has a ledger
wave_review (or equivalent logged medium verify) before the next wave
- Final stratified sample (5% of N, min 5, max 50) verified with medium method — craft parity + uniqueness hold
- No cluster of ≥3 units sharing full diversity-axis intent set
- Quarantine logged if any failures
- Ledger
done with evidence: n_shipped, n_quarantined, sample_ids, sample_verdicts, waves_run, calibrations, wave_reviews, medium, review_paths
- Project AGENTS.md / stricter domain rules honored when present
Missing any → NOT DONE. “Script exited 0” / file count == N → NOT DONE.
Anti-patterns (forbidden)
- File/row count == N ⇒ done
- Shared template + different titles
- Version-suffix spam / redesign loops to fake uniqueness
- Skipping medium verify because a structural count passed
- Lowering the bar mid-batch to hit a number
- One giant wave
- Hard-deleting rejects
- Assuming the task is visual/SVG by default
- Burning frontier tokens on dump volume when a named bulk path exists
- Script-and-ship — generator/CLI with no per-wave sensors or ledger
- Review-once-at-end for N≥10 sensory units (skips wave harness)
- Claiming done because “the script finished” / exit code 0
Relation to other tools
| Need |
Use |
| Outcome contract |
/goal |
| Autonomous until criteria |
/goal-loop |
| Parallel workers |
/swarm (parent owns verify) |
| One deliverable evidence review |
/reviewresults |
| Wave / bulk sample review |
/reviewresults --mode wave |
| Many unique items, gold bar held |
/scale |
Domain appendix — visual flood lessons (examples only)
Not the scope of this skill — cautionary collapse modes that also apply to code/docs/tests:
- batch-500 — structural size/path-count passed; vision failed (shared abstract template). Gates that ignore medium verify never prove done.
- ~17k near-copies — version loops + shared silhouettes under new names. Uniqueness > volume; quarantine similars; do not hard-delete. For Three.js projects, honor
THREEJS_MAX_VERSION_LAPS=0 when that project rule exists.
- Giant same-looking floods without a unit bank or diversity axes.
Visuals remain one medium among many (routing/axes/verify in the tables above).
1---2name: quality-at-scale3description: Enforces gold-bar volume across any medium: one locked exemplar, a unit bank, 3-7 diversity axes, wave calibration, SCALE_LEDGER.jsonl, quarantine-not-delete, and stratified done-evidence. Trigger on /scale, N>=10 unique items, or mass-create dumps. Never script-and-ship, review-once-at-end, or mark done from file count. Distinct from one-deliverable /better polish.4---5
6# Quality at Scale
7
8**Slash command:** `/scale`
9**Templates:** [reference.md](reference.md) · **Examples:** [examples.md](examples.md)
10
11> Produce N units at the **same quality bar** as one hand-crafted gold unit.
12> Medium-agnostic. Volume without uniqueness and craft parity is FAILURE.
13
14## Core principles (non-negotiable)
15
161. **Gold first** — freeze one verified exemplar before bulk
172. **Same bar at N** — unit #N gets the same craft as unit #1
183. **Uniqueness > volume** — refuse count-only done
194. **Unit bank before invent-on-the-fly** — specs exist before generation
205. **Waves, not floods** — verify each wave before the next
216. **Calibrate after wave 1** — continue / shrink / STOP
227. **Quarantine, never hard-delete** — failures logged with reason
238. **Stop on collapse** — drift, twins, or craft drop → halt and fix
249. **Done requires evidence** — ledger + stratified sample + reports
2510. **Refuse unscalable huge N** — no scalable path → propose feasible N/path
2611. **Harness bulk, don't dump** — a generator script without per-wave sensors is FORBIDDEN (see Bulk harness)
27
28## Bulk harness (1→N collapse)
29
30**Failure mode this skill exists to kill:** unit #1 is careful and good; at N the agent writes a script, runs it once, and ships sludge. That is not “tiredness” — the verify loop disappeared.
31
32| Rule | Requirement |
33|------|-------------|
34| Generation may be dumb/fast | OK to use bulk generator scripts or CLIs for volume |
35| Acceptance may never be | Same verify method as gold, every wave |
36| Script legality | Bulk script/CLI is legal **only if** it emits verify artifacts (scores, frames, diffs, exit codes) that the parent checks before the next wave |
37| Wave gate | After every wave: medium verify on stratified sample → ledger → then continue / shrink / STOP |
38| Sensory media | Video / UI / audio / SVG samples → invoke **`/reviewresults`** (wave mode) before marking the wave done |
39| End sensor alone ≠ enough | Final `/reviewresults` on one file does **not** excuse skipping wave gates across N units |
40| Done | Ledger `done` + wave reports + sample evidence — never “script exited 0” or file count == N |
41
42**Auto-REFUSE / auto-STOP:** “generate 1000 then review once”; “eyeball a couple”; lowering craft mid-batch to hit a number; marking done without `SCALE_LEDGER.jsonl` `done` entry.
43
44## When active
45
46Activate on `/scale`, or when the request implies **N ≥ 10** unique deliverables of any medium.
47Say once: **“Running quality-at-scale protocol.”**
48
49Do **not** assume SVG / Three.js / PECS / any visual stack. Detect medium from the task.
50
51## Protocol checklist
52
53```
54SCALE PROGRESS:
55- [ ] 0. Preflight (medium, execution path, budget, gold, unit bank, axes, wave plan)
56- [ ] 1. Gold locked + verified with medium's verify method
57- [ ] 2. Quality contract written
58- [ ] 3. Ledger started (SCALE_LEDGER.jsonl)
59- [ ] 4. Wave 1 produced
60- [ ] 5. Calibration PASS (or shrink/STOP handled)
61- [ ] 6. Later waves + verify + quarantine as needed
62- [ ] 7. Done-evidence complete + ledger `done` entry
63```
64
65## 0. PREFLIGHT
66
67### Collect
68
691. **Medium** — code | docs | tests | ui | data | prompts | configs | visuals | research | other
702. **N** — target unique units
713. **Global spec** — what the set must satisfy
724. **Unit-spec source** — outline/scenario/schema/topic bank, or “build bank first”
735. **Execution path** — Cursor only, or named project-approved bulk CLI/script/engine
746. **Budget** — if paid/quota path, ask and wait for ack
75
76### Execution routing (medium-agnostic)
77
78| Role | Who |
79|------|-----|
80| Gold + verify | Always Cursor (full craft + medium verify method) |
81| Bulk generation | Project-approved engines/CLIs/scripts **when named**; else Cursor waves |
82| Huge N, no scalable path | **REFUSE** — propose feasible N or path |
83
84Cursor frontier is for gold, calibration, verify, and modest high-craft waves — not silent dump volume when a bulk path exists.
85
86Wave size defaults (adjust by craft intensity):
87
88| Target N | Default wave |
89|----------|--------------|
90| ≤ 100 | 5–25 |
91| 101–1000 | 25–100 |
92| > 1000 | 50–500 **only** with scalable bulk path; else refuse |
93
94### Gold lock
95
96| Source | Action |
97|--------|--------|
98| User has a winner | Path + 5–10 why-it-wins traits |
99| No winner | Craft **1** premium unit; verify; **confirm before scaling** |
100| Prior batch was sludge | Do not scale that process — fix craft, re-lock |
101
102### Unit bank (before generate)
103
104One row per planned unit (schema in reference.md):
105
106- `id`, `title`/`spec`, `medium`, `distinguishing_features`
107- `diversity_axis_intents` (values for the chosen 3–7 axes)
108- `verify_method`
109
110Rules:
111
112- Bank ≥ N (or wave-chunked for huge N, uniqueness vs prior ledger)
113- No inventing units on the fly mid-wave without appending bank rows first
114- Two units sharing **all** diversity-axis intents = duplicate → reject/merge
115
116### Diversity axes (pick 3–7 for this medium)
117
118Designed variety — not RNG. Starter lists in reference.md. Examples:
119
120| Medium | Example axes |
121|--------|----------------|
122| Code | API shape, error paths, deps, sync/async, statefulness, side effects |
123| Docs | Audience, depth, structure, tone, example density, prerequisites |
124| Tests | Scenario class, input class, failure mode, boundary, concurrency |
125| UI | Layout, state, density, theme, interaction, viewport, a11y |
126| Data | Schema variant, edge case, nullness, scale, locale, distribution |
127| Prompts | Persona, task class, constraints, output shape, difficulty |
128| Configs | Environment, flags, region, tenant, version, policy |
129| Visuals | Camera, composition, silhouette, palette, lighting, motion |
130| Research | Domain, source tier, recency, methodology, scope |
131
132**Auto-FAIL:** ≥3 units share the same full axis-intent set; rename/recolor/copy-paste twins; template paste under new titles.
133
134## 1. Quality contract
135
136Write `SCALE_CONTRACT.md`. Mirror gold — never a lowered bulk bar.
137
138Minimum: fidelity-to-spec, craft bar, uniqueness, technical gates, verify method, stop conditions (sample FAIL > 20% → halt; twin/axis-collision rate rising → halt).
139
140## 2. Produce a wave
141
142- Briefs from unit bank, not improvised spam
143- Aim at gold craft, not throughput
144- Disjoint output paths if swarming
145- Route bulk to named approved engines when present
146
147## 3. CALIBRATION (after wave 1, before wave 2)
148
149Sample ≥ 5 (or all if wave < 5). Score each vs gold (0–3 per dim; gold = 3/3/3):
150
1511. **Fidelity-to-spec** — satisfies unit + global spec?
1522. **Craft-parity-vs-gold** — structure, polish, conventions match gold?
1533. **Uniqueness-vs-siblings** — differs on declared diversity axes?
154
155Verdict:
156
157- ≥90% of sample at 3/3/3 and none <2 on uniqueness → continue
158- 1–2 WEAK → shrink next wave **50%**, tighten brief, re-calibrate
159- Collapse (≥3 weak, or >10% uniqueness fail) → **STOP**; revise bank/axes; ask before more spend
160
161Re-calibrate every wave until 2 consecutive clean waves, then every 3rd wave (plus on any collapse signal).
162
163## 4. Verify before “wave done”
164
165Structural/file counts alone are **never** enough. **Wave done without verify = harness failure.**
166
1671. Run the medium’s verify method on the wave (see matrix below)
1682. Stratified sample across diversity axes (edges + random + suspicious):
169 - wave ≤ 25 → ≥ 5 (or all)
170 - 26–100 → ≥ 10
171 - > 100 → max(15, 10%)
1723. Always keep gold as a control reference
1734. For **video / ui / audio / svg** (and packs of those): run **`/reviewresults --mode wave`** on the stratified sample set (or each sampled deliverable). Append paths of `.reviews\` reports to the wave report + ledger `wave_review` entry
1745. Write `SCALE_WAVE_REPORT.md` with PASS / WEAK / FAIL
1756. Sample FAIL rate **> 20%** vs gold → **STOP** (same as contract stop conditions)
176
177| Medium | Verify method |
178|--------|----------------|
179| Code | tests + typecheck + review vs gold |
180| Docs | Read + structural/spec diff vs gold |
181| Tests | run + coverage/assertion quality |
182| UI | `/reviewresults --mode wave` (screenshot matrix + Read) |
183| Data | schema validate + uniqueness/edge coverage |
184| Prompts | eval on held-out cases + diff vs gold |
185| Configs | schema validate + dry-run |
186| Visuals | render + inspect + uniqueness; pack samples → `/reviewresults --mode wave` when sensory |
187| Video | `/reviewresults --mode wave` on stratified sample units |
188| Audio | `/reviewresults --mode wave` (loudness + probe + optional waveform Read) |
189| Research | source check + claim–evidence pairing |
190
191On FAIL: quarantine, fix process — do **not** start the next wave.
192
193## 5. Quarantine (not delete)
194
195Near-dupes / verify fails → `quarantine/<run_id>/`, ledger `quarantine` entry.
196Quarantined units **do not** count toward N; regenerate later.
197
198## 6. Subagent / swarm
199
200- **Parent** owns ledger, gold, calibration, final verify
201- Workers get: gold path, unit-bank slice, diversity intents, **disjoint** output prefix, quarantine-not-delete contract
202- Workers return `{id, path, self_check}` — self-check is **not** final
203- Parent runs medium verify + uniqueness before accept
204
205## 7. Ledger
206
207Append-only `SCALE_LEDGER.jsonl` in the work folder.
208
209Types: `meta` · `unit_bank` · `wave` · `calibration` · `quarantine` · `done`
210(Schema in reference.md.)
211
212**Resume:** if no `done`, continue from last wave/calibration. Never re-do gold.
213
214## 8. DONE-DEFINITION
215
216All required:
217
2181. N live units (quarantine excluded)
2192. Unit-bank rows consumed for shipped units
2203. Every completed wave has calibration; no ignored `stop`
2214. Every sensory wave has a ledger `wave_review` (or equivalent logged medium verify) before the next wave
2225. Final stratified sample (5% of N, min 5, max 50) verified with medium method — craft parity + uniqueness hold
2236. No cluster of ≥3 units sharing full diversity-axis intent set
2247. Quarantine logged if any failures
2258. Ledger `done` with evidence: `n_shipped`, `n_quarantined`, `sample_ids`, `sample_verdicts`, `waves_run`, `calibrations`, `wave_reviews`, `medium`, `review_paths`
2269. Project AGENTS.md / stricter domain rules honored when present
227
228Missing any → **NOT DONE**. “Script exited 0” / file count == N → **NOT DONE**.
229
230## Anti-patterns (forbidden)
231
232- File/row count == N ⇒ done
233- Shared template + different titles
234- Version-suffix spam / redesign loops to fake uniqueness
235- Skipping medium verify because a structural count passed
236- Lowering the bar mid-batch to hit a number
237- One giant wave
238- Hard-deleting rejects
239- Assuming the task is visual/SVG by default
240- Burning frontier tokens on dump volume when a named bulk path exists
241- **Script-and-ship** — generator/CLI with no per-wave sensors or ledger
242- **Review-once-at-end** for N≥10 sensory units (skips wave harness)
243- Claiming done because “the script finished” / exit code 0
244
245## Relation to other tools
246
247| Need | Use |
248|------|-----|
249| Outcome contract | `/goal` |
250| Autonomous until criteria | `/goal-loop` |
251| Parallel workers | `/swarm` (parent owns verify) |
252| One deliverable evidence review | `/reviewresults` |
253| Wave / bulk sample review | `/reviewresults --mode wave` |
254| Many unique items, gold bar held | **`/scale`** |
255
256## Domain appendix — visual flood lessons (examples only)
257
258Not the scope of this skill — cautionary collapse modes that also apply to code/docs/tests:
259
2601. **batch-500** — structural size/path-count passed; vision failed (shared abstract template). **Gates that ignore medium verify never prove done.**
2612. **~17k near-copies** — version loops + shared silhouettes under new names. **Uniqueness > volume**; quarantine similars; do not hard-delete. For Three.js projects, honor `THREEJS_MAX_VERSION_LAPS=0` when that project rule exists.
2623. Giant same-looking floods without a unit bank or diversity axes.
263
264Visuals remain **one medium** among many (routing/axes/verify in the tables above).