# Forge (Windows) — rebuild engine main at 0ec39c95 (GPU diet + R0 P5) Mac `engine/macos-arm64` is engine `0ec39c95` (2026-10-17). Windows is still `1e7be28b1`. The game pins `4.7.2` without a hash until Windows carries the same commit; then pin `4.7.2@0ec39c95` in ariki-game `project.godot`. ## Build `tinqs pull` the engine, then the `windows-x64` manifest flags (MSVC, `platform=windows target=editor module_mono_enabled=yes`), regenerate GodotSharp from that binary, publish binary + console binary + GodotSharp here with sha256s, note in `manifest.json`. ## New and NOT yet compiled on Windows (no toolchain on the Mac) - `platform/windows/crash_report_windows.{h,cpp}`, `crash_handler_windows_seh.cpp` / `_signal.cpp` (MiniDumpWriteDump, pre-started writer thread, unhandled-exception filter), `os_windows_stack_sampling.cpp` (freeze watchdog stack walk), dbghelp/psapi linked in every target (`detect.py`, `SCsub`). - `drivers/d3d12/rendering_device_driver_d3d12.{h,cpp}`: GetDeviceRemovedReason + DRED on device removal. - Verification checklist: engine `.agents/wiki/crash-freeze-and-error-reporting.md` (8 steps: main-thread crash, worker-thread crash, stack overflow, native freeze, C# freeze, D3D12 TDR via `dxcap -forcetdr --gpu-breadcrumbs`, `--disable-crash-handler` writes nothing, release template build links dbghelp). ## Bench after the build (the pacer box) ariki-game `.agents/plans/gpu-frame-diet-ui-opaque-prepass-2026-10-17.md` and `render-thread-diet-2026-10-17.md`: run the Jungle/Main stands with `--gpu-profile`; the RENDER CPU PROFILE block now prints `_draw wall` and `end_frame (graph replay + submit)` — the split of the 12.6 ms render-thread floor that Phase 0 asked for. ## Next: both platforms to 7fb81364 (crash-report review fixes) Engine main is `7fb81364` (`a040761b` + `7fb81364` on top of `0ec39c95`): freeze-report note/context read under a lock, debugger pauses never count as stall time, macOS sidecar `thread_id`, one first-wins atomic claims a Windows crash. No API change — GodotSharp is unchanged. Mac has built `7fb81364` (Kraken, `4.7.2.stable.mono.custom_build.7fb81364b`) but does NOT publish it yet: the game pins `4.7.2@0ec39c954`, so a lone Mac publish would lock every Mac out. Windows (Forge): 1. Build `7fb81364` with the manifest flags. The Windows files changed here were NOT compiled on the Mac: `platform/windows/crash_handler_windows_seh.cpp`, `platform/windows/crash_report_windows.{h,cpp}` — if they fail, write the error here. 2. If you have a `tests=yes` build: `--test --test-case="*CrashReport*,*FreezeDetector*,*FreezeWatchdog*,*AgentLog*"`. 3. Publish windows-x64 `7fb81364`, then tell Kraken: Mac publishes its `7fb81364` binary and the pin moves to `4.7.2@7fb81364b` in the same game push.