wave-drainlisted
Install: claude install-skill LucaDominici/arbiter
# Wave Drain
Drain chooses work; Ship delivers it. Do not create a second lifecycle, reviewer policy,
evidence store, worktree manager, or landing path here.
## 1. Select ready work
List open issues and exclude `blocked`, `needs-human`, `needs-clarification`, and `epic`.
Before selection, require explicit `AC-N` acceptance criteria, non-goals, and affected
files/contracts. Run `scripts/issue-readiness.mjs` when present. Missing evidence or an unavailable
issue source is unknown, so exclude the issue from this wave and record why.
### Phase 0.5 — Harvest the finding spool
Before selection, inspect incidental findings left by earlier work with `arbiter finding list`,
then use `arbiter finding promote` to revalidate, deduplicate, and file ready findings through the
normal issue workflow. A missing or empty spool is a clean no-op.
Worker DONE reports use the `FindingEntry` shape from `src/commands/task-note.ts`; do not invent a
second finding schema. `graphNode` and `auditorHint` are optional; every other field is required:
```json
{
"ts": "2026-06-16T00:00:00.000Z",
"note": "duplicated retry helper",
"kind": "dup",
"severity": "low",
"foundDuring": "#1404",
"file": "src/example.ts",
"line": 120,
"sha": "deadbeefcafef00d",
"graphNode": "src/example.ts#retry",
"fingerprint": "<sha1 of kind+normalizedPath+symbol+normalizedNote>",
"auditorHint": "code-quality"
}
```
## 2. Compose a capability train
Select at most the configured `ship.train.maxChain` or