Files
VoxelForge/Standalone/Research/WorldAssemblerM3/Linux93/REPORT.md
T
Fr0zkaandClaude Opus 5.5 1e111cc042 diag: bounded passage carve reach rejected (L93); R43 Unreal SW startup notes
Explicit carve reach R (diagnostic, default unbounded): R=2.5 m -> 1.56 cm max displacement,
106 deg max normal change; R=4 m -> 0.63 cm but 53 deg normals. Fails the bar; readiness gain
small and inconsistent (TN -5%, VS +6-7%). No world change (v214). Fast tier PASS.
R43: Unreal SW bReady 2.16 s = serial sign-edge repair (1.94 s, 10.9M corrections;
parallelSignEdgeRepair exists but off); ~0.45 s of SerializeResolvedWorld = adapter SW route search.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016dhxM43dnWvUu2B5Ph1iG1
2026-10-28 07:33:53 +01:00

5.7 KiB
Raw Blame History

Linux93 — explicit passage carve reach

R and acceptance bar

Before measurement, the bar was: zero sign flips, maximum surface displacement ≤1 cm, maximum normal change ≤2°, and all passage audits pass.

I chose R = 2.5 m beyond the tube surface, with the final 0.5 m smoothly fading to identity. The code’s local terms are a 2.25 m positive-source reach floor and a 0.24 m wall-relief/source allowance (0.21 m relief plus 0.03 m margin); mouth-floor relief is separately capped at 0.20 m. Wider short-span decks and mouth/transition envelopes are separate paths, retained behind their existing feature guards. R is an experiment, not a proof that those separate envelopes fit inside the carve radius. I also measured R=1.5, 2.0 and 4.0 m.

The instrument reported GenerateTile -> ApplyResolvedStrateComposition -> ApplyResolvedStratePassageCarves, comparing density, mesh-edge crossings and normals. It did not use the L91 source-gradient probe. Each reach covered the full desired LOD0–2 set in S0/FI/TN/S3: 5,312 tiles and 174,736,448 samples per reach. Source stamp: 938a849b053aa7e5bc9bf5fcaf51a73590d408c15bc9d8f0564fec685e68921d.

Effect

Worst displacement and normal change are across all four strata; moved crossings and pairing failures are totals. Every row had zero sign flips and zero edge-crossing mismatches.

R (m) Moved crossings Max displacement (cm) Max normal change Normal pairing failures Bar
1.5 4,303 85.136 144.823° 65 Fail
2.0 1,910 41.106 118.485° 57 Fail
2.5 922 1.555 106.628° 57 Fail
4.0 916 0.632 53.193° 57 Fail

R=2.5 exceeds the displacement limit and misses the normal limit by a wide margin. R=4 meets the displacement limit but still fails normals. The effect audits completed with zero generation failures and zero invalid comparisons; full same-world passage audits were not run after this gate failed.

Census and prototype

The L90 census was not rerun because the effect bar failed. The requested active-p90 (about 4–6) and fallback (<10%) stops therefore have no L93 measurements; the previous 10 m baseline was p90=13 and 18.28% fallback. The compiled evaluator prototype on passage/1-2/0 was not started because it depends on a passing census.

Bounded-only readiness

Cold headless runs compared default reach with R=2.5 m, L81 padding 0, and passage-composer profiling. Each mode had one warmup and three alternating measured pairs. Counts below are complete LOD0–2 near sets; times are medians in seconds.

Stratum W8 default → R=2.5 W12 default → R=2.5
S0 0.975 → 0.897 0.976 → 0.929
FI 2.354 → 2.307 2.181 → 2.158
TN 2.356 → 2.229 2.156 → 2.032
S3 1.276 → 1.371 1.100 → 1.169

All runs completed their near sets: S0 1,408, FI 1,216, TN 1,344, S3 1,344 tiles. The work table sums the four per-stratum median counters. Positive deltas mean more counted work with bounded reach.

Work counter W8 default → R=2.5 (Δ) W12 default → R=2.5 (Δ)
Tile-bound checks 21,697,558 → 15,820,579 (−27.1%) 23,141,444 → 15,820,579 (−31.6%)
Tile-bound rejects 15,393,408 → 15,702,098 (+2.0%) 16,114,028 → 15,702,098 (−2.6%)
Passage iterations skipped by tile bound 46,180,224 → 47,106,294 (+2.0%) 48,342,084 → 47,106,294 (−2.6%)
Negative-bound checks / rejects 5,506,163 / 2,500,536 → 3,461,477 / 3,286,103 (checks −37.1%, rejects +31.4%) 5,705,127 / 2,699,500 → 3,767,727 / 3,592,353 (checks −34.0%, rejects +33.1%)
Passage iterations 33,137,208 → 32,209,659 (−2.8%) 38,207,001 → 39,438,384 (+3.2%)
Carve segment visits 78,166,733 → 77,908,735 (−0.3%) 101,322,676 → 106,806,150 (+5.4%)
Support segment visits 31,466,498 → 30,406,353 (−3.4%) 37,630,363 → 38,810,022 (+3.1%)
Mouth route checks 38,701,878 → 37,198,938 (−3.9%) 47,097,975 → 47,996,583 (+1.9%)
Relief field calls 56,100,413 → 51,745,464 (−7.8%) 66,227,624 → 64,386,389 (−2.8%)

The skip counters do not show a consistent work reduction: several active-loop counters rise at W12, and S3 readiness regresses at both worker counts. This is not a readiness win.

Same-world evidence and disposition

The bounded candidate is rejected. No candidate peer-hash comparison at W1/W8/W12 or across Clang/GCC, bounded passage-audit suite, mouth/mid-tunnel captures, version bump, or hash repin was done. The evaluator remains version 214 and the default reach remains unbounded. The Clang fast tier on the default path passed: 274 checks, 269 PASS and 5 expected diagnostics, in 285.9 s; its W1/W8/W12 checks matched. Standalone diagnostic builds took 65.49 s (Clang) and 89.39 s (GCC). No Unreal source changed, so no Unreal build was run.

Failed and superseded runs

  • The first fast-tier launch stopped before tests because its expected binary did not exist. After building the stamped binaries, the fast tier passed.
  • An early readiness parser incorrectly required a composer-profile row for every near tile; the profiler emits rows only for active tiles. The parser was corrected and the final matrix validated complete near-tile coverage. Earlier fixed-5 m support-floor readiness data is superseded and excluded.
  • Final effect runs completed but intentionally reported FAIL against the stated effect bar. No run exceeded 30 minutes.
  • Build, headless measurement and verifier processes were pinned to CPUs 0–11; headless runs also had the 6 GiB address-space limit. A few read-only status/source/JSON inspection commands during consolidation were not pinned. No measurement or build ran in those commands.

Logs and machine-readable summaries are under Saved/Linux/l93/.