33 lines
1.5 KiB
Markdown
33 lines
1.5 KiB
Markdown
# Implementation Plan
|
|
|
|
1. Add area output/config normalization and command entrypoints for the native
|
|
compiler, preserving existing stage behavior and paths.
|
|
2. Implement a shared OSM road parser and canonical road/endpoints model with
|
|
source provenance, explicit versus inferred properties, and stable IDs.
|
|
3. Implement v1 override schema, validation, load/apply behavior, atomic save,
|
|
and focused unit tests.
|
|
4. Implement projected road segment geometry, supported T/cross junction
|
|
detection, native GeoJSON artifact emission, diagnostics, and comparison
|
|
summary.
|
|
5. Implement a dependency-free local workbench server and browser UI with
|
|
selection, provenance display, v1 parameter/topology editing, explicit save,
|
|
compile/reload, and error states.
|
|
6. Add native compiler tests using focused fixtures plus nantaizi analysis;
|
|
run existing relevant Node tests to confirm legacy behavior remains intact.
|
|
7. Compare nantaizi and at least one supplied problematic OSM sample. Record
|
|
metrics, unsupported cases, and follow-up work in task research.
|
|
|
|
## Validation
|
|
|
|
```bash
|
|
npm run road:compile -- --config config/areas/nantaizi-lake-innovation-valley.json
|
|
npm run road:workbench -- --config config/areas/nantaizi-lake-innovation-valley.json
|
|
npm run test:build-stages
|
|
npm run test:preflight
|
|
npm run test:preview-assets
|
|
```
|
|
|
|
Browser validation includes loading the workbench, editing a road parameter,
|
|
saving, verifying the override file, recompiling, reloading, and confirming
|
|
provenance identifies the saved override.
|