Repository navigation
Conversation
|
Other open pull requests touch the same code. Merging one will break the other, or both implement the same thing. If this one builds on them, list them in Depends on.
Some comparisons could not be completed because a pull request conflicts with the base branch. Review these shared files manually before concluding that there is no overlap.
|
Contributor
|
Runtime datapoint on NVIDIA hardware. RTX 3070, Ampere, driver 617.42, Windows 11 26200, WinLibs GCC 15.2.0, Release, ANYPS5_NO_SHADER_CACHE=1. Head d577c26, all binaries rebuilt on this head, ctest serial:
13/13 pass on Ampere — snapshot machinery holds on a second NVIDIA family. |
12 tasks done
Amoenus
force-pushed
the
codex/feat-native-color-snapshot-mainfd9
branch
from
October 17, 2026 09:30
d577c26 to
8e8afdc
Compare
Amoenus
force-pushed
the
codex/feat-native-color-snapshot-mainfd9
branch
from
October 17, 2026 13:35
8e8afdc to
1f72288
Compare
This was referenced Oct 17, 2026
12 tasks done
Amoenus
force-pushed
the
codex/feat-native-color-snapshot-mainfd9
branch
from
October 18, 2026 04:40
1f72288 to
653612c
Compare
12 tasks done
Amoenus
force-pushed
the
codex/feat-native-color-snapshot-mainfd9
branch
from
October 18, 2026 13:43
653612c to
5ec8692
Compare
12 tasks done
12 tasks done
Amoenus
force-pushed
the
codex/feat-native-color-snapshot-mainfd9
branch
from
October 19, 2026 16:48
4652bf8 to
76e0187
Compare
Amoenus
force-pushed
the
codex/feat-native-color-snapshot-mainfd9
branch
from
October 19, 2026 19:08
76e0187 to
c4bd172
Compare
12 tasks done
12 tasks done
12 tasks done
Collaborator
Amoenus
force-pushed
the
codex/feat-native-color-snapshot-mainfd9
branch
from
October 21, 2026 14:12
6185950 to
e7e649b
Compare
Consolidate the previously published initializer and its fault/regression coverage onto the refreshed layout/uploader foundations and the credited boykopovar#6971 dependency composition. Preserve the full snapshot and supported uniform/nonuniform paths, restrict borrowed sampled-view usage and keep current main ownership/device/CMASK handling. Original initializer and test work is preserved at published8068 and its archived history; boykopovar#6971 f65cecd remains an original ancestor. Written with AI assistance.
Amoenus
force-pushed
the
codex/feat-native-color-snapshot-mainfd9
branch
from
October 21, 2026 22:17
e7e649b to
9e2fa81
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Prepare lossless CPU snapshots of an existing resident multisample color target, the next foundation for the native-buffer publication work in #6480. This prepares bytes; it does not publish guest memory or retire ownership.
Stacked on refreshed #6973
77dd406ddb. The snapshot-only range remains five files, +442/-11. Main's sample-order path and the parent's initializer/layout work are retained.This uses the existing shared reader and layout contracts. No new shader instruction semantics, console-equivalence, title-unblock, startup/FPS or performance claim. General metadata and depth publication, ownership transfer and large-title costs remain separate.
Tested
Current-main maintenance — 2026-10-22
Exact head
9e2fa8118607b73931d4caedc396709872ee4f16, maina6dcea9279b53b3a39c13695eac66f7c8b5b503c. Selected affected-library and real fixture targets build on Windows 11 Enterprise 26200 / WinLibs GCC 15.2 r7 UCRT Release, SPIRV-Tools enabled. This refresh does not claim a new full-default or full-suite build.14 positive executions: 14 verified physical-GPU processes and 0 CPU processes; 0 retained failures. Maximum process time 3.282 s, all within 30 s. Both actual RTX 5080 and Radeon Graphics/gfx1036 identities and Khronos 1.4.363 device-layer insertion are verified. Required Vulkan, application shader cache/pipeline journal disabled, verbose serial CTest, no whole-test skips or timeouts; driver caches and implicit layers uncontrolled. GPU driver/OS details remain on the checklist.
Capability groups:
agc_driver_native_color_readback,agc_driver_native_color_snapshot. Each runs three fresh processes per GPU. Existing main/change groups are counted separately; absent main registrations are never credited as passes.The 2 shared executions match literal main
a6dcea9279per process for pass/failure, VUID set and validation-message counts. Total candidate diagnostics: 0 validation errors and 0 warnings.Current-main conventions, description and patch-whitespace checks pass. Range comparison finds every topic commit unchanged from its previous qualified patch; merged parents are represented by current main, and original authorship is retained. Earlier full builds, analyzer results, fault controls, external reports and title observations below retain their original pins. No fresh game/FPS, Linux, console-equivalence or full-suite claim.
Earlier qualification at its recorded pins
Source refresh — 2026-10-21
Head
e7e649b15f, based on main745b3946294a9d79e1177a289482768d6ab88c9a. This supersedes the previous current-head labels in the historical qualification below.agc_driver_native_color_readbackx3,agc_driver_native_color_snapshotx3. These pass with no validation errors/warnings.2c4b116da9merges cleanly; this is source review, not a runtime result at that newer pin. Earlier Linux, full-build, hardware-reference and negative-control results retain their original pins. No new title or speed result.Earlier qualification at its recorded pins
**Current head `6185950ed74eefb63ac53c542b9b9131527d1c99`; main `e25333e39aac4ab537fdf8c143da0fc24634c714`; #6973/main parent `73a96cb5df288859ee084f11bc82ae51e7dd328d`.** Windows 11 Enterprise 26200, WinLibs GCC 15.2 r7/UCRT Release, SPIRV-Tools enabled. Full default build passes (695.599 s), followed by explicit libraries/relinker/fixtures; parent and restoration target builds pass (80.047 /20.834 s).33 positive head checks; three inherited-parent numeric failures remain failures. This matrix completes the initial selection with the restored AMD default/recreation runs. The earlier extra failed AMD invocation is retained separately, not replaced by a pass.
AlphaToCoverage.cppis byte-identical on head and parent. In every arm, recreation layout and the existing 4x DCC-clear case each pass 3/3 on NVIDIA and fail 3/3 on AMD, without VUIDs or validation errors/warnings. The new recreation failure isa sampled DCC target recreated with another pipe-bank XOR did not resolve its new samples; the 4x failure remains the separate undrawn-samples/channels/scissor assertion from AGC: MSAA DCC-clear resolve checks fail on AMD Radeon iGPU at 2x/4x/8x #7936. Their common cause is unconfirmed. The recreation case passes its earlier per-sample probes before failing the resolved-image check. Restored snapshot, readback and default sampling each pass 3/3 on both adapters. These repeat/control rows overlap the completed head matrix and are not summed as extra unique passes. #6973 review evidence retains its older successful composition at its own pin.e25333e39apasses 45 GPU and nine CPU/mock invocations, with nine AMD DCC-clear assertion failures (2x/4x/8x, each 3/3). Default native-MSAA sampling passes 3/3 per GPU on main and this head. New snapshot modes and the feat(agc): preserve initial native multisample color contents #6973 recreation fixture are absent from bare main; no bare-main pass is fabricated for them. Historical snapshot fault controls retain their original pins below.10de:2c02, driver 610.62/32.0.16.1062; AMD Radeon(TM) Graphics1002:13c0, driver 32.0.21036.18. Required Vulkan, app shader cache/pipeline journal disabled, loaded Khronos 1.4.363, verbose serial CTest, every observed process below 30 s. Actual adapters verified per GPU log; zero VUIDs, validation errors/warnings, whole-test skips or timeouts in the real-fixture runs. Driver caches/implicit layers uncontrolled. An earlier execution-not-built stub was detected and excluded before the documented CMake fixture list was expanded; compilation-database entries now confirm the real sources.sizeofadvisory emitted by both tidy runs remain. The batch is allocated on its dereferenced branch or construction throws; fixtureRequirethrows before memset on allocation failure. No suppression, automatic fix or static-clean claim.a8b92e43ce; those newer commits are not claimed runtime-tested. No new Linux/full-suite/title/FPS or console-equivalence claim. Full upstream CI remains maintainer-triggered. AI-assisted: yes (Codex); author responsible.External validation at its reported source pins
akkadbakkad89 reports the selected snapshot/readback/initial-content and sample groups passing at older head
d577c265e, RTX 3070 (Ampere), driver 617.42, Windows 11 26200, GCC 15.2 Release, serial CTest with application shader caching disabled.These are the contributors' own reported runs at the stated older pins. No fresh local Ampere, current-head equivalence or Khronos comparison is inferred from them.
Historical qualification and fault controls at their original pins
Conditional title evidence — updated2026-10-19
The main04078 integration retains a separate tracked native-owner FMASK view. It avoids the previously refused81920-byte CMASK read and reaches Sonic Continue/menu, movie and level loading, then a distinct Mesh-preparation unreadable-memory stop. The compressed DCC/CMASK color-snapshot exclusion is unchanged. This neither implements general metadata publication nor validates the unchanged PR head against Sonic. Uncompressed-only scope and
Unblocks: noneremain.Central evidence records39 checks atf68e (30 GPU,9 CPU),0 VUID/errors/warnings, the ordinary NVIDIA run and its guest wait symptoms. The native-owner-only follow-up is now fork-pushed and component-qualified; the focused native-owner-only PR #7948 is now open. This is not an unchanged-PR-head Sonic run; details and remaining gaps are maintained in #7260. AI-assisted: yes, Codex.
Current refresh — 2026-10-19: head
c4bd172d57is stacked on qualified #6973 atcafd4f749f(main1e774a3b22plus the declared original dependencies). Own review delta. All own added/removed code and test lines match the previous published topic except one private-API adaptation:ReadSamplesnow callscheckDccCurrent(target, false)after synchronization, retaining full metadata validation. Main only passestruewhile absorbing a fresh refill insideApplyFastClear. The initial unchanged-call preparation did not compile; its incomplete analysis/build are excluded. The two adjacent method blocks are both retained.Windows11 Enterprise26200, WinLibsGCC15.2r7/UCRT Release: full default and explicit libs/relinker builds pass. 72 focused passes (63 GPU/9 CPU), plus nine unchanged AMD DCC assertion failures. Each non-DCC GPU group passes three fresh processes per actual RTX5080/Radeon Graphics. The 2x/4x/8x DCC groups each pass3/3 on NVIDIA and fail3/3 on AMD at the same #7936 assertion as literal main1e774. NVIDIA completes the added refill checks; AMD fails earlier in
DccFastClearTests, so no AMD refill-assertion coverage is claimed. All selected logs have zero VUID/errors/warnings, unsupported subcases, whole-test skips or timeouts; actual devices and the loaded requested Khronos layer are verified.Cppcheck then clang-tidy on this head takes20.481s and reports2 advisories/findings. Every reported seven-line context occurs in the prior topic, qualified parent or main; no parser/configuration failure or timeout. Source contexts are inspected advisory evidence, with no clean whole-analysis or fresh main-analyzer claim. Historical fault/negative controls below retain their original source pins and were not freshly rerun for this adaptation.
Conventions and whitespace checks pass. Fetched main
c0adf025b8merges cleanly; these results retain their main1e774 source pin. Original prerequisite ancestry/authorship is preserved. No new title/FPS, Linux, Intel, console or full-suite claim. AI-assisted: yes (Codex).Current common main/change comparison: literal main
1e774a3b22and this headc4bd172d57use identicalAlphaToCoverage.cppfixtures. Their 2x/4x/8x DCC groups run three times per actual GPU with the same machine and settings: nine NVIDIA passes and nine matching AMD undrawn-samples/channels/scissor assertion failures on each source. This shared baseline is recorded in #7936 and qualified with parent #6973; zero VUID/errors/warnings in either source. The fresh child results above repeat those common groups. This comparison covers the coexistence with main's new refill code; new snapshot/publication modes remain separately counted capability checks rather than fabricated main passes.Vulkan required, application shader cache and pipeline journal disabled,
VK_LAYER_KHRONOS_validationconfirmed loaded, verbose serial CTest and30s bound. No missing requested layer; driver caches uncontrolled. Earlier dependency-only/fault comparisons remain at their original tested pins.Earlier validation at its original source pins
Current refresh (2026-10-18 UTC): head
699704a2b9incorporates maina6dd29b3daf3ba25bf4c2e138ad380b887ad4d49through the refreshed #6973 parent66688998b0. Original topic/prerequisite authorship is retained. The own delta remains five files, +442/-11: snapshot-only comparison.The refresh retains main's now-merged #6215 device ownership, lifetime/accounting checks, range-write tracking and copy settlement. It also preserves snapshot full-color-fill tracking, distinct HTILE fill/refusal tracking, both view overloads, regular/array layouts, clear handoff and pass ordering. Test registrations are grouped beside their existing fixture, retaining upstream's new accounting tests. #6215, #6635, #6452 and #6175 are merged; remaining declared dependencies apply.
Matching full Windows build passes: relinker, system libraries and all selected fixtures. Eleven GPU groups repeat three times per verified device: native-color readback, snapshot and initialization; default sampling; shared readback; upload; pass ordering; retirement; storage-file write; alias-copy label; two-device host-only fill. Five CPU groups repeat three times: graphics, shader memory, copy-input budget, depth-copy budget and write tracking. 33 NVIDIA + 33 AMD + 15 CPU = 81 passes, no skips/VUIDs/validation errors/warnings/timeouts. Actual device identity and Khronos 1.4.363 insertion are checked per process; individual tests have a 30-second bound.
Windows 11 Enterprise 26200 / WinLibs GCC 15.2 r7; RTX 5080 driver 610.62/32.0.16.1062 and Radeon(TM) Graphics driver 32.0.21036.18. Vulkan required, application shader cache disabled, driver caches uncontrolled; no separate game running.
Cppcheck 2.20 then clang-tidy 23.1.3 on both affected translation units: 25.134 analyzer seconds, no parser/configuration failures or timeouts, zero selected clang-tidy diagnostics. The two Cppcheck advisories concern conditional batch construction before its selected dereference and fixture allocation checked by throwing
Requirebeforememset; the relevant helpers remain unchanged from the inspected parent. No new null path established, suppression, automatic fix or whole-project static-clean claim.Earlier snapshot and padding negative controls retain their original pins below. Parent #6973 separately reran the clear-handoff removal control: six expected failures and 12 restored passes on its
6668head. These are distinct controls, not new snapshot-control runs on6997.Later main through
3d0cd98d8emerges cleanly. Intervening kernel/relinker/FreeType/Ngs2 changes are outside the snapshot path; the AGC change removes WAIT_BIT only from optional GPU timing-query collection. Snapshot producer synchronization and byte-copy code are unchanged. Results above retain exact6997/a6ddpins; no runtime test of that newer composition, fresh Linux/Intel result, full-suite, title-unblock, console-equivalence or performance claim. Ordinary game observations remain in #7260 and discussion #4443.Previous b4c9/main0fd refresh, retained at its original pins
Current refresh (2026-10-18 UTC): head
b4c9854d5aincorporates main0fd3555ad6ea56e2acc4caaaec9019db4314db47through the now-published #6973 parentd9f244e8b8. The published topic and prerequisite authorship are preserved; the own delta remains five files, +442/-11. Merge resolution retains both snapshot full-color-fill tracking and upstream #6297's separate HTILE fill/refusal tracking, plus both view overloads. The strengthened nonuniform-color/cleared-HTILE case and merged #6175's pass ordering remain covered.Matching full Windows relinker/library and affected fixture builds pass. Seven GPU groups repeat 3 times per verified device: native-color readback, snapshot, initial contents, default multisample sampling, shared readback, upload and pass ordering. 21 NVIDIA + 21 AMD + 6 CPU = 48 passes, with no skips, VUIDs, validation errors or warnings. Graphics and shader-memory CPU groups each repeat 3 times. Actual device identity and Khronos 1.4.363 loading verified per GPU process; each test has a 30-second bound.
Windows 11 Enterprise 26200 / WinLibs GCC 15.2 r7; RTX 5080 driver 610.62/32.0.16.1062 and Radeon(TM) Graphics driver 32.0.21036.18. Vulkan required, application shader cache disabled, serial fresh processes; no game ran concurrently.
Cppcheck 2.20 then clang-tidy 23.1.3 completed in 25.379 analyzer seconds, no parser/configuration failures or timeouts. No selected clang-tidy findings. The same two Cppcheck advisories concern conditional batch allocation and checked fixture allocation; their complete relevant function bodies are byte-identical to inspected parent
d9f2. No new null path, suppression, automatic fix or whole-project static-clean claim.Later main
eb1a15b5ccmerges cleanly in a local merge-tree check. Its intervening changes are libc math/tests, conversion-time game-patch support and pixel helper-lane EXEC copies; snapshot/HTILE implementation is unchanged. Evidence retains exactb4c9/0fdpins: the newer merged composition is not runtime-tested here, and no exact-head Linux/Intel, title-unblock, console-equivalence or performance claim is made. Earlier platform/fault-control evidence below retains its original pins. The new clear-handoff removal-only control is documented on parent #6973. #6635, #6452 and #6175 are merged; remaining dependencies apply.Previous refresh at5ec, retained at its original pin
Earlier refresh (2026-10-18): head
5ec8692b8a8f2567a05fddd256d8619e244c94a3includes main5bf2e139ef76cfd526b8690b01dbcb9ea86c1684. Published prerequisites and topic changes are preserved; C++ merges/transplants are unchanged (core range diff matches), with only debt-entry conflict resolutions. Full Windows relinker/library build passes. Focused groups repeat3 times: 18 verified NVIDIA +12 verified AMD +3 CPU = 33 passes, no selected skips/VUIDs/validation errors/warnings; every test below30s. GPU identity and Khronos1.4.363 loading verified per process. Windows11 26200, RTX5080 driver32.0.16.1062; Radeon Graphics driver32.0.21036.18. Conventions/whitespace pass.Prior Linux/title evidence below retains its own pins; the new stack is not a new title or exact-head Linux validation claim. The sampled-cache memory fixture ignores ANYPS5_GPU and used NVIDIA in both selector matrices; no AMD coverage is claimed for that case. A focused fixture correction is being prepared. No speed claim.
Initial runtime pin
d14c1ad453229a8be65895573537b173d17fa047, main2d16248a2. Updated runtime/analysis pinfac362ea755a5744461a7cc529b89b821d623960includes maine1ac3300dand adds the explicit completion-callback refusal and its direct test. The intervening main changes only relinker files; affected modes are rerun for the guard. The final commit only clarifies technical-debt wording. Relinker, system libraries and selected fixture targets build on Windows and Linux at the updated source. This is dependency-composed validation, not untouched-main execution or a full CTest run.readbackRecorder().Sync(). Snapshot fails 3/3 per device withguest color changed during native multisample snapshot; restoration passes. No timeout/device loss. Earlier padding-loss controls remain at their original 94e861939 pin, not relabeled as rerun here.Reproduce with
ctest --test-dir <build> --output-on-failure -R '^agc_driver_native_color_(readback|snapshot)$',ANYPS5_REQUIRE_VULKAN=1andANYPS5_GPUselecting the device. Windows 11 Enterprise 26200 / WinLibs GCC15.2r7; Linux Ubuntu24.04 WSL/GCC13.3, Mesa25.2.8 llvmpipe LLVM20.1.2.Earlier refresh and validation, 2026-10-18
Head
653612c207, on refreshed parent #6973e02c29d899, includes validated main3de84fa10698aef4ff43d6bd821d15698f9c8db0. Later mainbd4ae99709changes only PlayerSelectionDialog; its AGC, shader and contribution-policy trees are identical. Sources stayed fixed throughout validation.Consolidated this topic's seven own fixups into one commit; the old published
1f72288b64is preserved. The changed-line sequences in all four production/test files exactly match the old net topic; only the debt entry's EOF context differs on the newer parent. All credited prerequisite commits remain in the parent. This refresh retains completion-before-baseline capture, exact exceptional half-float bits, same-device/recorder-completion refusals and every existing snapshot assertion; it adds no new snapshot behavior.10de:2c02,610.62/32.0.16.1062) and AMD Radeon(TM) Graphics (1002:13c0,32.0.21036.18). Linux's17 registered groups pass3x: 51 passes on Mesa25.2.8 llvmpipe LLVM20.1.2. Counts include CPU checks; they are not all GPU tests. Five Windows-only import-settle modes are absent from Linux registration. Unsupported Linux2x/8x internal sample cases remain explicitly excluded.Earlier controls and external RTX3070 feedback retain their original source pins above/in the comments. No Intel, console-equivalence, full-suite, PR-only title startup or FPS claim. The separate Sonic integration remains in #7260; full upstream CI needs maintainer dispatch. Dependencies must land first.
Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository (attach them to this PR)