16 KiB
Journal - dingkang (Part 1)
AI development session journal Started: 2026-08-03
Session 1: Initialize Trellis project guidelines
Date: 2026-08-03
Task: Initialize Trellis project guidelines
Branch: main
Summary
Initialized Trellis project scaffolding and replaced the incorrect frontend spec templates with project-specific pipeline, Blender, preview, config, and cross-layer guidance. Verified spec layers, placeholder cleanup, key-contract coverage, and Blender pure Python tests.
Git Commits
| Hash | Message |
|---|---|
4c5981c |
(see git log) |
Status
[OK] Completed
Session 2: Refactor Cesium material export contract
Date: 2026-08-03
Task: Refactor Cesium material export contract
Branch: main
Summary
Moved Cesium material export overrides into catalog-backed material contracts saved as Blender material custom properties. Kept legacy name-table fallback for old .blend files, updated Blender/spec guidance, and verified with unit tests, py_compile, diff check, and parity before/after comparison showing only expected cesium_export blend property diffs.
Git Commits
| Hash | Message |
|---|---|
0635c09 |
(see git log) |
Status
[OK] Completed
Session 3: Archive osmassets refactor plan
Date: 2026-08-03
Task: Archive osmassets refactor plan
Branch: main
Summary
Moved durable conclusions from the temporary osmassets refactor plan into changelog and Trellis specs, removed docs/refactor-plan.md, and verified no live docs/spec references to the deleted plan remain.
Git Commits
| Hash | Message |
|---|---|
6882921 |
(see git log) |
Status
[OK] Completed
Session 4: Extract fountain module
Date: 2026-08-03
Task: Extract fountain module
Branch: main
Summary
Moved fountain assembly from generate_scene.py into blender/osmassets/fountain.py, updated P2 refactor docs, and verified py_compile, 51 pure tests, and Blender/Cesium parity before/after with identical snapshots.
Git Commits
| Hash | Message |
|---|---|
6271055 |
(see git log) |
Status
[OK] Completed
Session 5: Extract building module
Date: 2026-08-03
Task: Extract building module
Branch: main
Summary
Moved building assembly from generate_scene.py into blender/osmassets/building.py, updated P2 refactor docs so only roads remains in generate_scene.py, and verified py_compile, 51 pure tests, and Blender/Cesium parity before/after with identical snapshots.
Git Commits
| Hash | Message |
|---|---|
032922a |
(see git log) |
Status
[OK] Completed
Session 6: Extract road assembly module
Date: 2026-08-03
Task: Extract road assembly module
Branch: main
Summary
Moved Blender road GeoJSON assembly and OSM fallback roads into blender/osmassets/roads.py while preserving road_counts, Layer catalog warnings, scene metadata, and SCENE_DONE output. Verified py_compile, unittest, task validation, and Blender/Cesium parity before/after as identical for both sample areas.
Git Commits
| Hash | Message |
|---|---|
0f3c1ee |
(see git log) |
Status
[OK] Completed
Session 7: Add feature registry dispatch
Date: 2026-08-03
Task: Add feature registry dispatch
Branch: main
Summary
Introduced blender/osmassets/features.py with FeatureHandler and dispatch_ways for ordered OSM way feature dispatch. Converted generate_scene.py water/grass/scrub/tree_row/building branches into registry handlers while keeping material order, counts, road warning behavior, scene metadata, and SCENE_DONE unchanged. Verified py_compile, unittest, task validation, and Blender/Cesium parity before/after as identical for both sample areas.
Git Commits
| Hash | Message |
|---|---|
ff18217 |
(see git log) |
Status
[OK] Completed
Session 8: Clean stale tuft density comment
Date: 2026-08-03
Task: Clean stale tuft density comment
Branch: main
Summary
Cleared stale D3 tuft_density_wave comment debt and updated parity guide known-defect records without changing executable scene generation logic. Verified py_compile, 51 pure tests, and task validation.
Git Commits
| Hash | Message |
|---|---|
f569d45 |
(see git log) |
Status
[OK] Completed
Session 9: Improve Cesium cruise smoothness
Date: 2026-08-03
Task: Improve Cesium cruise smoothness
Branch: main
Summary
Reduced Cesium preview cruise stutter by lowering dense scrub bush nodes in nantaizi from 707 to 266, preserving scrub ground cover, and trimming preview route/follow hot-path overhead without lowering default visual clarity. Verified nantaizi blender/cesium/preview rebuild, node --check, py_compile, 51 pure tests, and task validation.
Git Commits
| Hash | Message |
|---|---|
0d2dc22 |
(see git log) |
Status
[OK] Completed
Session 10: Reject low-poly scrub bush experiment
Date: 2026-08-03
Task: Reject low-poly scrub bush experiment
Branch: main
Summary
Tested user-supplied assets/models/custom/bush_low/bush_low.glb for nantaizi scrub edge bushes. Geometry dropped from 63,762 verts / 67,536 indices to 4,044 / 4,050 and GLB size dropped from 31.96 MB to 27.51 MB with 266 scrub bush nodes unchanged, but user validation found the visual effect unsatisfactory. Restored generate_scene.py to the original default bush asset, archived the task, and recorded the rejected experiment in changelog/spec without adding bush_low to git.
Git Commits
| Hash | Message |
|---|---|
e58a928 |
(see git log) |
Status
[OK] Completed
Session 11: Adopt Shapespark vegetation
Date: 2026-08-03
Task: Adopt Shapespark vegetation
Branch: main
Summary
Adopted split Shapespark low-poly plants for nantaizi trees, scrub bushes, and lawn tufts; toned Cesium foliage export, removed retired vegetation assets/loaders, validated nantaizi blender/cesium/preview.
Git Commits
| Hash | Message |
|---|---|
dbb5705 |
(see git log) |
Status
[OK] Completed
Session 12: Optional GLB compression stage
Date: 2026-08-03
Task: Optional GLB compression stage
Branch: main
Summary
Added an explicit compress stage and GLB compression script for nantaizi WebP review artifacts without replacing the baseline GLB.
Git Commits
| Hash | Message |
|---|---|
7ba8594 |
(see git log) |
Status
[OK] Completed
Session 13: Fix OSM multipolygon buildings
Date: 2026-08-03
Task: Fix OSM multipolygon buildings
Branch: main
Summary
Parsed building multipolygon relations, generated building holes, and respected explicit OSM height for nantaizi relation -65.
Git Commits
| Hash | Message |
|---|---|
95f8458 |
(see git log) |
Status
[OK] Completed
Session 14: Add area diagnostics command
Date: 2026-08-04
Task: Add area diagnostics command
Branch: main
Summary
Added a fast diagnose:area command for OSM structure, building relation health, artifact status, and GLB digest checks; shared area config normalization between build and diagnostics.
Git Commits
| Hash | Message |
|---|---|
d4c3baf |
(see git log) |
Status
[OK] Completed
Session 15: Add GLB stage manifests
Date: 2026-08-04
Task: Add GLB stage manifests
Branch: main
Summary
Added first-version cesium and compress stage manifests under _pipeline/stages, shared manifest helpers, and diagnose:area reporting for missing/stale manifests.
Git Commits
| Hash | Message |
|---|---|
2832383 |
(see git log) |
Status
[OK] Completed
Session 16: Add area quality gate
Date: 2026-08-04
Task: Add area quality gate
Branch: main
Summary
Added a read-only check:area command backed by shared area diagnostics, documented the quality-gate failure policy, and verified nantaizi pass plus controlled missing-output failure.
Git Commits
| Hash | Message |
|---|---|
7fcc4ee |
(see git log) |
Status
[OK] Completed
Session 17: Add full stage manifests
Date: 2026-08-04
Task: Add full stage manifests
Branch: main
Summary
Extended stage manifests across intermediates, reimport, blender, and preview; added alternate ownership handling and validated the complete nantaizi pipeline.
Git Commits
| Hash | Message |
|---|---|
5874cf9 |
(see git log) |
Status
[OK] Completed
Session 18: Add OSM area preflight
Date: 2026-08-04
Task: Add OSM area preflight
Branch: main
Summary
Added the read-only preflight:area command, a successful preflight manifest, shared OSM structural checks, and quality-gate freshness validation. OSM diagnostics now ignore action=delete historical objects; verified only nantaizi with unit fixtures, preflight, diagnose, check, and a controlled stale-manifest failure.
Git Commits
| Hash | Message |
|---|---|
e1f5207 |
(see git log) |
Status
[OK] Completed
Session 19: Add configurable area asset budgets
Date: 2026-08-04
Task: Add configurable area asset budgets
Branch: main
Summary
Added configurable GLB budgets with documented exceptions, shared budget evaluation for diagnostics, quality gates, and Cesium/compress manifests, plus render-triangle, embedded-image, and source attribution diagnostics. Verified budget tests, preflight tests, nantaizi diagnostics/check, and a controlled low-budget failure without running heavy stages.
Git Commits
| Hash | Message |
|---|---|
463cb06 |
(see git log) |
Status
[OK] Completed
Session 20: Split area preview orchestration
Date: 2026-08-04
Task: Split area preview orchestration
Branch: main
Summary
Extracted preview route, vehicle glTF, and HTML/runtime assembly from build-area into focused modules; added preview asset tests and verified nantaizi preview, diagnostics, and quality gate.
Git Commits
| Hash | Message |
|---|---|
396df51 |
(see git log) |
Status
[OK] Completed
Session 21: Add OSM turn lane arrows
Date: 2026-08-05
Task: Add OSM turn lane arrows
Branch: main
Summary
Added vendored lane-icons assets, tested OSM turn-lane arrow generation and lane-center placement, and normalized crosswalk and stop-line generation around rendered Driving lanes.
Git Commits
| Hash | Message |
|---|---|
9a23f74 |
(see git log) |
Status
[OK] Completed
Session 22: Cesium semantic inspection preview
Date: 2026-08-05
Task: Cesium semantic inspection preview
Branch: main
Summary
Added semantic Cesium inspection assets and controls; fixed compressed metadata to preserve inspection assets; verified the rebuilt compressed preview.
Git Commits
| Hash | Message |
|---|---|
607d8fc |
(see git log) |
Status
[OK] Completed
Session 23: 车辆连续巡航与转弯
Date: 2026-08-05
Task: 车辆连续巡航与转弯
Branch: main
Summary
实现 OSM 有向道路图驱动的连续往返车辆路线,支持 turn:lanes 转向筛选、单行限制、路口曲线与端点调头;Cesium 路线选择显示编号、长度及左/右/直统计,并补充路线 JSON 中文契约与自动化验证。
Git Commits
| Hash | Message |
|---|---|
30846b6 |
(see git log) |
Status
[OK] Completed
Session 24: 拆分 LowPoly Cars 车辆资产
Date: 2026-08-05
Task: 拆分 LowPoly Cars 车辆资产
Branch: main
Summary
拆分 LowPoly Cars 资产库并接入 Cesium 预览候选集;每条巡航路线独立随机选模型,修正贴图、亮度、比例和 Truck A03 行驶方向;导入脚本支持脱离 Blender 验证已入库资产。
Git Commits
| Hash | Message |
|---|---|
3108336 |
(see git log) |
2489b8a |
(see git log) |
Status
[OK] Completed
Session 25: Cesium traffic signal countdowns
Date: 2026-08-06
Task: Cesium traffic signal countdowns
Branch: main
Summary
Added shared 7LED countdown geometry, split dynamic Cesium assets by phase group for reliable lamp-matched colors, documented the inverse-font and exporter grouping contracts, and verified the preview asset and Blender Python test suites.
Git Commits
| Hash | Message |
|---|---|
0e1574f |
(see git log) |
Status
[OK] Completed
Session 26: 交通信号拓扑与部分构建同步修复
Date: 2026-08-07
Task: 交通信号拓扑与部分构建同步修复
Branch: main
Summary
基于 OSM highway=traffic_signals 控制节点生成 T/十字路口信号,复用共享 OSM 解析;Blender stage 每次重写交通信号锚点,避免部分构建沿用旧 JSON 导致 GLB 与 Cesium 预览 signal id 错位。验证了 nantaizi 区域 35 盏信号、动态/倒计时 GLB、Safari 预览和 preview-assets 测试。
Git Commits
| Hash | Message |
|---|---|
1c077a3 |
(see git log) |
Status
[OK] Completed
Session 27: QGIS traffic signal editing and countdown stability
Date: 2026-08-07
Task: QGIS traffic signal editing and countdown stability
Branch: main
Summary
Implemented editable traffic signal assemblies in QGIS with stable IDs, position/heading overrides, reimport ownership, source validation, and Blender/Cesium runtime derivation. Fixed long signal IDs overflowing Blender node names with short nodeKey values, and changed QGIS SVG symbols to direct heading_deg field rotation so QGIS rotation edits write back to the field. Verified real GeoPackage round-trip, focused Node tests, preview tests, and 59 Blender tests. Safari cache caused stale GLB symptoms and was resolved with a hard refresh.
Git Commits
| Hash | Message |
|---|---|
e153a1c |
(see git log) |
Status
[OK] Completed
Session 28: 默认压缩交付
Date: 2026-08-11
Task: 默认压缩交付
Branch: main
Summary
将 GLB 压缩纳入默认构建并使用标准产物路径交付,移除并列压缩输出契约;同步诊断、测试与文档。
Git Commits
| Hash | Message |
|---|---|
0790cbd |
(see git log) |
Status
[OK] Completed
Session 29: Publish reusable area asset packages
Date: 2026-08-12
Task: Publish reusable area asset packages
Branch: main
Summary
Published the reusable osm-asset-package/v1 contract, moved static models under package/, kept dynamic cruise and signal assets in _preview/, fixed preview manifest-relative loading, and verified the target area quality gate.
Git Commits
| Hash | Message |
|---|---|
f385009 |
(see git log) |
c925890 |
(see git log) |
db0fba5 |
(see git log) |
f2b8d79 |
(see git log) |
0102ffb |
(see git log) |
Status
[OK] Completed
Session 30: Add vehicle incident preview cards
Date: 2026-08-12
Task: Add vehicle incident preview cards
Branch: main
Summary
Added click-to-open vehicle information cards with normal, breakdown, and accident preview-only states, floating vehicle-anchored cards, route and motion changes, plus bundled repair and warning icons.
Git Commits
| Hash | Message |
|---|---|
761a526 |
(see git log) |
Status
[OK] Completed
Session 31: Native road lane markings
Date: 2026-08-14
Task: Native road lane markings
Branch: feature/native-road-compiler
Summary
Implemented native lane separators, repeated road direction arrows, explicit junction turn arrows, Workbench inspection/toggles, and Blender/Cesium adapter support for Nantaizi; validated native compile, checks, tests, and non-package visual build.
Git Commits
| Hash | Message |
|---|---|
1b9829d |
(see git log) |
Status
[OK] Completed