---
name: design-full-sweep
description: "Composite three-altitude prototype audit over a module. Fans out spec-researcher (triage), journey-auditor, and edge-auditor READ-ONLY, merges their findings across all three altitudes (screen existence · journey continuity · affordance honesty) into one severity-ranked per-module report, then as single writer files backlog rows + design-sync handoffs at ONE checkpoint. Defers prototype micro-edits to /journey-audit and /edge-audit. Usage: /design-full-sweep <ModuleCode… | all>"
argument-hint: "<ModuleCode… | all> (module code(s) per CLAUDE.md §module-map, or all)"
---
> **Specialization:** Read `CLAUDE.md` first and bind every `<…>` placeholder and every "per `CLAUDE.md`" reference from it (module map, workflow registry, prototype location + entry point + file pattern, design-backlog + design-prompts boards, interaction registry, screen registry, QA-report inbox, concurrency cap). This file hard-codes no project value. If a needed value is missing from `CLAUDE.md`, STOP-and-ask. See `SPECIALIZE.md`.

You are the **orchestrator** for a composite three-altitude prototype audit and the **single writer** (Law 3) of everything it files. This command is a **thin router**: it dispatches the same three advisory agents the individual sweeps use — `spec-researcher` (triage mode, screen-existence), `journey-auditor` (between-screen continuity), `edge-auditor` (within-screen affordance honesty) — but READ-ONLY, then merges their findings across all three altitudes and files the actionable rows at a single checkpoint. It **re-implements no audit logic** (that lives in the agents and the `journey-continuity-audit` + `dead-edge-audit` skills) and **applies no prototype micro-edit** (those are deferred). Read the `journey-continuity-audit` and `dead-edge-audit` skills first; their routing tables govern step 5.

## 1. Resolve scope + build the dedup set
Parse `$ARGUMENTS`: module code(s) → those modules; `all` → every module with prototype screens in the screen registry (per `CLAUDE.md`). For each module, from the workflow registry (path per `CLAUDE.md`): its **workflows** (→ spec-researcher) and its **journeys** (→ journey-auditor). From the prototype glob (per `CLAUDE.md §2` design-loop bindings): its **screen files** (→ edge-auditor). Then read the design-backlog board + interaction registry (§ Accepted toasts) now and extract existing IDs + Screen/Module pairs — the **dedup set**. Nothing already tracked gets re-filed.

## 2. Fan out READ-ONLY (concurrent, capped per `CLAUDE.md`)
Per module, dispatch — all advisory, all touch no files:
- one `spec-researcher` in **triage mode** per workflow (the focused screen-coverage prompt from `/design-help`),
- one `journey-auditor` per journey,
- one `edge-auditor` for the module.
Dispatch concurrently across a **global** cap of ≤N (per `CLAUDE.md`; default 8); process one module's three-altitude batch at a time in registry order, queueing the remainder and draining as slots free. Each browser-driven agent uses its own isolated browser per the parallel rules. On failure: retry ≤2 (Law 11), then note the agent as failed in the report and continue — one dead agent never blocks the sweep.

## 3. Merge across altitudes
Collect every agent report into **one** findings ledger per module. Each row carries: `altitude` ∈ {existence, continuity, affordance}; `severity` (the agent's own S1/S2… ranking, normalized); `touches` ∈ {unbuilt, BUILT ✅, graduated}; source agent + evidence pointer (report file · screen:element · edge from→to). Dedup in two passes — against the current boards (a screen already on the backlog is not re-filed), then within-sweep (the same screen surfaced by two altitudes → keep the most actionable row, cross-link the other).

## 4. ■ Single checkpoint — write report, present, then STOP
Write the per-module `DS_<ModuleCode>.md` report (schema below) to the project's QA-report inbox (per `CLAUDE.md`). Present the merged severity-ranked summary inline with each row's altitude, `touches` routing, and proposed disposition. Propose a **filing batch** (default: all S1s across altitudes). Present accepted-toast candidates **separately** — accepting a fire-and-forget toast is a product decision needing explicit sign-off, never a default. **Ask which rows to file. Do not proceed without approval.**

## 5. File the approved rows (single writer — the skills' routing tables)
- **Missing screen (existence)** → design-backlog row (next id per the board's scheme) carrying the splice fields verbatim, then fire the `design-prompt-authoring` skill for its brief; note the suggested lane. (Same as `/design-help` step 4.)
- **Broken edge / new state on an UNBUILT source (continuity/affordance)** → **do NOT apply the micro-edit here.** Record it in the report's **Deferred fixes** section naming the exact follow-up command (`/journey-audit <M>` or `/edge-audit <M>`) that will apply it.
- **Delta touching a BUILT `✅` screen** → file a `design-sync` handoff (classification is design-sync's job); never edit the built source.
- **Graduated screen** → forward-only remediation item for the built side (the interaction-auditor path); never a prototype edit.
- **Accepted fire-and-forget toast** (only on explicit sign-off) → append to the interaction registry § Accepted toasts (`screen · element · justification · date`) AND ensure the sidecar declares `notify-sim`.

## 6. Integrate the paper trail
`PROGRESS.md` activity line (modules swept, agents ok/total, findings by altitude/severity, filed vs deferred vs handed-off); graduate Insights/Lessons; the `DS_<ModuleCode>.md` report is the durable provenance. Leave the individual agents' report files in the approval inbox as evidence.

## 7. Report
Per module: workflows/journeys/screens covered, agents ok/total, findings by altitude + severity, what was filed vs deferred vs handed to design-sync vs accepted, the report file path, and anything awaiting a human.

## Report format — `<QA-inbox>/DS_<ModuleCode>.md`
`DS` = design full-sweep.
```
# DS_<ModuleCode> — design full-sweep, <date>

Scope: workflows <n> · journeys <n> · screens <n>   |   Agents: <ok>/<total> (<failures noted>)

## Findings (severity-ranked, all altitudes)
| # | Sev | Altitude   | Screen / Edge / Affordance | touches   | Finding (1 line) | Disposition |
|---|-----|------------|----------------------------|-----------|------------------|-------------|

## Filed this run
- DB-###  <screen>  (existence)  → design-prompts brief authored
- design-sync handoff: <built screen delta>

## Deferred fixes (run these to apply)
- /journey-audit <M> :  GAP-nn  <from→to edge>
- /edge-audit   <M> :  <screen · element>  toast-only

## Accepted toasts (awaiting or granted sign-off)
- <screen · element · justification>
```

## Concurrency safety
Do NOT run `/design-full-sweep` concurrently with `/build-workflow`, `/build-wave`, `/design-help`, `/journey-audit`, or `/edge-audit` — all are single-writers to the shared design-backlog board / interaction registry, and concurrent writes duplicate rows or corrupt order. Safe windows: before a sweep starts, after a sweep's C1 write completes, or after a wave completes.

## Invariants
- **Read-then-file only** — never applies a prototype micro-edit; the only writes are the report, backlog rows, design-sync handoffs, and (on sign-off) the § Accepted toasts ledger.
- **Delegate, never duplicate** — audit logic stays in the three agents + their skills; this command adds only resolution, cross-altitude merge, and filing.
- **Single writer**, **capped concurrency ≤N** (per `CLAUDE.md`; default 8), **capped autonomy** (2-retry then continue), **module-scoped**, **dedup-before-file**.
