docs(render): establish Campaign OVERHAUL baseline
This commit is contained in:
parent
b3b7d922f1
commit
fba07e7712
3 changed files with 1953 additions and 6 deletions
|
|
@ -1,6 +1,10 @@
|
||||||
# Campaign FW — the retail frame walk (implementation plan)
|
# Campaign FW — the retail frame walk (implementation plan)
|
||||||
|
|
||||||
**Status:** ACTIVE (opened 2026-08-30; spec approved by owner 2026-08-30).
|
**Status:** ACTIVE (opened 2026-08-30; spec approved by owner 2026-08-30).
|
||||||
|
**Successor execution ledger (owner-requested 2026-09-01):**
|
||||||
|
[`docs/plans/2026-09-01-campaign-overhaul-world-solidity.md`](2026-09-01-campaign-overhaul-world-solidity.md).
|
||||||
|
Campaign OVERHAUL preserves FW as evidence/history but owns all further
|
||||||
|
world-construction and render-solidity implementation work.
|
||||||
**Spec (approved):**
|
**Spec (approved):**
|
||||||
[`docs/superpowers/specs/2026-08-30-campaign-w-retail-frame-walk-design.md`](../superpowers/specs/2026-08-30-campaign-w-retail-frame-walk-design.md)
|
[`docs/superpowers/specs/2026-08-30-campaign-w-retail-frame-walk-design.md`](../superpowers/specs/2026-08-30-campaign-w-retail-frame-walk-design.md)
|
||||||
— note: the campaign letter is **FW** (frame walk); the spec predates the
|
— note: the campaign letter is **FW** (frame walk); the spec predates the
|
||||||
|
|
@ -452,12 +456,17 @@ Post-refactor dense Arwic uncapped vs the SAME baseline: CPU p50
|
||||||
is now FASTER than the old static path. The refactor's own crash
|
is now FASTER than the old static path. The refactor's own crash
|
||||||
round (VK_ERROR_DEVICE_LOST) taught the binding contract: leaf draws
|
round (VK_ERROR_DEVICE_LOST) taught the binding contract: leaf draws
|
||||||
and alpha flushes rebind set-0 between ranges, so DrawOrderedRange
|
and alpha flushes rebind set-0 between ranges, so DrawOrderedRange
|
||||||
rebinds per call; only the ring WRITES are once-per-frame. FOLLOW-UP
|
rebinds per call; only the ring WRITES are once-per-frame.
|
||||||
FILED: alloc p50 still ~1.5 MB/frame on the walk path (baseline
|
**FW6 ALLOCATION CLOSEOUT (`b8befded`).** The ~1.5 MiB/frame follow-up is
|
||||||
133 KB) - the per-frame driver/leaf/populator object graph in
|
closed: `RetailPViewRenderer` now owns one retained `WalkFrameDriver`,
|
||||||
DrawWalkDrivenStatics; hoist to renderer fields with per-frame
|
`WalkProductionFrameContext`, and `WalkProductionLeafRenderer`; `RebindFrame`/
|
||||||
Reset (FW3.4 closeout or FW6 polish; CPU-neutral today, GC-hitch
|
`Reset` replace per-frame reconstruction, and abort/reset paths preserve the
|
||||||
hygiene).
|
terminal ledger. The exact-binary nine-stop closeout route reports steady
|
||||||
|
allocation p50 between 138.6 and 204.5 KiB/frame across its stops (the old
|
||||||
|
dense-town tail was ~1,500 KiB/frame; the pre-walk baseline was 133 KiB/frame).
|
||||||
|
The connected route is not the original dense-Arwic perf vehicle, so this is
|
||||||
|
mechanism + bounded-live evidence rather than a fabricated same-scene A/B; the
|
||||||
|
campaign's CPU stop rule was already cleared by the exact dense-Arwic pair.
|
||||||
|
|
||||||
- **FW3.4 — perf checkpoint + gates.** BASELINE CORRECTION: the
|
- **FW3.4 — perf checkpoint + gates.** BASELINE CORRECTION: the
|
||||||
519.7 fps / 1.869 / 1.096 ms numbers are the Aerlinthe
|
519.7 fps / 1.869 / 1.096 ms numbers are the Aerlinthe
|
||||||
|
|
|
||||||
1576
docs/plans/2026-09-01-campaign-overhaul-world-solidity.md
Normal file
1576
docs/plans/2026-09-01-campaign-overhaul-world-solidity.md
Normal file
File diff suppressed because it is too large
Load diff
362
docs/research/2026-09-01-overhaul/oh0-baseline.md
Normal file
362
docs/research/2026-09-01-overhaul/oh0-baseline.md
Normal file
|
|
@ -0,0 +1,362 @@
|
||||||
|
# Campaign OVERHAUL OH0 baseline
|
||||||
|
|
||||||
|
Date: 2026-09-01
|
||||||
|
Worktree: `C:\Users\erikn\source\repos\acdream\.claude\worktrees\peaceful-blackburn-5333f0`
|
||||||
|
Branch: `claude/campaign-w-retail-frame-walk`
|
||||||
|
Purpose: preserve and classify the exact pre-overhaul state before any OH
|
||||||
|
production behavior is changed.
|
||||||
|
|
||||||
|
## Outcome
|
||||||
|
|
||||||
|
OH0 found a green but heavily modified renderer state. It is recoverable, but
|
||||||
|
it is not one accepted fix. The dirty tree consists of several coherent
|
||||||
|
candidate mechanisms, diagnostic experiments, tests, and documentation. No
|
||||||
|
unrelated/user-owned semantic change was found. No dirty behavioral hunk is
|
||||||
|
repository-proven user-accepted, so this baseline deliberately calls them
|
||||||
|
**candidates** or **investigation state**.
|
||||||
|
|
||||||
|
The accepted history anchors remain:
|
||||||
|
|
||||||
|
- `b8befded` — accepted pre-overhaul rendering anchor named by the campaign.
|
||||||
|
- `e880860291a79e0cb20454710567d86ad8731675` — OH0 parent HEAD.
|
||||||
|
|
||||||
|
Checkpoint `b3b7d922` (`checkpoint(render): preserve pre-overhaul
|
||||||
|
investigation state`) is the recovery anchor for the classified semantic
|
||||||
|
state. It is not a visual or retail-fidelity acceptance claim.
|
||||||
|
|
||||||
|
## Repository state
|
||||||
|
|
||||||
|
| Field | Value |
|
||||||
|
|---|---|
|
||||||
|
| Branch | `claude/campaign-w-retail-frame-walk` |
|
||||||
|
| Parent HEAD | `e880860291a79e0cb20454710567d86ad8731675` |
|
||||||
|
| Upstream | `origin/claude/campaign-w-retail-frame-walk` |
|
||||||
|
| Upstream relation | behind `0`, ahead `27` |
|
||||||
|
| Staged paths | `0` |
|
||||||
|
| Dirty paths before this document | `53` |
|
||||||
|
| Dirty-path composition | `45` tracked semantic/intentional diffs, `5` CRLF-normalization-only entries, `3` untracked |
|
||||||
|
| Submodule | `references/WorldBuilder` at `34460c44d7fb921afa50ee30288a53236f50f451`, clean |
|
||||||
|
| Tracked diff size | 2,945 insertions, 626 deletions across 45 semantic tracked paths |
|
||||||
|
|
||||||
|
Five status entries have no filtered semantic diff and differ only by working
|
||||||
|
tree line endings:
|
||||||
|
|
||||||
|
- `src/AcDream.App/Rendering/Scene/RenderProjectionRecordFactory.cs`
|
||||||
|
- `src/AcDream.App/Rendering/Scene/RenderSceneContracts.cs`
|
||||||
|
- `src/AcDream.Core/Physics/ShadowPartBox.cs`
|
||||||
|
- `src/AcDream.Core/World/MeshRef.cs`
|
||||||
|
- `src/AcDream.Core/World/WorldEntity.cs`
|
||||||
|
|
||||||
|
`src/AcDream.App/Streaming/LandblockBuildFactory.cs` removes one blank line
|
||||||
|
only. Those six paths are excluded from the semantic checkpoint and left
|
||||||
|
untouched.
|
||||||
|
|
||||||
|
## Complete semantic classification
|
||||||
|
|
||||||
|
### Plan and documentation
|
||||||
|
|
||||||
|
- `docs/plans/2026-09-01-campaign-overhaul-world-solidity.md` is the new OH
|
||||||
|
execution plan.
|
||||||
|
- `docs/plans/2026-08-30-campaign-fw-frame-walk.md` records the accepted
|
||||||
|
`b8befded` allocation closeout and links to OH.
|
||||||
|
- `docs/architecture/worldbuilder-inventory.md` mixes candidate assertions
|
||||||
|
about recipe 7, whole-mesh leaves, and reconstructed render-shadow
|
||||||
|
membership. Those statements are evidence to review, not closed truth.
|
||||||
|
- `docs/launch-options.md` documents cathedral probes, but the dirty version
|
||||||
|
omits `ACDREAM_PROBE_FACILITY_STAIRS` and the behavior-changing
|
||||||
|
`ACDREAM_PROBE_CATHEDRAL_SKIP_PUNCH`. It stays with diagnostic quarantine.
|
||||||
|
|
||||||
|
### Prepared-content recipe 7 candidate
|
||||||
|
|
||||||
|
This coherent candidate carries the authored DrawingBSP root sphere into
|
||||||
|
prepared GfxObj records and requires one explicit full rebuild from bake
|
||||||
|
recipe 6 to 7:
|
||||||
|
|
||||||
|
- `src/AcDream.Content/MeshExtractor.cs`
|
||||||
|
- `src/AcDream.Content/Pak/PakFormat.cs`
|
||||||
|
- `src/AcDream.Launcher.Core/Installation/ContentMigrationCatalog.cs`
|
||||||
|
- `src/AcDream.Launcher.Core/Installation/LauncherInstallRecordStore.cs`
|
||||||
|
- `tests/AcDream.Content.Tests/MeshExtractorSolidFaceExtractionTests.cs`
|
||||||
|
- `tests/AcDream.Content.Tests/InstalledPreparedCollisionCatalogTests.cs`
|
||||||
|
- `tests/AcDream.Launcher.Core.Tests/Installation/ContentMigrationCatalogTests.cs`
|
||||||
|
|
||||||
|
This is not yet an accepted OH mechanism. OH2/OH3 must decide which authored
|
||||||
|
bounds and graph owner retail actually uses.
|
||||||
|
|
||||||
|
### Independent lighting-review candidate
|
||||||
|
|
||||||
|
This group removes last-frame drawable-cell filtering and selects from every
|
||||||
|
resident light:
|
||||||
|
|
||||||
|
- `src/AcDream.Core/Lighting/LightManager.cs`
|
||||||
|
- `src/AcDream.App/Rendering/WorldRenderFrameBuilder.cs`
|
||||||
|
- `tests/AcDream.Core.Tests/Lighting/LightManagerTests.cs`
|
||||||
|
- `tests/AcDream.App.Tests/Rendering/WorldRenderFrameBuilderTests.cs`
|
||||||
|
|
||||||
|
It is independent of OH0 and is not acceptance-proven. The parallel retail
|
||||||
|
review found that retail separates a seven-light dynamic pool from a separate
|
||||||
|
static bake, inserts the viewer light first, and derives candidates from the
|
||||||
|
current EnvCell plus authored `VisibleCells`/`stab_list`. OH must keep this
|
||||||
|
group quarantined unless a later world-ownership slice proves a dependency.
|
||||||
|
|
||||||
|
### Exact portal depth-state port candidate
|
||||||
|
|
||||||
|
This atomic group replaces stencil mark/write plus bias with one
|
||||||
|
ALWAYS/write/no-stencil pass and removes the bias shader/tests:
|
||||||
|
|
||||||
|
- `src/AcDream.App/Rendering/Gpu/GpuPipelineDescription.cs`
|
||||||
|
- `src/AcDream.App/Rendering/PortalDepthMaskRenderer.cs`
|
||||||
|
- `src/AcDream.App/Rendering/PortalDepthMaskRenderer.Rhi.cs`
|
||||||
|
- `src/AcDream.App/Rendering/Shaders/portal_depth.vert`
|
||||||
|
- `src/AcDream.App/Rendering/Shaders/spv/portal_depth.vert.spv`
|
||||||
|
- `src/AcDream.App/Rendering/Shaders/spv/shaders.manifest.json`
|
||||||
|
- deleted `tests/AcDream.App.Tests/Rendering/Issue129PunchBiasTests.cs`
|
||||||
|
- untracked `tests/AcDream.App.Tests/Rendering/PortalDepthMaskRetailStateTests.cs`
|
||||||
|
|
||||||
|
The GPU state may match the isolated retail call, but activating it before
|
||||||
|
the exact painter interleave exists removes the accepted #117 safeguard.
|
||||||
|
Therefore this is preserved as an indivisible candidate, not accepted output.
|
||||||
|
|
||||||
|
### Walk-owned exit-seal view candidate
|
||||||
|
|
||||||
|
The following changes borrow planes from exact walk clip slots and stamp exit
|
||||||
|
seals per captured flood view rather than the legacy assembly/no-clip
|
||||||
|
fallback:
|
||||||
|
|
||||||
|
- `src/AcDream.App/Rendering/ClipFrame.cs`
|
||||||
|
- portions of `src/AcDream.App/Rendering/RetailPViewPassExecutor.cs`
|
||||||
|
- portions of `src/AcDream.App/Rendering/RetailPViewRenderer.cs`
|
||||||
|
- portions of `src/AcDream.App/Rendering/Walk/WalkFrameDriver.cs`
|
||||||
|
- `tests/AcDream.App.Tests/Rendering/ClipFrameLayoutTests.cs`
|
||||||
|
- portions of `tests/AcDream.App.Tests/Rendering/Walk/WalkFrameDriverTests.cs`
|
||||||
|
|
||||||
|
Several of those files also contain unrelated behavior and diagnostics, so
|
||||||
|
future OH work must split by hunk rather than treating the files as one owner.
|
||||||
|
|
||||||
|
### Reconstructed static/dynamic membership candidate
|
||||||
|
|
||||||
|
This group rebuilds static render-cell membership from visual bounds, buckets
|
||||||
|
dynamics by physics CELLARRAY, inherits equipped-child root cells, and removes
|
||||||
|
the static outdoor prune:
|
||||||
|
|
||||||
|
- `src/AcDream.App/Composition/FrameRootComposition.cs`
|
||||||
|
- portions of `src/AcDream.App/Rendering/Walk/WalkProductionWorldData.cs`
|
||||||
|
- `src/AcDream.Core/Physics/CellTransit.cs`
|
||||||
|
- `src/AcDream.Core/Physics/ShadowObjectRegistry.cs`
|
||||||
|
- `src/AcDream.Core/Physics/ShadowShapeBuilder.cs`
|
||||||
|
- `tests/AcDream.App.Tests/Rendering/Issue177StairDescentCameraFloodTests.cs`
|
||||||
|
- `tests/AcDream.Core.Tests/Physics/CellTransitFindTransitCellsBoxTests.cs`
|
||||||
|
- portions of `tests/AcDream.App.Tests/Rendering/Walk/WalkProductionWorldDataTests.cs`
|
||||||
|
|
||||||
|
This is explicitly reconstruction evidence rather than the intended OH3
|
||||||
|
architecture: `WalkProductionWorldData` is a competing App-owned world model,
|
||||||
|
and the `CellTransit` prune removal also changes collision membership. The
|
||||||
|
portal-less building-shell fallback from anchor cell to landscape-position
|
||||||
|
cell is a distinct behavior inside the same production/test files and must be
|
||||||
|
reviewed separately.
|
||||||
|
|
||||||
|
### Built-mesh, part-stamp, and shell-stamp candidate
|
||||||
|
|
||||||
|
This group changes admitted portal-view meshes to coarse sphere admission plus
|
||||||
|
whole-mesh slot 0, adds per-part stamps and a local-player bypass, and rearms
|
||||||
|
shell/part stamps at a mid-frame boundary:
|
||||||
|
|
||||||
|
- portions of `src/AcDream.App/Rendering/Wb/WbDrawDispatcher.WalkClassify.cs`
|
||||||
|
- portions of `src/AcDream.App/Rendering/Walk/WalkFrameDriver.cs`
|
||||||
|
- portions of `src/AcDream.App/Rendering/RetailPViewPassExecutor.WalkLeaf.cs`
|
||||||
|
- `tests/AcDream.App.Tests/Rendering/Walk/WalkProductionWorldConformanceTests.cs`
|
||||||
|
- portions of `tests/AcDream.App.Tests/Rendering/Walk/WalkStaticStreamPopulatorTests.cs`
|
||||||
|
- portions of `tests/AcDream.App.Tests/Rendering/Walk/WalkFrameDriverTests.cs`
|
||||||
|
|
||||||
|
This reverses the mechanism in accepted commit `11e68aad`; it is high-risk
|
||||||
|
until OH1 arbitrates retail's built-mesh versus non-built-mesh branches and
|
||||||
|
the retail oracle proves the leaf order.
|
||||||
|
|
||||||
|
### Diagnostic-only apparatus
|
||||||
|
|
||||||
|
- `src/AcDream.App/Rendering/Walk/WalkPView.cs`
|
||||||
|
- `src/AcDream.App/Rendering/Wb/WbDrawDispatcher.OrderedStream.cs`
|
||||||
|
- `src/AcDream.App/Rendering/Walk/WalkStaticStreamPopulator.cs`
|
||||||
|
- untracked `src/AcDream.App/Rendering/Wb/WbDrawDispatcher.FacilityStairProbe.cs`
|
||||||
|
- `tools/A8CellAudit/Program.cs`
|
||||||
|
|
||||||
|
The Facility probe partial is a compile dependency of calls in the other
|
||||||
|
three App files and must travel with them. `A8CellAudit` mixes DrawingBSP
|
||||||
|
audits with cell/setup diagnostics; it remains evidence tooling.
|
||||||
|
|
||||||
|
`src/AcDream.Core/Rendering/RenderingDiagnostics.cs` and portions of
|
||||||
|
`WalkFrameDriver`, both pass executors, `RetailPViewRenderer`,
|
||||||
|
`WalkProductionWorldData`, and `WbDrawDispatcher.WalkClassify` mix print-only
|
||||||
|
traces with hard-coded cathedral carrier suppressions and skip switches. They
|
||||||
|
are preserved only as quarantined investigation apparatus and are scheduled
|
||||||
|
for removal in OH10.
|
||||||
|
|
||||||
|
## High-risk facts carried into OH1
|
||||||
|
|
||||||
|
1. No dirty behavioral change is acceptance-proven.
|
||||||
|
2. Whole-mesh slot-0 behavior reverses accepted `11e68aad`.
|
||||||
|
3. The one-pass far-Z punch removes #117's guard before exact painter
|
||||||
|
interleave is present.
|
||||||
|
4. Static membership is reconstructed from AABBs in App, matching the
|
||||||
|
duplicate-owner problem OH3 is meant to eliminate.
|
||||||
|
5. The `CellTransit` outdoor-prune change affects collision as well as render
|
||||||
|
registration.
|
||||||
|
6. Dirty architecture documentation overstates unreviewed candidates as
|
||||||
|
shipped truth.
|
||||||
|
|
||||||
|
## Behavior-changing diagnostic flags
|
||||||
|
|
||||||
|
The following variables were checked at Process, User, and Machine scopes.
|
||||||
|
All were absent at OH0, and every implementation tests for the exact string
|
||||||
|
`"1"` or defaults a requested cell ID to zero. Therefore no probe is enabled
|
||||||
|
in a normal launch from this environment.
|
||||||
|
|
||||||
|
| Variable | Kind | OH0 value |
|
||||||
|
|---|---|---|
|
||||||
|
| `ACDREAM_PROBE_CATHEDRAL_SKIP_PUNCH` | suppresses punch behavior | unset |
|
||||||
|
| `ACDREAM_PROBE_CATHEDRAL_SKIP_SEALS` | suppresses exit seals | unset |
|
||||||
|
| `ACDREAM_PROBE_CATHEDRAL_SKIP_CELL_SHELLS` | suppresses cell shells | unset |
|
||||||
|
| `ACDREAM_PROBE_CATHEDRAL_SKIP_SOUTH_LOOKIN_SHELLS` | scene-specific shell suppression | unset |
|
||||||
|
| `ACDREAM_PROBE_CATHEDRAL_SKIP_LOOKIN_SHELL` | requested-cell shell suppression | unset |
|
||||||
|
| `ACDREAM_PROBE_CATHEDRAL_SKIP_SOUTH_BUILDING_SHELL` | scene-specific building suppression | unset |
|
||||||
|
| `ACDREAM_PROBE_CATHEDRAL_SHELL_ORDER` | print-only shell-order trace | unset |
|
||||||
|
|
||||||
|
Additional Facility trace variables are diagnostic output controls. They do
|
||||||
|
not alter the accepted draw path, but they remain quarantined with the
|
||||||
|
behavior probes until OH10 cleanup.
|
||||||
|
|
||||||
|
## Build and focused automated baseline
|
||||||
|
|
||||||
|
All commands ran from the binding worktree against the uncommitted state
|
||||||
|
classified above.
|
||||||
|
|
||||||
|
| Gate | Result |
|
||||||
|
|---|---|
|
||||||
|
| `dotnet build AcDream.slnx -c Release --nologo` | PASS — 0 warnings, 0 errors, 23.29 s |
|
||||||
|
| App walk/depth/frame focused filter | PASS — 272 passed, 1 skipped, 0 failed |
|
||||||
|
| Content geometry focused filter | PASS — 12 passed, 0 skipped, 0 failed |
|
||||||
|
| Core membership/light focused filter | PASS — 33 passed, 0 skipped, 0 failed |
|
||||||
|
| Launcher migration focused filter | PASS — 2 passed, 0 skipped, 0 failed |
|
||||||
|
|
||||||
|
The App filter included `Rendering.Walk`, `PortalDepthMask`,
|
||||||
|
`Issue177StairDescentCameraFloodTests`, `ClipFrameLayoutTests`, and
|
||||||
|
`WorldRenderFrameBuilderTests`. Green tests prove the current candidates are
|
||||||
|
internally consistent; they do not prove retail parity or visual acceptance.
|
||||||
|
|
||||||
|
## Installed source and prepared-package identity
|
||||||
|
|
||||||
|
Source directory: `C:\Users\erikn\Documents\Asheron's Call`
|
||||||
|
|
||||||
|
| Artifact | Bytes | SHA-256 |
|
||||||
|
|---|---:|---|
|
||||||
|
| `client_portal.dat` | 926,941,184 | `DC6E500BA22E6B186DB7171E3F3345238B6444C85D798ADC85E550973B8D12E4` |
|
||||||
|
| `client_cell_1.dat` | 348,127,232 | `6DB0ABF00FBCEED62C3F1EE842EE7C1F423D732BED77A5B7C102EE89A52AB99E` |
|
||||||
|
| `client_highres.dat` | 133,169,152 | `503E0828D14F2F9CCBC31431E1055AC188464BF4B499DE37F4C3D5B2D9F3E727` |
|
||||||
|
| `client_local_English.dat` | 1,048,576 | `E85C820280C88FAC7DF6C8043F5E24596E9C8774193AF4123D756546F78FB2BB` |
|
||||||
|
| `acdream.pak` | 597,144,496 | `0AD2A24C00579FC40E93E5C73FF800FCE587665D831AACD11DEACBCC59A84D6D` |
|
||||||
|
| `acdream.recipe6.pak` | 597,229,424 | `37BC0EA1778F899AF9E3B2397937D373F69D615B15D3E32041BF389D93B624BF` |
|
||||||
|
|
||||||
|
Active `acdream.pak` header:
|
||||||
|
|
||||||
|
| Field | Value |
|
||||||
|
|---|---:|
|
||||||
|
| Magic | `0x4B504341` |
|
||||||
|
| Format | `2` |
|
||||||
|
| Portal iteration | `2072` |
|
||||||
|
| Cell iteration | `982` |
|
||||||
|
| HighRes iteration | `497` |
|
||||||
|
| Language iteration | `994` |
|
||||||
|
| TOC offset | `543435712` |
|
||||||
|
| TOC count | `2237866` |
|
||||||
|
| Bake tool version | `7` |
|
||||||
|
|
||||||
|
Compiled shader manifest SHA-256:
|
||||||
|
`65AE59DA995B9FBAA997F50A12B07FEEBB6CDA4121C881C5921BFF9ACE752CCF`.
|
||||||
|
|
||||||
|
## Pre-overhaul file hash manifest
|
||||||
|
|
||||||
|
These hashes capture every status path before OH0 added this document. A
|
||||||
|
deleted path is represented by the parent commit plus the explicit deletion.
|
||||||
|
|
||||||
|
| Path | Status | Bytes | SHA-256 |
|
||||||
|
|---|---|---:|---|
|
||||||
|
| `docs/architecture/worldbuilder-inventory.md` | ` M` | 40809 | `275EACBB7AF5C6837558DE95ED0C973038E83E89A2EA1B4B10FCCD11AAC7378B` |
|
||||||
|
| `docs/launch-options.md` | ` M` | 89617 | `1DEF166EF74A82A9FF4151FF3AB95A46DB03F951BDE44CBCF0415F3D06DE85ED` |
|
||||||
|
| `docs/plans/2026-08-30-campaign-fw-frame-walk.md` | ` M` | 43730 | `988DACAC01E2367DBBCFD49DC1F146E8EDE2CE96892BCB9C25874D6A752B50F6` |
|
||||||
|
| `src/AcDream.App/Composition/FrameRootComposition.cs` | ` M` | 40619 | `55BB45148909191BBF4B5EDACAB6273330BCD2AE37B60F4370426A3C14138146` |
|
||||||
|
| `src/AcDream.App/Rendering/ClipFrame.cs` | ` M` | 14769 | `EA3C52E7FCFA51E4F9C21CDC33D89215F9E9768332DD88E831265E738E06BB01` |
|
||||||
|
| `src/AcDream.App/Rendering/Gpu/GpuPipelineDescription.cs` | ` M` | 16982 | `108661215FE9DFF414ABFDB050985C3A0946A38EFA509ABB2A93443F8CB06A30` |
|
||||||
|
| `src/AcDream.App/Rendering/PortalDepthMaskRenderer.Rhi.cs` | ` M` | 8820 | `93B559C8D30773ABB9E7DCA0884A0E6A37A9E16BA9AE13FDA1D4354E68D91022` |
|
||||||
|
| `src/AcDream.App/Rendering/PortalDepthMaskRenderer.cs` | ` M` | 5070 | `D9C8D245C5CC7CFC96762AAEA28F7D74B3F1B0CFF7C7BA661C5FEF8806CBC62D` |
|
||||||
|
| `src/AcDream.App/Rendering/RetailPViewPassExecutor.WalkLeaf.cs` | ` M` | 12773 | `81DE87E5687DD79901DC72714BBF21FE5295AEE1E0A4093BCF5A3B91AAAA95DB` |
|
||||||
|
| `src/AcDream.App/Rendering/RetailPViewPassExecutor.cs` | ` M` | 19048 | `91B688E4ADE207FF016441979537B71C0B4AE6D5C4BF055EC0E0B0E6A6961CCA` |
|
||||||
|
| `src/AcDream.App/Rendering/RetailPViewRenderer.cs` | ` M` | 41456 | `30193DE518BF3BF1312AC2E1A34CA9AF76FF38E0B9A0E848F15A6628C2A95920` |
|
||||||
|
| `src/AcDream.App/Rendering/Scene/RenderProjectionRecordFactory.cs` | ` M` | 5342 | `A0C28300F80528BBD63FF034139DB7E353146B27E5782AEAFAF882AA244DD880` |
|
||||||
|
| `src/AcDream.App/Rendering/Scene/RenderSceneContracts.cs` | ` M` | 21927 | `2D043913905BB45F1E3E24290CEDA96678AAF6EEE89FED17FA8586DFBAA27D8A` |
|
||||||
|
| `src/AcDream.App/Rendering/Shaders/portal_depth.vert` | ` M` | 2632 | `004B91F8891EF63C3E9051E098F7FD5251537A8FB756FE647C22F5A729561EAE` |
|
||||||
|
| `src/AcDream.App/Rendering/Shaders/spv/portal_depth.vert.spv` | ` M` | 1900 | `4AC1C452E7AC0D08A32F67FB03F21229AF2D1605BAA81F407240A3626251DFD7` |
|
||||||
|
| `src/AcDream.App/Rendering/Shaders/spv/shaders.manifest.json` | ` M` | 11066 | `65AE59DA995B9FBAA997F50A12B07FEEBB6CDA4121C881C5921BFF9ACE752CCF` |
|
||||||
|
| `src/AcDream.App/Rendering/Walk/WalkFrameDriver.cs` | ` M` | 80236 | `9E82A07B0CA77947657221566625ABB6305E476D3EA436E95F8F5006AD6C6F3C` |
|
||||||
|
| `src/AcDream.App/Rendering/Walk/WalkPView.cs` | ` M` | 26293 | `565FC89767A6910EAB4E81785EB5CCF1D2F272FA37FD77BDB885F9D8135446B7` |
|
||||||
|
| `src/AcDream.App/Rendering/Walk/WalkProductionWorldData.cs` | ` M` | 34723 | `86F2A43657E884BAE32D166A5C70084559C6D6A900810FD0DD2C76F1D7AC4CF1` |
|
||||||
|
| `src/AcDream.App/Rendering/Walk/WalkStaticStreamPopulator.cs` | ` M` | 8896 | `FEA240901A82FCBE6B9B2DAED19DCDC985BF460E771F7820D8601F1136043F82` |
|
||||||
|
| `src/AcDream.App/Rendering/Wb/WbDrawDispatcher.OrderedStream.cs` | ` M` | 31069 | `355FE62DBAA8988E69BD2A468DE44D7A5AE799D0E0649559C885900C7F6F0824` |
|
||||||
|
| `src/AcDream.App/Rendering/Wb/WbDrawDispatcher.WalkClassify.cs` | ` M` | 41357 | `13A669521266D49396A8C8F3D34DA2064EDBE2BD0613F5112C0D4BCCDE404D87` |
|
||||||
|
| `src/AcDream.App/Rendering/WorldRenderFrameBuilder.cs` | ` M` | 27021 | `A34C66BEBFF07538EC55BCC65454BEC61811FB5F7E724C749D8351A25741E585` |
|
||||||
|
| `src/AcDream.App/Streaming/LandblockBuildFactory.cs` | ` M` | 37350 | `8BDDB5A07C32BB083475836A8C3F782F980E30E2D532F214A8A9AA5E80735C48` |
|
||||||
|
| `src/AcDream.Content/MeshExtractor.cs` | ` M` | 72211 | `5453D06062416A2B04FFC900715C76BDA3E22CD36B68F30514D28FA5E0364C99` |
|
||||||
|
| `src/AcDream.Content/Pak/PakFormat.cs` | ` M` | 8334 | `F260AB6742A576DDB84AF11A75089AD7645C9CF180456B341C9ECA6B07489757` |
|
||||||
|
| `src/AcDream.Core/Lighting/LightManager.cs` | ` M` | 29182 | `F58998E7AAE1CC7C2E4D0E8EA76F23E3CBFCE9CE71B55104BD7D6671DCA60A26` |
|
||||||
|
| `src/AcDream.Core/Physics/CellTransit.cs` | ` M` | 76728 | `74A4DE885A309AA5060DB130B0C13706C93A8B1A51C4C0675D91A777EA85ED91` |
|
||||||
|
| `src/AcDream.Core/Physics/ShadowObjectRegistry.cs` | ` M` | 115614 | `D297D2CE83EF2341A438E2F697C63A0C27A1C6E4FAE62E18A904D9CB88CA57E7` |
|
||||||
|
| `src/AcDream.Core/Physics/ShadowPartBox.cs` | ` M` | 8694 | `49F7A142CE8A1AE5EEBCB33E31B81421F84539D2CAD212D75ED5E36829190DF3` |
|
||||||
|
| `src/AcDream.Core/Physics/ShadowShapeBuilder.cs` | ` M` | 23478 | `9FA4EE057C09B0BF0BBEFA618F1A9768F22A7EE99FF55596B334E32C55EA966F` |
|
||||||
|
| `src/AcDream.Core/Rendering/RenderingDiagnostics.cs` | ` M` | 37557 | `9A251F8785F7F4256E5D30408178A7B4365B240FF01196E0F3E62C22AC76EAE5` |
|
||||||
|
| `src/AcDream.Core/World/MeshRef.cs` | ` M` | 1778 | `9349926D73AEDC97A95726FAC154B84FC6D4EBF2DB6DD64BE50014291428A221` |
|
||||||
|
| `src/AcDream.Core/World/WorldEntity.cs` | ` M` | 14597 | `81922AAA930B336ECC4167B7B342D9B65336EEB39ECBF61C1607ED530423CF57` |
|
||||||
|
| `src/AcDream.Launcher.Core/Installation/ContentMigrationCatalog.cs` | ` M` | 4883 | `5C2CC4B1D6BF3BD6D3BE837E405E969C27235EC3845A449D97C50784E9AB21F4` |
|
||||||
|
| `src/AcDream.Launcher.Core/Installation/LauncherInstallRecordStore.cs` | ` M` | 24440 | `787360E3D426DE24BB1CFE00CD6FBC69B9AFD86E18E161412EEBFB14861C6990` |
|
||||||
|
| `tests/AcDream.App.Tests/Rendering/ClipFrameLayoutTests.cs` | ` M` | 8033 | `9C340D45BB703D1107B34C9BE40162D9E6C69C209E326DEA3744C2F870C2B040` |
|
||||||
|
| `tests/AcDream.App.Tests/Rendering/Issue129PunchBiasTests.cs` | ` D` | deleted | n/a |
|
||||||
|
| `tests/AcDream.App.Tests/Rendering/Issue177StairDescentCameraFloodTests.cs` | ` M` | 36493 | `21AC79E23320F73E377368AB63D2701E05C31708223AFF29D9DCF2C504A99EB9` |
|
||||||
|
| `tests/AcDream.App.Tests/Rendering/Walk/WalkFrameDriverTests.cs` | ` M` | 55621 | `A68994C420D5F1099C5F86D9FDB2F194B5665A39874179B137CD6AA8504903FF` |
|
||||||
|
| `tests/AcDream.App.Tests/Rendering/Walk/WalkProductionWorldConformanceTests.cs` | ` M` | 19850 | `F73CC8F494E568133E1C1354D52EE85252C575B26C98948F65BAF5FF522CA57C` |
|
||||||
|
| `tests/AcDream.App.Tests/Rendering/Walk/WalkProductionWorldDataTests.cs` | ` M` | 9231 | `1FA6B591865C551619FC392F3B8FCD710299094529A8109355484EA3271A5457` |
|
||||||
|
| `tests/AcDream.App.Tests/Rendering/Walk/WalkStaticStreamPopulatorTests.cs` | ` M` | 36223 | `4A08C37591C1F65A1142B6F8D9361EA2BC70FBE7C77519F17F758418694DF01B` |
|
||||||
|
| `tests/AcDream.App.Tests/Rendering/WorldRenderFrameBuilderTests.cs` | ` M` | 22735 | `450BF823EAD6D825CDA3AD584634C704F721564F139C08B5EEB96A2228965ED7` |
|
||||||
|
| `tests/AcDream.Content.Tests/InstalledPreparedCollisionCatalogTests.cs` | ` M` | 4208 | `0549B7C75651B4E3DF1469ED5B451DDA16B71710950A1EC252052419E3723903` |
|
||||||
|
| `tests/AcDream.Content.Tests/MeshExtractorSolidFaceExtractionTests.cs` | ` M` | 20309 | `48D45135ACED92EFA57982E432CECE7B9ADE6AA50E1B12F0E36DFF347E2EDC35` |
|
||||||
|
| `tests/AcDream.Core.Tests/Lighting/LightManagerTests.cs` | ` M` | 26623 | `DB009E9DE99AA471C1C8425C3056ED02DEB606B54109A2E76761C5F5A684BD24` |
|
||||||
|
| `tests/AcDream.Core.Tests/Physics/CellTransitFindTransitCellsBoxTests.cs` | ` M` | 25854 | `09D32BDC9C3AE6F6235D32C560AEE3CA93734AB1D92597D4BD067E84AB5A86DD` |
|
||||||
|
| `tests/AcDream.Launcher.Core.Tests/Installation/ContentMigrationCatalogTests.cs` | ` M` | 1112 | `69D38F40488702EBD2A6AB87A2B72D992CB07819A9125F13FEEEA31385D34964` |
|
||||||
|
| `tools/A8CellAudit/Program.cs` | ` M` | 39282 | `D453EFBB7F1D70A3A7D866EDD7AEB166AEA00506AAAD4DB290A431A0BD13CC02` |
|
||||||
|
| `docs/plans/2026-09-01-campaign-overhaul-world-solidity.md` | `??` | 66337 | `EDFB74CB3600B2DFE00FA789636674A1553C183FFA113115B16D72195B0CDB6D` |
|
||||||
|
| `src/AcDream.App/Rendering/Wb/WbDrawDispatcher.FacilityStairProbe.cs` | `??` | 6536 | `5D12468429869A07606B3FB9AFE258C4007F85AFB3481C16D0F4882984A29552` |
|
||||||
|
| `tests/AcDream.App.Tests/Rendering/PortalDepthMaskRetailStateTests.cs` | `??` | 2537 | `2175E30A42F856DD9AE77C8308120386633A0357654F37E56B0DB7E106DD0C9A` |
|
||||||
|
|
||||||
|
## Recovery procedure
|
||||||
|
|
||||||
|
1. Never use `reset --hard`, `checkout --`, or `clean` against this worktree.
|
||||||
|
2. To inspect the historical accepted state, use detached/read-only inspection
|
||||||
|
of `b8befded` or `e880860291a79e0cb20454710567d86ad8731675` in a separate
|
||||||
|
worktree; do not overwrite this checkout.
|
||||||
|
3. To restore the complete pre-overhaul investigation state, revert later OH
|
||||||
|
commits in reverse order, stopping at checkpoint `b3b7d922`.
|
||||||
|
4. To undo the checkpoint itself while retaining history, use
|
||||||
|
`git revert b3b7d922`; do not rewrite history.
|
||||||
|
5. The six excluded normalization/blank-line paths may remain dirty. Compare
|
||||||
|
them with `git diff --ignore-space-at-eol -- <path>` before treating them as
|
||||||
|
content.
|
||||||
|
6. Validate any restored state with the DAT/package/shader identities above,
|
||||||
|
then rerun the Release build and the four focused gate groups.
|
||||||
|
|
||||||
|
## OH0 review disposition
|
||||||
|
|
||||||
|
- Every pre-existing status path is accounted for.
|
||||||
|
- Both required history anchors are recorded.
|
||||||
|
- No behavior probe is silently enabled by its default or current
|
||||||
|
environment.
|
||||||
|
- No unrelated/user-owned semantic change was found.
|
||||||
|
- Production behavior was not edited during OH0.
|
||||||
|
- The classified state is safe to preserve as an explicitly unaccepted
|
||||||
|
recovery checkpoint.
|
||||||
Loading…
Add table
Add a link
Reference in a new issue