engagement-scopinglisted
Install: claude install-skill synaptiai/synapti-marketplace
# Engagement Scoping
Phase 0 of every dossier run. Establishes what this run is, what it may touch, and what it may do — before it reads a single source file.
## Iron Law
**RESOLVE SCOPE BEFORE READING ANYTHING. The action ceiling and the file set are fixed in Phase 0 and never widen mid-run.**
A run that discovers a reason to read one more directory, execute one more command, or write one more file has stopped being auditable. Record the need as an `AQ-####` row and finish inside the ceiling you started with.
## Resolution order
Every value comes from `bin/dossier-resolve-config.sh`, never from reading a settings file directly — reading one directly skips four layers of the cascade. See `references/config-resolution.md`.
```bash
OUTPUT_ROOT=$(bin/dossier-resolve-config.sh --default "docs/dossier" dossier.project.outputRoot)
MODE=$(bin/dossier-resolve-config.sh --default "full" dossier.engagement.deliveryMode)
bin/dossier-validate-config.sh || echo "config findings above must be resolved before drafting"
```
Validate before scoping. A config that fails `dossier-validate-config.sh` produces a package whose containment guarantees do not hold, and finding that out in Phase 5 wastes the whole run.
## The twelve inputs
| Input | Config key | When absent |
|---|---|---|
| Project name | `project.name` | Blocking in `full`/`targeted`. Ask — never infer, because an inferred product name propagates into public documents |
| Mission | `project.mission` | Record `U`. Derive wh