Commit Graph

32 Commits

Author SHA1 Message Date
67e67e66bf chore: record direct edit manifest progress 2026-08-27 12:19:54 +08:00
ab63d23896 feat: generate direct edit handle manifest 2026-08-27 12:18:11 +08:00
3297d0c97a feat: insert direct edit constraint solver stage
Adds resolveDirectEditConstraints between compileRoadModel and
compileGeometry, per the parent design's data flow. The stage is an
identity transform until the individual constraint kinds land: it
returns empty road profiles, junction plans and handle manifest, so
compileGeometry's geometry code is untouched and output stays
byte-identical.

Constraint planning is separated from solving up front. Only `exact`
and `recheck` constraints may reach the solver; `disabled`,
`pending`, `conflicted` and `stale` are reported as unapplied with a
reason. SOLVED_KINDS starts empty and grows one entry per kind, so a
partially delivered solver reports what it skipped instead of
publishing half-solved geometry.

diagnostic() moves to src/compile/diagnostics.js so the solver can
share the compiler's diagnostic shape without depending on fs, which
would break the pure-function boundary that lets preview, the full
compile and the CLI export share one implementation.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-27 10:29:45 +08:00
c5e762e1a9 chore: record journal 2026-08-27 09:06:40 +08:00
98e8a770a3 chore(task): archive 08-26-direct-edit-documents 2026-08-27 09:01:21 +08:00
ba8eaba9d9 feat: compile revisions from area config snapshots 2026-08-26 18:08:55 +08:00
c0c8a16dd4 feat: add immutable road revision storage 2026-08-26 17:54:38 +08:00
35002371ae feat: add native road edits document validation 2026-08-26 17:46:02 +08:00
93f09e399e chore(road-editor): plan direct-edit task tree and add client test infra
Planning: parent design.md becomes the single authoritative contract
(constraint model with 6 kinds, handle manifest, coordinate/unit
layering, preview sequencing, storage layout and lazy migration, area
config snapshot, API contract). Work is split into four independently
verifiable child tasks with per-step gates and rollback points.

Test infra: pin vitest 4.1.11, add test:client:unit for client pure
logic, extend prettier globs to root *.ts so vitest.config.ts is checked.

Add .gitignore: the repo had none, so inputs/, outputs/, workbench-data/
and the client build output were untracked rather than ignored.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-26 17:33:42 +08:00
7dc7ede2b8 chore(task): archive 08-26-workbench-selection-save-fix 2026-08-26 15:39:18 +08:00
02c3a4d3e4 fix: avoid map refresh on road selection 2026-08-26 15:39:17 +08:00
89e0a9ce37 chore(task): archive 00-bootstrap-guidelines 2026-08-26 15:29:12 +08:00
faaa33717f docs: add frontend development guidelines 2026-08-26 15:29:11 +08:00
f7601d554e chore(task): archive 08-26-workbench-layer-scene-polish 2026-08-26 15:26:42 +08:00
3c5f39ed73 fix: refine workbench map layers 2026-08-26 15:26:41 +08:00
2f2bd6cbf0 chore(task): archive 08-26-scene-preview-fix 2026-08-26 15:09:27 +08:00
4133a5244a fix: restore scene preview styles 2026-08-26 15:09:27 +08:00
89b402de7a chore(task): archive 08-26-react-workbench-migration 2026-08-26 15:02:14 +08:00
3ddb33e321 feat: migrate workbench to React 2026-08-26 15:01:07 +08:00
f15e69c868 chore: archive web OSM import task 2026-08-26 14:06:27 +08:00
181e575e1e feat: add web OSM import workflow 2026-08-26 14:05:26 +08:00
81e02c670d feat: export portable native road packages v0.3.0 2026-08-26 11:59:48 +08:00
3b4befb025 fix: preserve native road metadata order v0.2.2 2026-08-26 10:44:17 +08:00
54d77ef09d fix: preserve native road render order v0.2.1 2026-08-26 10:25:08 +08:00
82afafa294 feat: publish native road layer manifest v0.2.0 2026-08-26 09:53:21 +08:00
90400d967f test: add standalone area fixtures v0.1.2 2026-08-26 09:13:44 +08:00
208df9e6af fix: package lane arrow assets v0.1.1 2026-08-25 17:56:55 +08:00
8e79790261 feat: make road compiler standalone v0.1.0 2026-08-25 17:53:49 +08:00
aadd45bcad test: make road compiler fixtures self contained 2026-08-25 17:27:19 +08:00
a2a1fe216a refactor: move road workbench into compiler package 2026-08-25 17:18:49 +08:00
b7a27b96cb refactor: move native road checks into package 2026-08-25 17:15:15 +08:00
eb859c40d5 refactor: move road compiler core into package 2026-08-25 17:12:58 +08:00