Files
Faset_Engine/docs/validation/p1-p3-final-2026-09-24
Emil 3eea1fe9f1
Native and manual checks / native (ubuntu-24.04) (push) Failing after 32s
Native and manual checks / manual (push) Successful in 29s
Windows editor and software Vulkan / windows-graphics (push) Canceled after 0s
Native and manual checks / native (windows-2025) (push) Canceled after 0s
Preserve final Windows SwiftShader acceptance evidence
2026-09-24 06:38:17 +03:00
..

P1 and P3 integrated acceptance — 2026-09-24

The final code revision is ed523c61c106b8e19614e4d56f0b5d39b8392478. The Release export report records a clean source checkout and the exact Editor SHA-256. The Editor exported collect-2d, collect-3d with its Blender exit arch, and the Lua-only example. Each package was relocated to a Unicode-named path outside its disposable source project; those source paths were hidden while the Player validated and rendered from an unrelated working directory. All three packages passed 120/120 offscreen frames on a physical NVIDIA GeForce RTX 2080 Ti with active Vulkan validation and zero errors. The file checksums, package manifests for 2D, 3D and Lua, and raw 2D, 3D, and Lua profiles preserve the result without duplicating native build directories.

Final-code check Result
Linux Debug full CTest 76 passed, 1 compositor-dependent native window skip, 0 failed (77 registered)
Linux Release P1/P3-focused CTest 24 passed, 0 failed
Relocated Release games on physical Linux GPU C++ 2D, C++ 3D, Lua-only: 120 frames each; validation active, 0 errors
Native/manual CI Linux and Windows native checks plus strict MkDocs passed
Windows software-Vulkan CI 78/78 CTests, Release export integration and three relocated 120-frame C++/Lua games passed on SwiftShader; validation layer unavailable

The P1 queued-edit regression verifies that an asynchronous Build or Export reports the gameplay-source hash captured by its worker, not the hash from when the command entered the queue. The P3 shader-reload regression first reproduced a null-pipeline crash during Direct-to-GPU switching with TAA active; the failed transition now preserves the old pipelines and history and can be retried after restoring the shader package. Both regressions are in the full Linux suite and Windows native/graphics checks.

The final P3 temporal matrix records 1,386 lossless frames across Direct, GPU frustum and GPU occlusion, plus an independent 90-frame 720p profile. All captures used active Vulkan validation with zero errors; its 1,388 PNG files are byte-identical to the earlier branch matrix. The integrated lighting study contains 7,560 frame rows from the earlier clean 4a3453e revision, on the same physical GPU and shader path. Its dense tile build+raster case was slower than forward; the localized-light case was faster, so Auto remains forward. The P1 240-frame Release reference passed the original small-demo timing budgets but missed the old 20 MiB explicit-allocation target at 43.02/43.12 MiB because both shadow atlases are allocated eagerly. The final revision does not change that allocation policy.

TAA and 0.67 Upscale remain opt-in. The 2× spatial reference was more accurate on the fixed thin-wire fixture, and Upscale did not reduce whole-frame GPU time in the sparse 720p test. These checks cover one physical Linux GPU and Windows SwiftShader functionality; a physical Windows GPU and broader driver families still need separate testing.

Reproduce the relocated Release check from a clean source checkout with the documented dependencies:

cmake --preset linux-release
cmake --build --preset linux-release --target faset_editor --parallel 2
python3 tools/verify_playable_exports.py \
  --editor build/linux-release/faset_editor \
  --output /tmp/faset-p1-p3-export-new \
  --standalone-root /tmp/faset-p1-p3-games-new \
  --include-lua

Use fresh output paths. The verifier retains the full packages and captures outside the repository, while this dossier commits the report, selected manifests, per-frame profiles, and run records.