diff --git a/docs/ISSUES.md b/docs/ISSUES.md index b02b0547..091a1eb8 100644 --- a/docs/ISSUES.md +++ b/docs/ISSUES.md @@ -122,9 +122,10 @@ left no client. The separate #469 lighting-direction transition remains open. ## #469 — Atmospheric shadow-gate transition switches the whole outdoor lighting direction abruptly and can darken the world -**Status:** IN FLIGHT — lead contract written 2026-09-05 in S5 packet §31; -Campaign OVERHAUL v2 renderer-solid/G4 scope. This predates S5-c2: exact parent -`5c106bcdf` and candidate `ef819eedf` reproduce the same dark re-enable. +**Status:** DONE 2026-09-05 — contract `809887524`; reviewed scratch +implementation `c09b6cf0f`; campaign implementation `94ddde69a`; route +`62efc72cb`; packet §§31–32. This predated S5-c2: exact parent `5c106bcdf` and +candidate `ef819eedf` reproduce the old dark re-enable. **Evidence:** parent `s5-c2-ab-parent/logs/selfgate-20260904-183815-s5c2-parent-shadow-ab` and @@ -154,6 +155,16 @@ shadow/volumetric projection and correcting IA-24 in the same implementation commit. Production SPIR-V plus a real Vulkan mesh/terrain witness must discriminate the old branch before this exact off/on/dusk A/B is repeated. +**Closeout:** sequential OpenAI retail/deviation pass 1/10 and production/gate- +honesty pass 2/10 both PASS with no finding. Exact scratch gates: Release +0W/0E; focused 126/126; physical Vulkan 2/2; hermetic 16,983/16,983; +InstalledDat 386 pass / the unchanged 10 accepted failures / 1 accepted skip. +Lead gate `logs/selfgate-20260905-040449-s5-469-lighting-transition-r1` captured +five fixed-pose noon/dusk retail/High frames, exit 0, graceful logout, and no +client left. Both noon High rows carried 2,500 casters, four cascades, 26 draws, +and nonzero strength; the former near-black whole-world relight is gone and +both retail frames restore. Visual PASS is provisional pending owner inspection. + ## #468 — Teleport to the Holtburg cottage doorway pose seats the player in the house-interior cell at a point outside its floor; the player falls through the world **Status:** OPEN — found 2026-09-04 by the lead while running the G3 self-gate's capture pose 15 (`tools/overhaul-selfgate/route-g3b.txt`, `/teleloc A9B4013F 133.603592 13.391837 96.330009 …`, the retail capture's EYE pose used as a player pose). Placement/collision, NOT Campaign OVERHAUL v2 (the frame it produces is a correct render of a player in free fall); tactical, own fix. START at `claude-memory/project_placement_cutover_closed.md` (#331) and `project_physics_collision_digest.md`. diff --git a/docs/plans/2026-09-01-campaign-overhaul-world-solidity.md b/docs/plans/2026-09-01-campaign-overhaul-world-solidity.md index 5ce24da2..e69654d6 100644 --- a/docs/plans/2026-09-01-campaign-overhaul-world-solidity.md +++ b/docs/plans/2026-09-01-campaign-overhaul-world-solidity.md @@ -694,7 +694,8 @@ Update immediately when a slice changes state. Chat is not the ledger. | S5-c3 | **LANDED + REVIEW-CLOSED 2026-09-04** at `c673f767e` (reviewed scratch `01e5a15d0`; packet §§17–21). | **C3 SCOPE SELF-GATE PROVISIONAL PASS; whole-renderer finding #470 OPEN. G4 UNPASSED.** | OpenAI retail pass 3/10 PASS and production narrow re-review pass 5/10 PASS. Fix round 3 added ordinary landblock-lifetime ownership for every unique nonzero ladder GfxObj, rearmed walk-frame miss requests, and made the one-tick-before-BeginFrame proof discriminating. Fresh clean campaign: Release 0W/0E; focused 101/101; hermetic 16,811/16,811; InstalledDat 469 pass / the unchanged documented 10 fail / 1 skip; manifests 30/30. Self-gate `logs/selfgate-20260904-223345-s5c3-building-degrade` produced five PNGs, exited 0/gracefully, and left no client. The selected building shells are complete; the Holtburg frame also exposed pre-existing atmospheric ordered-draw sidecar defect #470, which is not a c3 regression and blocks renderer-solid/G4 until repaired. | | S5-c4 | **LANDED + REVIEW-CLOSED 2026-09-05; LEAD GRAPHICAL GATE PROVISIONAL PASS.** Campaign stack `75664805f` -> `15ed57a1e` -> `d5cfd1c91` -> `03a108ffa`; reviewed scratch tip `db8136448`; packet §§22–26. | G4 UNPASSED | Retail/material pass 3/10 PASS. Full production pass 4/10 found one classic/private detail-off regression; fix round 3 restored the prior AlphaBlend/coalescing path, and narrow production pass 5/10 PASS reproduced all three mutations. Fresh campaign Release 0W/0E, App 245/245, Content 71/71; scratch hermetic 16,971/16,971 and InstalledDat 469/10/1 with both manifests 32/32. Full recipe-10 bake: 2,237,865 keys, zero failures, SHA `4E0FA6C5…29B59B`. Gate `logs/selfgate-20260905-020703-s5c4-onepass-detail`: 13/13 PNGs, exit 0, graceful, no client left; visual PASS provisional. #471 DONE; #470 narrowed to local-sidecar indexing. | | S5-#470 | **LANDED + REVIEW-CLOSED 2026-09-05; LEAD GRAPHICAL A/B PROVISIONAL PASS.** Campaign implementation stack `15a796c3a` -> `7506e5f14` -> `b333edb4f`; route `19b44e5e3`; reviewed scratch `51f974da4` -> `2cad9c84` -> `98c004aa7`; packet §§27–30. | G4 UNPASSED | Retail/behavior pass 2/10 and production pass 4/10 closed the two evidence-only findings. Fresh campaign Release 0W/0E and focused 48/48; exact scratch hermetic 16,976/16,976 and canonical InstalledDat 386/10/1, manifests 30/30. Pinned gate `logs/selfgate-20260905-032132-s5-470-pinned-shadow-ab-r1`: retail/off -> High -> retail/off, 3/3 PNGs, exit 0, graceful, no client; visual PASS provisional. The stale recipe-8 pre-route launch is excluded and recorded in §30. | -| S5 | IN FLIGHT — c1–c4 plus #470 landed/review-closed/provisionally self-gated; #469 contract written; c5, closeout, and G4 remain | G4 | Packet §§7 and 12–31 are binding. Next: implement, sequentially review, land, and graphically gate §31's #469 authored-light repair; then c5 cleanup, closeout, and G4. Never merge main before G4. | +| S5-#469 | **LANDED + REVIEW-CLOSED 2026-09-05; LEAD GRAPHICAL TRANSITION PROVISIONAL PASS.** Contract `809887524`; reviewed scratch `c09b6cf0f`; campaign implementation `94ddde69a`; route `62efc72cb`; packet §§31–32. | G4 UNPASSED | Retail/deviation pass 1/10 and production pass 2/10 both PASS with no finding. The two atmospheric vertex receivers keep retail's authored unnormalized `uLights` direction across every shadow gate; celestial direction remains for opt-in shadow/volumetric projection; IA-24 corrected in the same commit. Exact scratch: Release 0W/0E, focused 126/126, Vulkan 2/2, hermetic 16,983/16,983, InstalledDat 386/10/1. Fresh campaign Release 0W/0E, focused 82/82, Vulkan 2/2. Gate `logs/selfgate-20260905-040449-s5-469-lighting-transition-r1`: five PNGs, active 2,500-caster/four-cascade High rows, no near-black relight, exit 0/graceful, no client; visual PASS provisional. | +| S5 | IN FLIGHT — c1–c4 plus #470/#469 landed, review-closed, and provisionally self-gated; c5, closeout, and G4 remain | G4 | Packet §§7 and 12–32 are binding. Next: write and execute c5 cleanup, then closeout and G4. Never merge main before G4. | --- diff --git a/docs/research/2026-09-01-overhaul/s5-consumers-material-closeout-packet.md b/docs/research/2026-09-01-overhaul/s5-consumers-material-closeout-packet.md index 5f51e588..be15833c 100644 --- a/docs/research/2026-09-01-overhaul/s5-consumers-material-closeout-packet.md +++ b/docs/research/2026-09-01-overhaul/s5-consumers-material-closeout-packet.md @@ -1,7 +1,7 @@ # Campaign OVERHAUL v2 — S5 consumers, material, and closeout packet -**Status:** S5-c1 through S5-c4 LANDED + REVIEW-CLOSED with lead graphical -gates PROVISIONAL PASS; #470, #469, S5-c5, closeout, and G4 remain. +**Status:** S5-c1 through S5-c4 plus #470/#469 LANDED + REVIEW-CLOSED with lead +graphical gates PROVISIONAL PASS; S5-c5, closeout, and G4 remain. **Branch:** `claude/campaign-w-retail-frame-walk`. **Gate:** G4 remains unpassed. Nothing merges to `main` before G4. @@ -2852,3 +2852,78 @@ shutdown. PASS requires no whole-world base-light jump as shadow work gates, while pack-active shadow direction/visibility still changes and the final retail frame restores. Record exact PNG paths; the result remains provisional until owner inspection. + +## 32. S5-#469 landing, review closeout, and graphical transition — 2026-09-05 + +S5 issue #469 is **LANDED + REVIEW-CLOSED**. Contract `809887524`; reviewed +scratch implementation `c09b6cf0f`; campaign implementation `94ddde69a`; fixed- +pose route `62efc72cb`. + +The implementation removes the binary shadow-gate/celestial-direction branch +from both atmospheric vertex receivers. Mesh now always uses the exact +unnormalized `-uLights[i].dirAndRange.xyz`; terrain always uses the exact +unnormalized `-uLights[0].dirAndRange.xyz`. Fragment receiver shadow +projection/bias/PCF and atmospheric volumetrics continue to use the selected +celestial direction. IA-24 was amended in the same implementation commit to +record that ownership and its possible light/shadow-angle separation. + +Retail/deviation review pass 1/10 returned **PASS with no findings** after +independently verifying `SkyDesc::GetLighting`, +`LScape::set_landscape_lighting`, and +`PrimD3DRender::UpdateLightsInternal` against the matching 2013 executable/PDB +and reproducing both old receiver branches plus the old IA-24 assertion. +Production/gate-honesty pass 2/10 returned **PASS with no findings** after +inspecting the complete source -> compiler -> SPIR-V -> pipeline/descriptor -> +pixel/readback path, independently reproducing all four code mutations, and +proving the dedicated Vulkan lane fails rather than skips without a driver. + +Exact reviewed scratch evidence at `c09b6cf0f`: + +- compiled 23/23 shader pairs; mesh vertex SPIR-V SHA-256 + `AB642649B055A564B49C088BEAC9601593508CAB69778B71719C66C9A812CD3C` and + terrain vertex SPIR-V SHA-256 + `7DE30E426401F637A28C1F1F8D69D1A465462AD7A5CEE1927FAE7E1BA5355B1F`; +- Release solution build 0 warnings / 0 errors; +- implementer-focused 64/64 and reviewer-focused 126/126; +- physical `Lane=Vulkan` 2/2, including the committed production mesh+terrain + lighting witness; +- `artifacts/s5-469-hermetic-c09b6cf0f`: 16,983 passed / 0 failed / 0 skipped, + exact clean tip, manifest 32/32; and +- `artifacts/s5-469-installeddat-c09b6cf0f`: canonical + `Lane=InstalledDat&Purpose!=Diagnostic`, 386 passed / the unchanged ten + accepted failures / one accepted skip, exact clean tip, manifest 30/30. + +The lead independently rechecked the executable/PDB identity and all three +function-range hashes, inspected the production/test diff, reproduced the +generated hashes, and verified both artifact manifests with zero bad entries. +Fresh campaign verification after integration: Release 0 warnings / 0 errors; +focused atmospheric/receiver/manifest/source-resolver set 82/82; physical +`Lane=Vulkan` 2/2. Recipe 10 and prepared content are unchanged. + +The lead graphical transition is **PROVISIONAL PASS pending owner inspection** +at clean `62efc72cb`. Before launch, ACE listened on UDP 9000 as PID 13340 and +neither acdream nor retail client was running. One route used the verified +recipe-10 session, established authored time, 1024 x 768 framebuffer, and +camera before acceptance, then held pose/camera/framebuffer fixed across +retail/off -> High -> retail/off -> High and advanced the authored light once +for the final High frame. Run +`logs/selfgate-20260905-040449-s5-469-lighting-transition-r1` produced five +PNGs, exited 0, confirmed graceful logout, emitted no fatal/validation match, +left no client, and left ACE running: + +- `artifacts/screenshots/s5-469-noon-retail-before.png`; +- `artifacts/screenshots/s5-469-noon-high.png`; +- `artifacts/screenshots/s5-469-noon-retail-after.png`; +- `artifacts/screenshots/s5-469-noon-high-repeat.png`; and +- `artifacts/screenshots/s5-469-dusk-high.png`. + +Both High noon metadata rows prove active shadow work: 2,500 selected casters, +four cascades, 26 pack draws, no failure, and directional-shadow strengths +0.5429/0.5300. The dusk High row is likewise active and whole: 2,500 casters, +four cascades, 26 draws, strength 0.5760. Lead original-resolution inspection +finds the terrain, buildings, foliage, local player, equipment, and ordinary +sidecars present in every frame. The former near-black binary whole-world +relight is gone; the retail-before/after frames restore, while High retains its +expected shadows and post-processing. This closes #469; no new divergence row +is required beyond the truthful IA-24 amendment. Next is S5-c5, then closeout +and G4. Nothing has merged to `main`.