Invoke:
/feature-preflight · Side effects: read-only · Writes: nothinggh/az, or a dirty branch, discovered three phases in. This phase
checks the environment once, up front, and reports every gap together.
Checks
- Config shape —
shipflow.config.mdexists and has all 9 expected sections. - Standing context —
product.mdpresent ifcontext.require_product_doc: true. - Tracker MCP connectivity (tracker mode only) — a minimal read through the connected MCP server for the configured provider.
- Code-host CLI auth —
gh auth statusoraz account show, percode_host.host. - Git working tree —
git status --porcelainon every repo in scope; dirty/mid-rebase is a warning, not automatically a blocker. - Polyrepo reachability — every
repos[].pathexists locally as a checked-out working tree. - Workspace hygiene —
.shipflow/is present in.gitignore.
Verdict
READY (warnings noted but nothing blocking) or BLOCKED — with the exact fix for each blocker (gh auth login, clone a missing repo, add .shipflow/ to .gitignore, …). The
orchestrator runs this before phase 1 and does not proceed while BLOCKED.