Commit Graph
1696 Commits
Author SHA1 Message Date
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 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 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 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 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 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
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
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
Yunus Shaikh 48f0002490 Merge main into feat/unbuilt-exports-guard 2026-11-02 17:03:14 -08:00
Dean 88bb16c20e Merge pull request #14707 from akkadbakkad89/fix/shader-scan-fallthrough
fix(tools): count every label of a decoder case fallthrough run
2026-11-03 11:42:10 +13:00
Dean b4b9abffc0 Merge pull request #14624 from angrysandhill/fix/disabled-script-registration
fix(tools): exclude disabled registrations from script audit
2026-11-03 11:40:42 +13:00
Dean 39202df39c Merge pull request #14558 from Queuse/codex/unwrap-test-cases-20261031
test(tools): register SELF cases independently
2026-11-03 11:39:17 +13:00
Dean 90fcfb368a Merge pull request #14534 from Queuse/codex/unwrap-null-headers-20261031
fix(tools): preserve inactive SELF program headers
2026-11-03 11:38:54 +13:00
Dean 20e74ff8dd Merge pull request #14533 from Queuse/codex/sampler-rva-bounds-20261101
fix(tools): bound sampler reads by mapped RVA
2026-11-03 11:38:49 +13:00
Dean 71d2d55f46 Merge pull request #14532 from Queuse/codex/sampler-pe-directories-20261031
fix(tools): honor declared PE optional headers
2026-11-03 11:38:43 +13:00
Dean 56cc730120 Merge pull request #14514 from Queuse/codex/audit-junction-guard-20261101
fix(tools): protect junction-linked dump paths
2026-11-03 11:38:26 +13:00
Dean 1348026318 Merge pull request #14498 from angrysandhill/fix/nid-data-source-lookup
fix(tools): include native data exports in NID source lookup
2026-11-03 11:38:04 +13:00
Dean 4f9b57ee96 Merge pull request #14477 from xdCloudy/fix/shader-argv
fix(test): recognise shader test explicit args only when run as the script
2026-11-03 11:37:43 +13:00
Dean 31887b4e6b Merge pull request #14457 from oneandonlydean/carry-10578
fix(tools): ignore invalid timelines when advancing pad sequences
2026-11-03 11:36:45 +13:00
Dean 1b678de17e Merge pull request #14452 from MarcZX10/fix/ffmpeg-cache-per-toolchain
fix(ci): key the ffmpeg cache of the winlibs and MSYS2 Windows builds by their toolchain
2026-11-03 11:36:40 +13:00
Dean ea97a270e2 Merge pull request #14414 from roboterspinne/ci/build-windows-pr-ctest-log
ci(build): write ctest.log on the Windows pull request path so tests over 30 s are reported
2026-11-03 11:35:53 +13:00
dom 491d128785 fix(tools): accept PE images without data directories 2026-11-02 16:51:36 -05:00
Dean 784ab09683 Merge pull request #14413 from roboterspinne/fix/tools-ctest-index-newline
fix(tools): end the CTest index file with a newline so the Windows pull request job runs the last selected guest test
2026-11-03 08:50:15 +13:00
Dean 589e34d43b Merge pull request #14412 from roboterspinne/test/tools-split-conventions-wrapped-declarations
test(tools): split conventions_wrapped_declarations by test class to stay under 30 s on Windows
2026-11-03 08:50:09 +13:00
Dean d7d53bc5e8 Merge pull request #14394 from MarcZX10/fix/build-web-require-asset-digest
fix(tools): require every release asset to carry a sha256 digest before its archive is trusted
2026-11-03 08:49:31 +13:00
Dean aa0ea9f75c Merge pull request #14384 from Serph91P/fix/14322-audit-provider-origin
fix(tools): retain guest provider origin in import audit
2026-11-03 08:49:23 +13:00
Dean 1d6f318fdc Merge pull request #14362 from DonRyuzaki/fix/tools-gate-relative-executable
fix(tools): resolve test executables in their working directory
2026-11-03 08:49:16 +13:00
Dean dd0548601b Merge pull request #14360 from DonRyuzaki/fix/tools-audit-contiguous-loads
fix(tools): audit tables spanning contiguous ELF loads
2026-11-03 08:49:09 +13:00
Dean f167c2690f Merge pull request #14355 from DonRyuzaki/fix/tools-ab-phase-chronology
fix(tools): reject backward A/B phase boundaries
2026-11-03 08:49:03 +13:00
Dean c955a63d3d Merge pull request #14352 from DonRyuzaki/fix/tools-annotate-dynamic-span
fix(tools): bound dynamic tags to their segment
2026-11-03 08:48:57 +13:00
Dean d530f43dbe Merge pull request #14350 from DonRyuzaki/fix/tools-unwrap-zero-tls
fix(tools): preserve mapped segments at address zero
2026-11-03 08:48:52 +13:00