map/archive/generated-history/WORLD_NATIVE_FINAL_NOTES.md

20 lines
1.7 KiB
Markdown
Raw Normal View History

2026-08-08 17:41:30 +09:00
# World-native patch generator final notes
## Implemented
- Regeneration and expansion now call the same `generateUnifiedWorldNativePatchCandidate()` path.
- World-native seed construction excludes candidate origin, candidate size, and selection/context rectangles.
- Padding-invariant geographic coordinates are `arrayX - world.originX` and `arrayY - world.originY`.
- Terrain, settlement jitter, land-use/human geography inputs and patch-noise paths use world-coordinate context.
- Expansion is split on a canonical world-coordinate grid; internal tiles share the pre-operation generated-coverage snapshot.
- Large/tiled expansion keeps final terrain/admin/transport coherence as one aggregate pass.
## Verified
- Left/top world padding: elevation, sea, plain, agriculture, populationDensity, prefectureRegionId and adminId all match exactly over 16,800 compared cells.
- Regeneration reports `unified-world-native-patch`; tiled expansion reports `unified-world-native-patch-tiled`.
- Large Worker expansion completes with seam clean.
- STEP15 and STEP17 pass.
- Existing river/capital/tiny-prefecture/frontier regressions pass.
- Freeform lasso completes with seam clean.
## Remaining contextual edge behavior
World-native *base generation* is invariant, but the outer seam is not frozen forever. When a selection is enlarged, cells that used to be the outer seam become interior and are recomputed by final seam/admin coherence. In the 258x183 -> 259x184 stress comparison, sea and adminId are identical in the common area; prefecture IDs differ in ~5.1% and elevation differs in ~3.9% (mean absolute difference ~0.00518). These differences are predominantly the final outer-boundary coherence layer, not a change of the underlying world-coordinate generator.