test: repair source fixtures after recent main merges #2648
No reviewers
Labels
No labels
accessibility
autorelease: pending
autorelease: tagged
bug
dependencies
documentation
duplicate
enhancement
github_actions
good first issue
help wanted
invalid
question
testing wanted
wontfix
No milestone
No assignees
1 participant
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Hookshot!2648
Loading…
Reference in a new issue
No description provided.
Delete branch "test/main-source-fixtures"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What this is for: restore ten game-free checks whose extracted fixtures or expectations no longer match intentional changes on main; main's CI log shows these failures. What is measured: those ten checks on Linux with GCC 16.2.1 and Clang 23.1.3, plus the strict full suite and deliberate regression mutations, as detailed below. Not measured: a game run, Windows execution, audio output or GPU behavior; no production file changes in this diff.
Cause and changes
Each row is a separate commit, naming the change that made the fixture stale; the quoted diagnostics come from main's failed jobs.
audio_aux,audio_biquad:implicit declaration of function ‘env_on’display_startup_failure,wayland_libdecor_hint:use of undeclared identifier 'window_title'texel_buffer_ownership:use of undeclared identifier 'dead_import_bytes'readback_part:extraneous closing brace ('}')wait_recordeddefinition, not its new forward declaration.dlss_checks:FAIL under a third wide at line 40;framegen_preset/rumble_menu: undeclaredtemporal_reset_failuremods_size_table:undefined reference to hos_xinput_padsThe diff retains the existing assertions: no check is deleted or skipped, and it does not revert the production behavior named above.
How it was tested
Recorded on 2026-11-11, Linux kernel
7.2.15-1-omarchy; basede866017, headeeb09c09, GCC 16.2.1 and Clang 23.1.3 (compiler version output and test records).a016b7a6:455 passed, 15 failed, 20 skipped; each of these ten failures also reproduced alone with both compilers, matching the linked CI diagnostics.python -I -B tests/run_all.py --strict --jobs 1 <test>records).python -I -B tests/run_all.py --strictrun:464 passed, 6 failed, 20 skipped in 141 s, 32 workers, load 7.24 → 28.38 (complete suite output).Remaining failures and the path to green
The complete branch run names these six failures; the first five are outside this fixture-only diff:
test_env_on.pyfix/capture-switch-values: the three presence-only capture switch reads from #2437.test_linux_docker_packages.pytest/docker-ppa-options: distinguish--no-updatefrom its PPA operand.test_mouse_native.pyfix/mouse-camera-handover: discard retained angles while another camera owns the view.test_menu_i18n.pyfix/menu-hint-translations: update three complete hint keys and their translations.test_hdr_encode.pytest_release_scripts.pySHA256SUMS still differs from the files after 5 uploads. It passed untouched main and current main CI; isolated reruns passed once and failed once. Neither run invokes a C/C++ compiler.Not tested / risks
No Windows, game, display, controller, listening or GPU run was performed; the evidence above is game-free only. The fixture extraction still follows source structure, so future helper/signature changes must update its inputs rather than remove its behavioral guards.
Overlaps
The inspected merge hunks overlap #1834's frame-generation fixture helpers and #2622's older readback extraction; neither contains these repairs. #2614 owns the separate HDR initializer check. Other same-file changes merge cleanly in the recorded overlap comparison.
Assisted-by: GPT-6 Astra
Co-Authored-By: GPT-6 Astra [email protected]
Thanks, this is a useful cleanup. I checked each repair against current main (the PR is 0 commits behind):
hookshot_env.hgives the extracted DSP the realenv_on, no stub.window_titleis a static helper indisplay_sdl.cnow used by both init and window creation, so extracting it with its callers is the right fix.dead_import_bytesis the real counter fromvk_memory.cpp, and the new asserts (still 64 before the fence passes, 0 after) check the decrement inreap_mirrorsinstead of just making it compile.(w + 2) * 3tolerance, so flipping the old "under a third" negatives is correct. The new pairs (510/509 wide, 286/285 high, 1471x620 vs 1469 / 619 inmode_for) pin the edges on both sides, so a looser or tighter tolerance would both be caught.set_rowon main resets temporal failures for exactlydlss,resolutionanddlss_model. The fixture now uses the realupscaler_rows.hand the three real row definitions, and checks one reset per row and none for preset, frame-gen or rumble. That's stronger than the old stubbedurnamespace.hos_xinput_padsthat reports no pads fits this routing fixture.CI: all ten target checks now pass on Linux and Windows. What's still failing (test_env_on, test_menu_i18n, test_hdr_encode, test_linux_docker_packages, test_mouse_native) fails the same way on main's latest run, and the PR body lists it as separate work.
Nit, not blocking: the
evictioncase in texel_buffer_ownership could also assert thatimports_give_backchargesdead_import_bytes. That would cover the other half of the accounting #1906 added.Approving.
github-sync referenced this pull request2026-11-12 06:22:54 +00:00