Compare commits

..
Author SHA1 Message Date
ozan 74aa47df5d handoff(forge-windows): 7fb81364 published on Windows — Mac clear to publish, pin is version-only 4.7.2 until the @7fb81364b flip 2026-10-17 22:59:49 +01:00
ozan f0a8bcfb2e Merge branch 'main' of ssh.tinqs.com:tinqs/builds 2026-10-17 22:59:12 +01:00
ozan 871000bcf4 engine(windows-x64): publish 7fb81364b — crash-handler fixes (first-wins claim, freeze note/context); GodotSharp regenerated 2026-10-17 22:50:13 +01:00
ozanandClaude Opus 5.5 b16a4afb4a handoff(forge-windows): rebuild at engine 7fb81364 (crash-report review fixes, Windows files not compiled on Mac); Mac holds its 7fb81364 binary until Windows publishes so the 4.7.2@0ec39c954 pin keeps working
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NCXU49xtHLSry4TQEzVN2m
2026-10-17 22:45:19 +01:00
ozan f277a0e30a engine(windows-x64): publish 0ec39c954 — GPU diet + R0 P5 crash/freeze/device-lost reporting, GodotSharp regenerated 2026-10-17 22:25:43 +01:00
ozanandClaude Opus 5.5 935b73e624 engine(macos-arm64): publish 0ec39c95 — normal-roughness pre-pass built-in, tonemap cinematic stack, render-thread CPU profile, R0 P5 crash/freeze/device-lost reporting + structured engine errors; GodotSharp regenerated; Windows handoff
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NCXU49xtHLSry4TQEzVN2m
2026-10-17 21:21:57 +01:00
ozan 1f19c87607 fix(windows-x64): relink editor binary at 1e7be28b1 — baked version string now matches the commit (was d88e0a051, fails required_engine_build gate); manifest sha256 corrected 2026-10-05 20:03:18 +01:00
ozanandClaude Fable 5.1 5171b5979b engine(macos-arm64): publish 1e7be28b (same code as b0daf759, relinked to match the Windows pair d4cf0b7) — both platforms on one engine commit; GodotSharp regenerated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DMYMsxo9dDeCWCPiVH95z2
2026-10-05 19:23:40 +01:00
ozanandClaude Fable 5.1 c737ff6c05 engine(macos-arm64): publish 1e7be28b (same code as b0daf759, relinked to match the Windows pair d4cf0b7) — both platforms on one engine commit; GodotSharp regenerated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DMYMsxo9dDeCWCPiVH95z2
2026-10-05 19:21:54 +01:00
ozan d4cf0b7a19 engine/windows-x64: 4.7.2 1e7be28b1 — Stage C HZB + multimesh_cull + parallel shadow-fill; template_release + editor + GodotSharp; first game export published (pck excluded, LFS size) 2026-10-05 19:06:33 +01:00
ozan 45f3cf9a3b Merge branch 'main' of ssh.tinqs.com:tinqs/builds 2026-10-05 19:04:25 +01:00
ozan e22fa7cf49 Merge origin/main: take origin's manifest (2026-09-28 Kraken update) 2026-10-05 19:03:30 +01:00
ozanandClaude Fable 5.1 b399bb810a engine(macos-arm64): publish b0daf759 — GPU culling Stage C + housekeeping, static cache single-sample/hard-filter options, Metal profiler fix, parallel shadow fill; GodotSharp regenerated; smoke 0 wrapper errors
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DMYMsxo9dDeCWCPiVH95z2
2026-10-05 18:19:44 +01:00
ozanandClaude Fable 5.1 7bf90508c3 handoff(forge): rebuild Windows pair from main >= 615e852f, re-judge render verdicts, pin
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DMYMsxo9dDeCWCPiVH95z2
2026-10-05 17:27:45 +01:00
ozanandClaude Fable 5.1 c6849a35d9 engine(macos-arm64): publish 615e852f (code c76f2ecc) — GPU culling Stage B2 CPU band skip; GodotSharp regenerated; smoke 0 wrapper errors, large+huge village staged
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DMYMsxo9dDeCWCPiVH95z2
2026-10-05 17:21:58 +01:00
ozan 7bb622364e engine(macos-arm64): publish d88e0a05 — GPU-driven MultiMesh culling Stage A+B (multimesh_set_gpu_cull/_gpu_lods) + real Metal GPU timestamps + staggered far cascades + fit_to_visible_depth + Metal copy-queue stall fix + Vulkan breadcrumb barrier fix (#185), on top of the shadow diet + memory query; GodotSharp regenerated (3 new bindings verified); windows-x64 untouched (still b1bc0aef), pin waits for Forge 2026-10-05 15:42:03 +01:00
ozan fe4c0c6fc9 engine/windows-x64: 4.7.2 b1bc0aef — static shadow cache + stepped sun crossfade; GodotSharp regenerated (Terrain3D verified); tested on kraken (boots, assemblies load, zero wrapper errors, world ticks); manifest updated 2026-09-28 02:26:30 +01:00
461 changed files with 286926 additions and 128 deletions

No files matched your search

@@ -0,0 +1,48 @@
# 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.
## 2026-10-17 Windows side done (Forge/ZCode)
Windows published `7fb81364` (builds `871000b`): both crash files compiled clean, editor target only,
GodotSharp regenerated from the binary (byte-identical bindings, as expected — no API change).
No `tests=yes` build on this box, so the `*CrashReport*/*FreezeDetector*/*FreezeWatchdog*/*AgentLog*`
test cases did NOT run here — still owed. Headless game boot on the new binary: clean, 0 binding errors.
Game pin is version-only `4.7.2` as of ariki-game `main` — Kraken: publish your `7fb81364` binary, then
flip the pin to `4.7.2@7fb81364b` in the same game push (both platforms will carry it).
@@ -0,0 +1,12 @@
# Forge (Windows) — rebuild pair from engine main ≥ 615e852f, re-judge the render verdicts, pin (2026-10-05)
macOS pair `615e852f` (code `c76f2ecc`) is published here. Windows is still `b1bc0aef` (2026-09-28).
1. Build the Windows editor + console pair from `tinqs/engine` main with the `windows-x64` manifest flags
(`platform=windows target=editor arch=x86_64 module_mono_enabled=yes d3d12=yes angle=yes accesskit=yes`),
regenerate GodotSharp from that exact binary, smoke (0 wrapper errors), publish here, update `manifest.json` +
`README.md`.
2. Then pin `tinqs/required_engine_build="4.7.2@<hash7+>"` in `ariki-game/project.godot` (both platforms on the same commit).
3. Re-judge on Windows what the Mac measured (frame GPU-bound on M1): static shadow cache default (now OFF on Apple
silicon game-side, ON elsewhere — keep ON on Windows only if `inverted` ≥ `cache_off` fps), GPU veg bands, HLOD.
Full recipe + numbers: `ariki-game/.agents/handoffs/2026-10-05-forge-windows-render-bench-handover.md`.
+3 -3
View File
@@ -31,10 +31,10 @@ into GodotSharp, so GodotSharp had to be regenerated — and must ship here alon
| Platform | Engine | Terrain3D | GodotSharp shipped? | | Platform | Engine | Terrain3D | GodotSharp shipped? |
|---|---|---|---| |---|---|---|---|
| `engine/macos-arm64/` | **4.7.2** (`51ed21d5`) — static shadow cache + tile budget + live caster size cull + inverted contract switch, `get_video_adapter_memory()`, device-lost diagnostics | built-in module | ✅ yes (`GodotSharp/`) | | `engine/macos-arm64/` | **4.7.2** (`0ec39c95`) — normal-roughness pre-pass built-in, tonemap cinematic stack, render-thread CPU profile, crash/freeze/device-lost reporting + structured engine errors (R0 P5), on top of everything `1e7be28b` had | built-in module | ✅ yes (`GodotSharp/`) |
| `engine/windows-x64/` | **4.7.2** (`2caca361`) — upstream bugfixes + static shadow cache + video adapter memory query | built-in module | ✅ yes (`GodotSharp/`) | | `engine/windows-x64/` | **4.7.2** (`7fb81364b`) — everything `0ec39c95` had (GPU diet + R0 P5) plus crash-handler fixes (first-wins crash claim, freeze-report note/context, pause handling); `template_release` here is still the `1e7be28b` tree | built-in module | ✅ yes (`GodotSharp/`) |
Mac is engine `51ed21d5` as of 2026-10-05 (`--version` prints `4.7.2.stable.mono.custom_build.51ed21d5d`): 4.7.2 + static shadow cache (tile budget, live caster screen-size cull, inverted-contract switch) + the video adapter memory query + GPU device-lost diagnostics (engine wiki `shadow-pass-diet-2026-10-05.md`, `gpu-device-lost-diagnostics.md`). Windows is `2caca361` (2026-10-03, built by UyGar: `b1bc0aef` + the video adapter memory query; no 2026-10-05 round yet) until Forge rebuilds from main. The engine source repo stays private. Check `manifest.json` for sha256. The 4.7 Windows cutover handoff is resolved: [`.agents/handoffs/forge-windows-4.7.md`](.agents/handoffs/forge-windows-4.7.md). Mac is engine `0ec39c95` as of 2026-10-17 (`--version` prints `4.7.2.stable.mono.custom_build.0ec39c954`): `IN_NORMAL_ROUGHNESS_PASS` (heavy materials skip their texture work in the SSAO/SSIL pre-pass), the cinematic stack (CA, vignette, grain) inside the tonemap pass, render-thread CPU in `--gpu-profile`, and R0 P5 crash dumps / freeze watchdog / D3D12 device-removed reason / structured engine errors. Windows carries `7fb81364b` as of 2026-10-17 (second Forge rebuild the same day: `a040761bd1` consistent note/context in freeze reports + pauses never count as stall time, `7fb81364b5` one first-wins atomic claims a Windows crash; [`.agents/handoffs/forge-windows-gpu-diet-r0-p5.md`](.agents/handoffs/forge-windows-gpu-diet-r0-p5.md); editor target only, `template_release` is still the `1e7be28b` tree). macos-arm64 is still `0ec39c95` — Kraken is rebuilding, so the game pin is version-only `4.7.2`; pin `4.7.2@7fb81364b` once mac lands. Earlier: Mac is engine `1e7be28b` as of 2026-10-05 night (`--version` prints `4.7.2.stable.mono.custom_build.1e7be28b1`; same code as `b0daf759`, relinked to match the Windows pair so `required_engine_build` is pinned to `4.7.2@1e7be28b`): GPU culling Stage C (previous-frame depth-pyramid occlusion, default off), zero per-frame cull uploads, static-cache single-sample + hard-filter options (default = unchanged), true per-pass Metal GPU profile, parallel shadow instance fill, on top of Stage B2 CPU band skip for GPU-culled MultiMeshes (the x4.7 draw explosion of `gpucull veg on` is gone; the path still stays off by default) on top of everything 51ed21d5 had (shadow diet incl. tile budget / live caster size cull / inverted-contract switch, video adapter memory query, GPU device-lost diagnostics) plus GPU-driven MultiMesh culling Stage A (compute frustum cull + indirect draws, `multimesh_set_gpu_cull`) and Stage B (per-instance GPU LOD bands, `multimesh_set_gpu_lods`), real Metal GPU timestamps (`renderGpuMs`), staggered far cascades, fit-to-visible-depth (SDSM-lite, default off), the Metal argument-buffer copy-queue stall fix and the Vulkan breadcrumb barrier fix (#185). Windows carried `b1bc0aef` (2026-09-28, 4.7.2 + static shadow cache, then `1e7be28b` 2026-10-05) until the 2026-10-17 Forge rebuild delivered all of the above plus the video adapter memory query. The engine source repo stays private. Check `manifest.json` for sha256. The 4.7 Windows cutover handoff is resolved: [`.agents/handoffs/forge-windows-4.7.md`](.agents/handoffs/forge-windows-4.7.md).
Long-term: CI (Gitea Actions) builds on push and publishes here / to S3 — Long-term: CI (Gitea Actions) builds on push and publishes here / to S3 —
`docs/ai/plans/build-pipeline-architecture-2026-06-07.md`. `docs/ai/plans/build-pipeline-architecture-2026-06-07.md`.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,14 @@
{
"runtimeOptions": {
"tfm": "net8.0",
"rollForward": "LatestMajor",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
"configProperties": {
"System.Reflection.Metadata.MetadataUpdater.IsSupported": false,
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}
File diff suppressed because it is too large. Load diff
Loaded 100 of 461 files, more files were not shown because too many files have changed in this diff. Show more