feat(core): deterministic bounded SDF landmark stamps, off by default (L43); research R10
Stamp vocabulary v1 (carve ellipsoid/arch, fill pillar/dais) with smooth CSG and seeded relief; the director resolves records (stable ID, strate, micrometre position, conservative bounds) from hash(seed, strate, ID) with up to 512 candidates and rejects any that touch a passage mouth, walk corridor, content face or ceiling/bedrock band; a stamp BVH skips tiles outside all bounds. No requests: canonical JSON and owner hashes unchanged. --landmark-chamber-demo adds a SW chamber (buried; see review). fast/medium/full PASS on clean builds. Research R10 (read-only): ore/resource channel design. Review also records a pre-existing W1/W12 determinism mismatch at a non-spawn camera (L37+, not S14). 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
497e974178
commit
422dd7761a
12 files changed
+1138
-2
No files matched your search
@@ -0,0 +1,72 @@
|
||||
# Linux 43 — Core landmark SDF stamps
|
||||
|
||||
Source stamp: `18b89fb48febf887c5b61e14c699c95535b09613f23618ca57271bc5d2a455f3` (clean Clang and GCC builds).
|
||||
|
||||
## Vocabulary and records
|
||||
|
||||
Stamp vocabulary v1 contains `carveEllipsoid`, `carveArch`, `fillPillar`, and `fillDais`. A resolved record carries a stable ID, strate index, position in integer micrometres, conservative bounds, half extents, smooth-CSG width, irregularity amplitude and wavelength, irregularity seed, and quarter-turn yaw. Bounds include the smoothing and roughness support.
|
||||
|
||||
Carves use smooth maximum with the negated SDF; fills use smooth minimum. Core keeps its density sign: negative is solid and positive is air. Bounded trilinear value noise adds seeded relief.
|
||||
|
||||
## Placement and culling
|
||||
|
||||
The resolver sorts requests by stable ID and derives placement offsets and irregularity from `(seed, strate, stable ID)`. It tries at most 512 deterministic candidates. The strict layout rejects bounds that intersect a passage mouth or walk corridor, touch a content face, or overlap a ceiling or bedrock band. No safe candidate is a placement error. The route and band negative controls were both rejected (`2/2`).
|
||||
|
||||
The stamp BVH queries conservative bounds once per tile. A tile with no candidates performs no stamp SDF evaluation. Stamp-intersecting boxes classify as mixed, and native-only readiness cannot skip them. With no requests, stamp fields are omitted from canonical JSON, preserving L42 identities and hashes.
|
||||
|
||||
## Owner demo and hashes
|
||||
|
||||
`--landmark-chamber-demo` is off by default. On seed 0 it adds three records to the owner SurfaceWorld strate (strate 1); no Unreal files changed:
|
||||
|
||||
- Ellipsoid chamber `landmark/sw-arrival-chamber-v1`: center `(-8.918, 31.950, -513.083) m`, half extents `(8.5, 7.5, 6.0) m`.
|
||||
- Arch `landmark/sw-arrival-chamber-entrance-v1`: center `(-12.289, 37.027, -513.311) m`, half extents `(2.6, 4.2, 3.2) m`.
|
||||
- Low dais `landmark/sw-arrival-chamber-dais-v1`: center `(-7.489, 30.688, -515.838) m`, half extents `(3.2, 2.8, 0.9) m`.
|
||||
|
||||
The chamber center is 30.9 m from the arrival mouth at `(9.25, 9.25, -502.608) m`, off the walk route. The active layout carries vocabulary version 1 and identity `resolved-layout-v3-fnv64:91eaf2f0248f2c8b`.
|
||||
|
||||
Without stamps, the FI/SW layout IDs remain `b7a7d9ecc48d8f26` / `8a52e84c26ed92d2`; the 12-record owner signatures remain L42's FI `9820f4f38b189b3f7263810e7b3ff62aa502b21f476ffcfdbc7761a65cb07d58` and SW `a1e9268a4bbcc77d2a1ac54095df6851a70bab65c43ae50b332ed75132617834`.
|
||||
|
||||
At the same chamber-centered camera, W12 hashed 343 tiles. Stamp off: density `0x18d6f6cb3498deff`, mesh `0x293c0ddff66b99f9`, payload `0xeb07403f34d60134`, topology `0x002905a3f028c9f1`. Stamp on: density `0xbf8af855ee5db8fb`, mesh `0xbb64c203dc533070`, payload `0xd14d45e6b9faa9c0`, topology `0x44f1b422df20a159`. The stamp-on W1 and W12 signatures match.
|
||||
|
||||
## Safety, cost, and tiers
|
||||
|
||||
With the demo on, passage walkability passed `1545/1545`; the passage audit passed; endpoint probes passed `27/27`; the interface audit passed with `hole_columns=0` and `air_samples=0`.
|
||||
|
||||
For outside-stamp tiles, five W1 pairs over 343 tiles measured median whole-view-ready `0.457 s` off / `0.466 s` on (`+1.97%`); paired changes ranged from `−2.76%` to `+3.08%`. Five W12 pairs over 125 tiles measured `0.189 s` / `0.191 s` (`+1.06%`). These tile bounds do not intersect a stamp, so the BVH returns no stamp candidates and no stamp SDF runs. The small timing deltas sit within pair-to-pair variation. Full-tier five-pair cost versus `HEAD`: FI `17.342 s` → `17.495 s` (`+0.88%`); SW `1.799 s` → `1.805 s` (`+0.33%`).
|
||||
|
||||
| Tier | Result |
|
||||
|---|---|
|
||||
| Fast | PASS, 161.3 s, 41 checks |
|
||||
| Medium | PASS, 468.3 s |
|
||||
| Full | PASS, 1551.2 s, 539 checks; clean Clang/GCC build, 30-cell determinism, cost pairs |
|
||||
|
||||
## Captures
|
||||
|
||||
All JPEGs passed `capture_quality.py` and are below 300 KB:
|
||||
|
||||
- [Entrance, eye height — 27 KB](captures/chamber-entrance.jpg)
|
||||
- [Inside — 29 KB](captures/chamber-inside.jpg)
|
||||
- [Overview — 43 KB](captures/chamber-overview.jpg)
|
||||
|
||||
## Failed runs
|
||||
|
||||
- An early route-control point hit the mouth guard before the corridor guard; its position was moved so the final route and band controls exercise the intended rejection checks.
|
||||
- The first JSON round trip lost precision in a 64-bit irregularity seed. Seeds are now kept within the JSON number type's exact 53-bit integer range; canonical round-trip passes.
|
||||
- A clip-plane capture was rejected by the renderer (`open_contours=10`); the final three views use the uncut mesh.
|
||||
- A supplemental stamp-off, chamber-centered W1/W12 aggregate differed reproducibly (`density 0x68f495ba62aace05` / `0x18d6f6cb3498deff`), though its nine exact-query probes matched. The standard owner fast/full determinism checks pass, and the stamp-on chamber-centered aggregate matches W1/W12.
|
||||
|
||||
## Orchestrator review (Claude)
|
||||
|
||||
Merged as **infrastructure, off by default**: the stamp vocabulary, records, placement guards and BVH culling are
|
||||
sound, the owner hashes are unchanged with no requests, and the route/band controls reject. Not accepted as a
|
||||
**player-visible** landmark yet:
|
||||
- the demo chamber is **buried**: its top is about 4.5 m below the SW ground near the arrival mouth, with no opening
|
||||
to the walkable surface, so a player can never see it;
|
||||
- the arch reads as a boxy notch with a sharp vertical corner;
|
||||
- the entrance capture is unreadable.
|
||||
|
||||
**Determinism finding (pre-existing, not caused by L43).** The "supplemental stamp-off W1/W12 mismatch" in the
|
||||
failed-runs list is real. I reproduced it on committed L42 and on L37 (`density 0x68f495ba…` at W1 vs
|
||||
`0x18d6f6cb…` at W12, camera `(-8.918, 31.950, -513.083)`, `--max-clip-level=0 --render-distance-chunks=0`). S14 is
|
||||
stable there. It is a worker-count-dependent result in the production path, invisible to our tiers, which only test
|
||||
the spawn camera and the 24 m crossing. It is the top priority for L44.
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 26 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 29 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 43 KiB |
Reference in new issue
Block a user