wip(assembler): M3 round 3 -- separated islands + Unreal island route (owner build 18:46)

Islands read as separate (91.89% open sky at mid-height), underside cavity closed,
rim teeth were capture shading. Island manifest import + BuildHost proof passed on the
pre-cache tree; M1 SurfaceWorld and M2 V1/V2 gates passed.

Known open: final XY-column cache compiled in the owner build but is unverified;
island LOD0 p95 ~155 ms misses the 133 ms sprint deadline (legacy ~43 ms); the island
manifest only fits the BuildHost fixture layout (owner's world: Core init fails,
empty world) -> round 4 builds plans inside Unreal.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MmSoF64BbRFmk9C3p1VsBJ
This commit is contained in:
Fr0zkaandClaude Opus 5.5 committed 2026-10-10 20:53:03 +02:00
1 parent 4afea7c802
commit 48fa028086
37 files changed
+3788 -107

No files matched your search

+50 -1
View File
@@ -542,6 +542,55 @@ what the shape list alone misses: site selection, cluster connectivity, landings
route. The support ranges do not promise that every roll is pretty or walkable; measurement rejects
bad candidates and records which constraint failed.
#### M3 round 2 — look pass and standalone gates
The legacy settings describe a stochastic site process, not a fixed island count: `IslandDensity=0.5`
is the chance that each hashed XY cell exists. The owner settings are spacing 112 legacy voxels,
radii 24–48 legacy voxels, thickness ratio 0.6, vertical jitter/top flatten 0.6, roughness 3,
blend 6 and boundary seal 4. The production legacy field uses 12.5 cm voxels and Core uses 25 cm, so
the round-2 Core recipe halves length-valued settings: 56 spacing, 12–24 radii, 1.5 roughness, 3
blend, 2 seal and 6.3 contour warp. Those values preserve 14 m spacing and 3–6 m radii under the
production source scale. The legacy struct's radius comment instead assumes 25 cm, and the frozen
probe metadata reports 25 cm while production `Source` and the plugin `CLAUDE.md` report 12.5 cm.
The next round must reconcile that fixture metadata before publishing the importer contract.
Geometry version 2 adds a broad crust and 3–4 deterministic tapering root lobes per island. Its
measured total depth is 0.75 of island diameter; the old thin profile control measures 0.30 and is
rejected by the 0.70 thickness gate. Full bounded roughness remains on cliffs and roots, while top
detail is reduced where the route needs stable footing. The three primary islands guarantee an
entrance-to-exit route; density 0.5 selected one optional side island for this seed, giving four
islands and three sharp-tag-ready arched spans. The side island is not part of the route.
[`M3 Round 2 report`](Research/WorldAssemblerM3/Round2/REPORT.md) records the five matched views,
owner-parameter conversion, the full run ledger, and Round 3 delivery plan. The contact sheet is
[`contact_sheet.jpg`](Research/WorldAssemblerM3/Round2/results/captures/contact_sheet.jpg). Bounds
had zero misses, the route passed 254 capsule centers and 69,088 field samples, the raised-route and
thin-pad controls failed as intended, and W1/W8/W16 field hashes matched. On the same 32,768 physical
query locations, Core took 38.06 ms versus 64.64 ms for the legacy evaluator. The local sample still
contains 10.6× as many native solid points (1,380 vs 130), due to the guaranteed route backbone and
deeper root profile; this is a known local density difference, not an occupancy-parity claim.
#### M3 round 3 — Unreal delivery plan
1. Resolve the legacy/Core voxel-scale conflict using the production field constant and the owner
snapshot producer; record a single conversion rule in the imported manifest and its preview notes.
2. Add the floating-island recipe and plan to the existing optional `world_assembly` import pattern.
Parse through `ResolvedWorldSnapshot::FromJson`, validate recipe/plan hashes and stable feature
IDs, and reject malformed or scale-mismatched payloads before generation.
3. Prove the imported plan in a null-RHI BuildHost commandlet. Check the canonical hashes and W1/W8/W16
queries, then compare generated tiles against the reviewed standalone field without changing the
existing Core world or SurfaceWorld hashes.
4. Carry island and sharp-tag-ready span IDs into the feature-aware mesher path. Audit same-LOD and
LOD0/LOD1 borders around the crust, roots and arch landings.
5. Cook the rendered collision, trace it on the Pawn channel, and capsule-sweep the same serialized
route. Compare collision support points to analytic Core support at the island tops and spans.
6. Hand the owner the manifest, five-view sheet, import steps, route coordinates, and collision
results. Use a duplicated test settings asset for preview only after the owner authorizes project
asset work; keep shipped assets untouched during the standalone proof.
Water remains a separate fixed-season body and is not part of the round-2 field or the round-3
collision claim.
## E. Milestones that end in owner-visible artifacts
These estimates are engineering rounds, not elapsed-time promises. Each milestone ends with a
@@ -551,7 +600,7 @@ standalone viewer/contact sheet, data report or playable inspection the owner ca
|---|---:|---|---|
| M1 — sharp-mesher decision spike | 2 rounds | 25 cm contact sheet of corner, one-metre step, cliff ledge and doorway: current MC beside feature-aware output; include LOD/tile seam and collision overlays | Measure surface error, normal splits, determinism and seam behavior before building architectural recipes on top |
| M2 — SurfaceWorld native vertical slice | 3 rounds | Matched-camera native surface with two biomes, a coast/beach, cliff/overhang, cap, route markers and timing beside the exact legacy bridge | No missed bound; the matched full-view workload materially beats the 23.085 s bridge; local collision/query readiness is reported separately; route candidate survives final composition |
| M3 — FloatingIslands volumetric proof | 2 rounds | Walkable island cluster with underside/cliff views, water/body overlay, tile/LOD seam views and bound counters | Stable field/feature IDs; no false interval proof; route support is visible and capsule-swept |
| M3 — FloatingIslands volumetric proof and Unreal delivery | 3 rounds | Walkable island cluster with underside/cliff views, tile/LOD seam views, imported manifest, BuildHost proof and cooked route collision | Stable field/feature IDs; no false interval proof; route support is visible and capsule-swept |
| M4 — route, edit and water law | 2 rounds | Owner can inspect before/after edit views and traverse the tested route; report shows protect-or-replace transaction and unchanged seasonal water IDs | Final-field capsule clearance/support passes; edit either preserves route or atomically installs a replacement; water remains fixed |
M1 goes first because the owner needs to judge crisp geometry before a slow legacy/native comparison