Files
Fr0zkaandClaude Opus 5.5 ef789aaa00 wip(L25, side branch): FI helix enclosed in a 13 m rock root; support never created in open air
Fixes the L24 ribbon (owner request). NOT merged: the open-air support gate leaves ~4,000 unsupported
samples on every SurfaceWorld-recipe passage style (TN -> SW), a walkability regression. L26 fixes that
on this branch. See Linux25/REPORT.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CSFYgsdW8ejZSyiMf4qRSX
2026-10-21 00:38:57 +02:00

8.7 KiB
Raw Permalink Blame History

World Assembler L25 — FI helix inside the root

The ribbon came from two causes. The shared passage compositor stamped route-mouth tread/support into native air, and the L24 6 m root could not contain this route: its measured centerline reached 5.562 m from the root axis and the mouth bore is 4.5 m. That leaves a nominal 6 - 5.562 - 4.5 = -4.062 m wall allowance. The axis and units were correct; the support pass ignored surrounding rock, and the root was too small.

L25 gates shared route-mouth support on negative pre-passage density, so it can reinforce existing rock but cannot create a shelf in air. The FI anchor root is now a relief-bearing 13.25 m nominal rock column. I chose a sturdier column with the existing uneven relief over a thin cylinder; it remains column-shaped from outside. The authored spiral stays centered on the root axis.

Root and passage measurements

Axis (9.800, 4.571) m; helix centerline radius 2.999–5.562 m; bore radius 4.5 m at the mouth and 3.0 m through the middle. The conservative wall estimate uses the largest path offset and mouth bore at every height.

Height (m) Solid radius min / mean / max (m)
-68.209 12.000 / 12.129 / 12.375
-80.643 12.125 / 12.254 / 12.500
-93.595 12.500 / 12.672 / 12.875
-106.548 12.875 / 13.012 / 13.250
-118.982 13.000 / 13.168 / 13.375

Minimum measured wall allowance is 1.938 m, above the existing 1.5 m reserve.

Audits

The authored FI Spiral passed on Clang and GCC: 61,173 capsule samples, blocked=0, 5,318 support samples, unsupported=0, grade_failures=0; both route bindings pass, and walkability is 1,135/1,135. Strict layout validation accepted with zero issues; malformed controls were rejected 9/9.

The open-air audit sampled 813,632 passage support points at 0.25 m spacing: violations=0, including 11,520 route-support samples. Its L24 ungated-support negative control found 1,438 violations. Naturalness passed with a 0 m flat run and 0.767 m wall-relief peak-to-peak; the L23 smooth-wall negative control was detected at 0 m relief. The capsule, open-air, and naturalness results match between Clang and GCC.

All four style overrides in both recipes passed the open-air audit (zero violations; the L24 control was detected each time). The capsule sweep has failures outside the authored FI Spiral: FI styles 0/1/3 have 7/13/6 blocked samples; SurfaceWorld styles 0/1/2/3 have 4,255/4,071/3,948/4,117 unsupported samples after the safe support gate. Their blocked/grade counts are zero. These are alternate-style walkability failures, not open-air emissions; the canonical FI Spiral and composed SurfaceWorld route pass. The individual logs are Saved/Linux/linux25-style-*.log.

L13 parity passed on both compilers: FI 8/8 page pairs, 14 higher-LOD pairs, 782,026 exact-query samples, zero mismatches; SurfaceWorld 5 page pairs, 9 native-only pairs, 14 higher-LOD pairs, 910,651 exact-query samples, zero mismatches. Both had one passing edit pair. L9 uniform-block proofs had zero violations: SurfaceWorld checked 26,977 blocks / 35,906,387 samples; FI used its expected 21,504 fallbacks/unknowns and checked no blocks.

The 24 m crossing passed both compilers and recipes. FI processed 314 moving tiles and SurfaceWorld 432; compiler hashes match per recipe. Crossing whole-view density/mesh/payload/topology hashes (FI 2,370 tiles; SurfaceWorld 2,553):

  • FI: c284b42ced276f4c / f6a90d0027d8d6fe / fdec2a7f61215a1e / 60a99d7c20700cd6
  • SurfaceWorld: cee18b39a9271559 / c1713be06b92bd8e / fd7954350ebfacfc / c58b075a1b7f2895

Determinism and SurfaceWorld

The exact LOD0–8 hash matrix passed at W1/W8/W12 for Clang and GCC: 2,370 whole-view tiles, 960 full-detail tiles, all nine LOD rows and exact-query hashes identical across workers and compilers. Hash vectors are density/mesh/payload/topology:

Recipe Whole view (2,370 tiles) Full detail (960 tiles) Exact-query density / detail / collision
SurfaceWorld 8d494f8f843171b2 / 37d21941f6d9cce8 / 47248393fa2f3322 / 36d03d874daef4ae ace56c8f205238ad / a9c603a1248de6b8 / ea55f1f4fcc6a894 / 5ea7bc78a1b678ae c949c4df2ce6f9d9 / 114c501e2d830d94 / e6011d3a248d4849
Floating Islands 6f0095c01b066744 / efea60f7a9c1d675 / 849c1829e1dcddd5 / 4f7cc65dc1adc234 d18e722b37a2479e / 0e410a8e80a3e7f7 / 0751926f0c67d8a4 / f01208bc2f7841ec 7b7c50ac24ccadcc / efcba20c0c70c415 / e604823a249029bf

Re-run command, with N=1,8,12, both compiler binaries, and both recipes:

timeout 1800s taskset -c 0-11 env LP_NUM_THREADS=12 prlimit --as=6442450944 -- Standalone/bin/linux/VoxelForgeCoreHeadless-linux25-<clang|gcc> --world-assembler-prototype --stream-benchmark --stream-pipeline --stream-hash --force-generate --clip-radius=3 --max-clip-level=8 --far-horizon-lod8-step=0 --workers=N --recipe=<surface-world|floating-islands> Standalone/data/owner_world.json

SurfaceWorld away from the passage was directly compared with L23 in L24 and matched at 960 full-detail tiles: 66ac781666579e3e / 914873894a0e38c4 / ec8b03ade039cd56 / a2b621b0321d43dc. L25 changes only passage/root generation and the shared passage composition region; it does not change the away-from-passage SurfaceWorld field. The L25 full-view hashes above cover a different tile selection from that away-only comparison.

Captures

The four final captures are 1920×1080 JPEGs under captures/, each below 300 KB:

  • fi-pillar-exterior.jpg (43 KB): wide exterior; thick relief-bearing root, no outside ribbon.
  • fi-pillar-cutaway.jpg (53 KB): vertical cutaway exposing the helix and central rock.
  • fi-helix-inside.jpg (37 KB): headlamp on, 90° FOV, camera (11.495, 7.047, -87.858) m at resolved route point 200, about 2 m above the tread, aimed down the route tangent. The tight turn leaves a close, wall-heavy view; the cutaway is clearer for the full spiral.
  • sw-arrival-mouth.jpg (55 KB): headlamp on, 80° FOV, camera (9.800, 4.571, -133.000) m, 5.5 m below the lower mouth, looking up into the SW arrival.

Changes, invariants, and run history

Core evaluator version is 12; FI geometry version is 7; resolved-layout schema V3 is unchanged. Source changes are in the Core passage planner/compositor, FI root geometry, and the standalone audit/hash reporting. ARCHITECTURE.md §8.43 and CODEMAP.md §3.26 document the change. The only Unreal edit is the adapter's FI geometry-version assignment (geometryVersion = 7); Unreal was unavailable, so that adapter edit was not compiled here.

L3 FP-contract preamble/self-test, L4 FLazy, L7 shared cache, L9/L12 proofs, L11 readiness/crash fix, L13 route binding, L18/L19 shared ceiling, L21/L22 layout and bands, L23/L24 passages, ARCHITECTURE §8.10, and CLAUDE.md async rules remain intact. No commit, push, or stash was made.

Failed or retried runs:

  • The first scene export omitted --render-distance-chunks=0; it expanded to 593,068 tiles / about 640 MB and was stopped before 15 minutes, then its partial export was removed. A render-distance-48 retry returned 844 plane-dominated tiles / 31 MB and was discarded. Clipmap-only (195 tiles) and focused 27-tile detail exports succeeded.
  • Two extra GCC audit invocations exited 2 because the headless binary needs the owner JSON as a positional path; the corrected invocation with Standalone/data/owner_world.json passed. The requested six-worker/compiler/recipe hash matrix itself passed.
  • Early interior camera trials missed the resolved helix centerline and showed wall-only frames; the final interior frame uses a point extracted from the current resolved layout. No build or audit exceeded 30 minutes, and no step was left stuck for 15 minutes.

Orchestrator review (Claude) — side branch, not merged yet

  • The FI helix fix is confirmed by my capture review: fi-pillar-exterior.jpg shows a solid relief-bearing column with no outside ribbon, and fi-pillar-cutaway.jpg shows the helix inside it.
  • Regression that blocks merge: the support gate makes non-FI passages unwalkable. With the SurfaceWorld recipe (the owner world's TunnelNetwork strate above SurfaceWorld), every style has ~4,000 unsupported capsule samples (L24: 0). FI styles 0/1/3 have blocked samples. The owner world's real TN→SW passage is affected, so a player can fall through it.
  • Kept on side branch wip/l25-helix; assembler/world stays at L24 (cb9236c) until L26 makes every style in both recipes pass with 0 blocked / 0 unsupported / 0 open-air violations.
  • Design decision (owner delegated decisions to me, 2026-10-21): passages are tunnels in rock. The planner keeps the path inside solid ground where possible; unavoidable open-air crossings get a natural, grounded rock bridge (thick, relief, connected to rock on both ends), never a floating tread.