diag: passage source-floor clamp rejected (L91); field has steep non-distance tails
Clamping the passage-composition source density at -c (c=2..6 voxels, diagnostic, default off) changes the surface far beyond the bar: c=6 still 65 sign flips, up to 165 cm displacement, 120 deg normal change (downstream composition consumes deep values). Source gradient at crossings is distance-like at the median but has huge tails (FI p90 |grad| 512, max 894 vox/vox), so the density-dependent passage reach is inflated by non-distance values. No world change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016dhxM43dnWvUu2B5Ph1iG1
This commit is contained in:
1 parent
a7a03d42b4
commit
8805291d3e
9 files changed
+937
-11
No files matched your search
@@ -0,0 +1,57 @@
|
||||
# Linux 91 — passage source floor
|
||||
|
||||
## Acceptance bar declared before measurement
|
||||
|
||||
For every owner stratum and LOD0–2: zero density sign flips, maximum edge-interpolated surface displacement ≤1 cm, maximum paired mesh-vertex normal-angle change ≤2°, and all passage audits passing. Capture and inspect moved surfaces. Measure source-field gradients at surface crossings. Apply any candidate floor only to the source passed into passage composition, preserving other field features.
|
||||
|
||||
## Result
|
||||
|
||||
**No tested floor is acceptable; stop before the census and prototype.** The comparison clamped only the passage-composition source. Each floor changed samples and meshes, so this is not a no-op. Each stratum covered its full desired near set at LOD0–2: S0 1,408 tiles (512/448/448); FI 1,216 (512/448/256); TN 1,344 (512/448/384); S3 1,344 (512/448/384). There were 174,736,448 total density samples per floor across the four strata.
|
||||
|
||||
The 0.25 m core voxel makes the proposed reach `c·Q + 0.24 m`: c=2/3/4/6 gives 0.74/0.99/1.24/1.74 m. No smallest acceptable c exists.
|
||||
|
||||
| c (vox) | Stratum | Changed samples | Sign flips | Max / mean displacement (cm) | Max normal change (°) | Changed mesh tiles |
|
||||
|---:|:---|---:|---:|---:|---:|---:|
|
||||
| 2 | S0 | 22.17M | 212 | 89.72 / 1.62 | 36.65 | 237 |
|
||||
| 2 | FI | 25.76M | 124 | 91.67 / 1.06 | 84.80 | 155 |
|
||||
| 2 | TN | 16.46M | 124 | 95.01 / 1.54 | 79.33 | 164 |
|
||||
| 2 | S3 | 4.03M | 0 | 185.92 / 9.47 | 116.43 | 198 |
|
||||
| 3 | S0 | 21.98M | 121 | 71.62 / 0.81 | 34.46 | 210 |
|
||||
| 3 | FI | 25.66M | 54 | 72.08 / 0.47 | 80.24 | 147 |
|
||||
| 3 | TN | 16.36M | 54 | 76.92 / 0.67 | 80.24 | 151 |
|
||||
| 3 | S3 | 4.01M | 0 | 180.36 / 6.60 | 118.75 | 189 |
|
||||
| 4 | S0 | 21.79M | 91 | 58.19 / 0.38 | 35.29 | 141 |
|
||||
| 4 | FI | 25.55M | 6 | 59.35 / 0.16 | 82.15 | 107 |
|
||||
| 4 | TN | 16.27M | 6 | 62.94 / 0.24 | 82.15 | 134 |
|
||||
| 4 | S3 | 3.99M | 0 | 175.11 / 4.60 | 120.47 | 189 |
|
||||
| 6 | S0 | 21.40M | 65 | 38.24 / 0.08 | 35.24 | 121 |
|
||||
| 6 | FI | 1.67M | 0 | 43.78 / 0.04 | 81.05 | 101 |
|
||||
| 6 | TN | 2.52M | 0 | 43.78 / 0.05 | 81.05 | 128 |
|
||||
| 6 | S3 | 2.23M | 0 | 165.43 / 1.88 | 120.10 | 180 |
|
||||
|
||||
The route-near moved-crossing classifier tagged wall/floor/mouth changes at every floor. Totals across strata (wall, floor, mouth, other) were: c2 (4,806, 2,527, 7,587, 96,946); c3 (3,547, 2,046, 7,343, 81,736); c4 (2,215, 1,371, 7,252, 70,981); c6 (665, 272, 2,461, 33,139). These region labels use nearest-route-chord heuristics. Normal maxima compare index-paired vertices; normal changes in tiles with incompatible vertex/index pairing were unmeasured (183/151/141/112 tiles for c2/c3/c4/c6).
|
||||
|
||||
The source gradient is near distance-like at the median, but has steep outliers. Central differences use a 1-voxel step at source `|d|≤2` crossings outside the approximate passage region:
|
||||
|
||||
| Stratum | Samples | p50 / p90 / max `|∇d|` (vox/vox) |
|
||||
|:---|---:|---:|
|
||||
| S0 | 7,137 | 1.205 / 1.815 / 4.741 |
|
||||
| FI | 1,929 | 1.001 / 511.674 / 893.726 |
|
||||
| TN | 2,142 | 0.993 / 1.047 / 893.726 |
|
||||
| S3 | 3,079 | 0.932 / 1.036 / 444.254 |
|
||||
|
||||
Thus the distance-field hypothesis holds around the median, not across the measured tails. Even c6 still has 65 sign flips overall, up to 165.43 cm displacement, and up to 120.47° paired normal change. S3 has zero flips at every floor but substantial crossing motion, showing that sign preservation alone does not bound the surface change.
|
||||
|
||||
Matched baseline/c6 captures were generated for all four strata at the audit cameras: [S0](../../../../Saved/Linux/l91/captures/s0-c0.png), [FI](../../../../Saved/Linux/l91/captures/fi-c0.png), [TN](../../../../Saved/Linux/l91/captures/tn-c0.png), [S3](../../../../Saved/Linux/l91/captures/s3-c0.png), with corresponding `*-c6.png` files beside them. The views are qualitative and do not resolve the measured local shifts.
|
||||
|
||||
## Census, prototype, readiness
|
||||
|
||||
The L90 census was not rerun at 2 m or 4 m bricks because no acceptable c was found. The compiled evaluator prototype on `passage/1-2/0` and W8/W12 LOD0–2 timing were not run. Passage walkability audits were not run after the effect gate failed. No production clamp was adopted; its diagnostic floor defaults off and is confined to passage composition. Therefore no version bump, hash repin, or fast-tier/same-world adoption run was made. Same-world peers and cross-compiler equality remain unmeasured for the rejected candidate. Existing production hashes/default behavior were not intentionally changed.
|
||||
|
||||
## Runs and evidence
|
||||
|
||||
- Clang 19 standalone build passed; source stamp: `93fac418c7497299b43bd183625ba2117ec8096b2daeb6ea2f74f0171b348597`.
|
||||
- All four clamp audits covered the expected complete near tile sets, with zero generation failures and invalid comparisons. Their exit code 14 marks the threshold failure, not a crash.
|
||||
- All 16 baseline/c6 export and capture steps passed. No process exceeded 30 minutes. All headless runs used `taskset -c 0-11` and `prlimit --as=6442450944`.
|
||||
- The first standalone build launch failed before compiling because its log directory did not exist; after creating it, the Clang build passed. No Unreal build was run because the clamp failed the effect gate before production integration.
|
||||
- Detailed counts/logs: `Saved/Linux/l91/clamp-effects/`; captures/logs: `Saved/Linux/l91/captures/`; census runner remains unexecuted at `RunL91CandidateCensus.py`.
|
||||
Reference in new issue
Block a user