14 lines
851 B
Markdown
14 lines
851 B
Markdown
# Interactive Area Build CLI Implementation Plan
|
|
|
|
1. Extract stage definitions, aliases, canonical ordering, and conflict validation from
|
|
`scripts/build-area.js` into a shared CommonJS module.
|
|
2. Update `build-area.js` to consume the shared resolver without changing non-interactive semantics.
|
|
3. Add `scripts/interactive-build.js` with TTY detection, area discovery, raw-mode selection menus,
|
|
cancellation handling, and child-process delegation to `build-area.js`.
|
|
4. Change `package.json` so `npm run build` calls the new interactive script while `build:area` remains
|
|
unchanged.
|
|
5. Add focused Node tests for stage planning and non-TTY behavior; do not invoke Blender, QGIS, or a
|
|
real area build in tests.
|
|
6. Run syntax checks, the focused tests, existing preflight/preview tests, and manually exercise the
|
|
interactive flow in a TTY.
|