Commit Graph
2052 Commits
Author SHA1 Message Date
Dean 9f35c937da Merge pull request #13837 from CodingBreadd/test/check-skips-decode-utf8
test(tools): decode check_skips test output as UTF-8
2026-11-05 09:00:46 +13:00
Dean 793515e6e4 Merge pull request #13417 from dr-hoseyn/fix/ab-split-truncated-programs
fix(tools): avoid zeroing unlisted GPU program timings
2026-11-05 09:00:41 +13:00
Dean 54b7a65c70 Merge pull request #13239 from MalikTalha03/fix/tools-tests-windows-store-python-executable
fix(tools): stop relying on sys.executable as a readable or spawnable file in tests
2026-11-05 09:00:36 +13:00
Dean 0c78920e52 Merge pull request #15164 from Ducengarth/fix/env-reference-table-rows
fix(tools): count only table rows as documented in env_reference
2026-11-05 08:20:42 +13:00
Dean 13201e8df4 Merge pull request #15717 from tikD1337/codex/trace-wait-ancestry
perf(tools): reuse wait ancestry when digesting trace slices
2026-11-05 08:18:46 +13:00
Dean 9ab6a281ea Merge pull request #11860 from rooklz/fix/input-mapper-settings-roundtrip
fix(tools): round-trip input mapping settings in the input mapper
2026-11-05 06:36:17 +13:00
Dean c7eae98ba6 Merge pull request #7264 from LeandroLP23/feat/tools-title-run
feat(tools): run titles repeatably and report their outcome
2026-11-05 06:33:49 +13:00
Tikhon Ulyanov 7c9de0ff29 perf(tools): reuse wait ancestry when digesting trace slices 2026-11-04 10:25:28 +01:00
Dean 6092b0e81a Merge pull request #12767 from StoneDC/b40/history-date-window
feat(tools): select progress history by UTC date
2026-11-04 19:26:55 +13:00
LeandroLP23andClaude Opus 5.5 6c88e69f07 fix(tools): show the first non-empty error of a title's failed runs
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 e5b4e22aba fix(tools): report an unreadable last frame and lock a title's work directory
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 39b52ea6c0 test(tools): skip the window placement test without a desktop shell
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 72264c25bd fix(tools): relink Ruffle, VLC and XPSemu at the default base
#9332 made 0x400000 the default base of Windows executables, as #8973
did on Linux, so the three titles that read their GOT at that base no
longer need fixed_base in titles.json: with a plain relink their guest
image starts at 0x400000 and all three render.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 5e4007fd30 fix(tools): keep title names out of the catalog and refuse a malformed param.json title ID
titles.json no longer takes a name: a run is labelled with the package's
own param.json title name. discover() checks the param.json titleId with
the same pattern as the catalog keys, since it names the work directory
that prepare() empties.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 0a4d3a908e fix(tools): label a title run with the commit of the build's source tree
The report took the commit of the checkout holding title_run.py, which
is wrong when --build points at another checkout. The source directory
now comes from the build's CMakeCache.txt.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 3abbf5459b fix(tools): check titles.json items and drop the unused input field
A non-string env value or relink flag passed validation and stopped the
batch when the title started. List and env items must now be strings, a
param.json without titleId names its file, and the input field, which
nothing ran, is no longer accepted.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 d94dc23467 fix(tools): treat EPERM from a title's process group as still exiting
On macOS, killpg on a group whose processes are all exiting fails with
EPERM instead of ESRCH, which made alive(), close() and kill() raise and
end the batch. The SessionTests failure showed up on macOS runners.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 e338f53d0f fix(tools): leave unknown machine fields out of the report header
When no title wrote a trace summary, the header read ". , , driver , CPU".

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 90e41765c1 fix(tools): compare only the requested titles when IDs are given
Running a few titles against a full earlier summary listed every other
title as missing.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 baa1ae3730 fix(tools): count a title as rendering only once a frame is dumped
ScreenTester5 presented twice in 60 s, just before the run ended, and
was reported as rendering with no frame kept. A run that never presents
enough for a frame to be dumped is now stalled.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 ec127dcae9 fix(tools): open title windows behind the others instead of off-screen
Windows placed past the desktop edge could not be looked at. They now
keep their position and go to the bottom of the z-order without focus
when created or shown, so the run stays out of the way and the window
can be brought forward from the taskbar. A window is sent back once, so
it stays in front after the user raises it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 c1a0d7dcf6 fix(tools): read the exit code from the launched executable's folder by default
Without a console, Windows adds conhost.exe to the job, and its exit
code 0 replaced the title's when no folder was given.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 670e7522b4 fix(tools): move title windows off-screen as soon as they are created
A WinEvent hook on the title's process moves each new top-level window
past the right edge of the virtual desktop when it is created or moved,
so it no longer flashes at the centre of the screen until the next poll.
The move is asynchronous, so a title that stops pumping messages cannot
stall the run past its time limit.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 c31ca04882 fix(tools): report crashes from the title's own processes and keep each title at one path
A crashing title brings Windows Error Reporting into the job, and its
exit code of 0 hid the crash: the exit code now comes only from
processes whose image is inside the title's folder. Relinker FAIL lines
count as errors, and the catalog titles that need
--trap-sdk-syscall-stubs have it in titles.json. Each title is prepared
in <out>/work/<ID>, the same path on every run, so a firewall prompt
appears once per title; its relink.log is copied into the run's folder.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 a3eb94a860 fix(tools): take the exit code of the newest process the title started
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 8ba4768b99 fix(tools): say run, not runs, for a single run in the title report
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 efb7161904 fix(tools): harden title_run after final review
Report the last process's exit code after LoadExec on Windows, keep the batch when one package cannot be prepared, write summary.json after each title, default --out to build/title-runs, skip non-object summary lines, drop inherited shader cache variables.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 6e4c6d828f fix(tools): keep a batch's summary when an artifact is damaged or --compare is wrong
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 2283a126ae feat(tools): keep title windows off the screen and count device loss as an error
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 03f8794ffb feat(tools): run titles with fixed settings and write summary.json and summary.md
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 3c2845900b fix(tools): report a title that exits before joining the job instead of failing
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 e0243e6e6a fix(tools): import signal for the POSIX session and fail loudly when the job cannot hold the title
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 043533f88f feat(tools): follow a title's processes, children included, and end them
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 ec900e62e4 feat(tools): find title packages and lay out a relinked title for a run
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 601accf999 fix(tools): list titles missing from the new run in the title report
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:46 +01:00
LeandroLP23andClaude Opus 5.5 85295a70b2 feat(tools): report title runs as a fixed Markdown table and compare two runs
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:45 +01:00
LeandroLP23andClaude Opus 5.5 81aedae4a3 feat(tools): classify a title run from its exit, summary and last frame
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:45 +01:00
LeandroLP23andClaude Opus 5.5 eece70468a feat(tools): read per-title relink settings for title runs
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 23:04:45 +01:00
Dean 81b1a632dc Merge pull request #15239 from PolkadotDom/fix/audit-empty-pe-directories
fix(tools): accept PE images without data directories
2026-11-04 08:11:45 +13:00
Tutu DariusandClaude Opus 5.5 2c6ee2b0d8 test(tools): decode check_skips test output as UTF-8
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 12:05:32 +02:00
Dean 108a85a325 Merge pull request #11104 from EagleBearerYS/feat/unbuilt-exports-guard
feat(tools): fail when a library source that defines exports is never built
2026-11-03 21:09:59 +13:00
Dean 4f337c8d63 Merge pull request #9258 from emirplus/fix/pad-timeline-utf8-bom
fix(tools): decode timeline JSON with utf-8-sig in pad_timeline
2026-11-03 21:09:37 +13:00
Rookie 8217862c3f fix(tools): accept the native mouse stick target setting 2026-11-03 06:46:01 +00:00
rooklz 36b213d86b fix(tools): accept a signed zero stick deadzone like the native parser 2026-11-03 06:44:55 +00:00
rooklz 596e5056cb fix(tools): round-trip input mapping settings in the input mapper 2026-11-03 06:44:55 +00:00
Dean 35e8444ef7 Merge pull request #15355 from DonRyuzaki/fix/tools-trace-gpu-occupancy
fix(tools): count overlapping GPU trace ranges
2026-11-03 18:14:36 +13:00
Dean d68b36002d Merge pull request #15096 from Opensource55/fix/tools-tests-utf8-decode
fix(tools): decode configure_seed and package_release test output as UTF-8
2026-11-03 18:14:02 +13:00
Dean 31598a35b1 Merge pull request #15069 from MarcZX10/r2/R07-agc-block-comment
fix(tools): end agc_test_split bracket comments after their closing bracket
2026-11-03 18:13:57 +13:00
Dean fe5f2dad01 Merge pull request #15068 from MarcZX10/r2/R09-public-type-bases
fix(tests): record public types declared with a base clause
2026-11-03 18:13:52 +13:00
Ryuzaki 28b63f8065 fix(tools): count overlapping GPU trace ranges 2026-11-03 02:36:06 +00:00