Commit Graph
760 Commits
Author SHA1 Message Date
Josip Parlov 9dd208fb9a fix(tools): strip the NID disambiguation suffix from declared names
The NID patcher and check_conventions resolve
fstat_nid_disambig1_nid_postfix to fstat. import_audit hashed it as
fstat_nid_disambig1, so a throwing stub with the suffix was keyed under
the wrong NID, and nid_names reported fstat and pwrite as rename-ready
instead of already-implemented.
2026-10-19 11:37:06 +02:00
Josip Parlov 1e1ce29909 fix(tools): keep p_align for segments unwrap_self copies outside load segments
unwrap_self copied every segment that does not sit inside a PT_LOAD with
alignment 1. On real dumps that puts the comment and version segments
(p_align 0x10) right after the last load segment, at offsets that break
p_offset % p_align == p_vaddr % p_align. Those regions now use the
segment's own p_vaddr and p_align, the same as the load segments, which
is what the module docstring already promises. Load segment placement
and bytes do not change.
2026-10-19 10:52:04 +02:00
Adrià 3c485b889c Merge pull request #6693 from bappisinsane/test/prepare-release-notes
test(tools): cover prepare_release_notes truncation and file output
2026-10-19 10:43:38 +02:00
phoenix-31andClaude Opus 5.5 428132f8ed feat(progress): split history chart into per-measure panels with declared totals
Library functions and shader instructions were drawn on one y-axis with
ambiguous labels and overlapping fills. Each now gets its own panel and
scale, with implemented (solid) against declared (dashed); shaders gain
their declared total from the ISA list. Date labels are horizontal and
every day has a hover tooltip.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-19 09:30:01 +02:00
Josip Parlov d757b66e9a fix(tools): unwrap SELF dumps that leave out the version segment
unwrap_self reads the vaddr-less segments that follow the recorded
comment segment back to back from right after its data, and refuses the
whole container when one of them runs past the end of the file. Some
dumps end right after the last recorded segment and do not store the
version segment at all. The sce_module/libc.prx of PPSA15552 is one:
its last record, the 0x58-byte comment at 0x13b590, ends at 0x13b5e8,
which is the file size, so the 0x1a-byte PT_SCE_VERSION has no bytes
and the tool failed with "segment 12 does not fit the file" although
every load, dynamic and comment segment is complete.

A trailing segment that would run past the end of the file is now
emitted without file bytes, the same way as the PT_NOTE the container
leaves out. The relinker does not read PT_SCE_VERSION
(GuestImageReader skips it). Containers that store the version segment
unwrap byte for byte as before.
2026-10-19 09:09:39 +02:00
Adrià 8693952ce5 Merge pull request #6583 from MarcZX10/codex/build-eligibility-single-node-6550
test(ci): reuse Node for build eligibility scenarios
2026-10-19 09:00:57 +02:00
Adrià c4d6dbeede Merge pull request #6574 from GalaxyGamingFR/fix/progress-history-calendar-labels
fix(progress_history): label axis dates on calendar days
2026-10-19 08:58:59 +02:00
MarcZX100 a56f40b8ef test(ci): reuse node for build eligibility scenarios 2026-10-19 08:21:53 +02:00
bappisinsane bfb2cb0b74 chore: consolidate release notes tests and fix checklist 2026-10-19 11:40:59 +06:00
MrMha c72ccac3e6 feat(pad): queue timed controller button sequences 2026-10-19 07:58:16 +04:00
Dean f4970371da Merge pull request #6459 from angleboyndn-stack/fix/trace-digest-largest-interval-phase
fix(tools): select largest interval phase by duration
2026-10-19 16:52:27 +13:00
Dean b375e11806 Merge pull request #6621 from klosixgaming-arch/fix/unwrap-self-place-by-record-index
fix(tools): read unwrap_self's vaddr-less segments from where the SELF stores them
2026-10-19 16:52:24 +13:00
Dean df10565063 Merge pull request #6578 from GalaxyGamingFR/fix/nid-names-cli-suffix
fix(nid_names): accept NIDs with a #lib#mod suffix in --nid
2026-10-19 16:52:20 +13:00
Dean 7b3d5b4a48 Merge pull request #7159 from MarcZX10/codex/import-audit-pe-modules-6378
fix(tools): audit converted PE guest modules
2026-10-19 16:52:17 +13:00
Dean f5c0fab105 Merge pull request #7161 from MrMha/fix/audit-utf8-diagnostics-20261017
fix: preserve Unicode paths in import audit errors
2026-10-19 16:52:08 +13:00
To3akaRin 7e8aa10ae6 fix(tools): strip dependency options before syntax checks 2026-10-19 10:43:00 +08:00
Adrià Franch 03833cabad test(recompiler): accept linker help probes in compiler stub 2026-10-19 04:28:37 +02:00
fdfawef324andCodex 42cbce1767 test(recompiler): allow macOS compiler metadata probes
Co-Authored-By: Codex <[email protected]>
2026-10-19 04:27:37 +02:00
fdfawef324andCodex f3f453ec9d fix(recompiler): key shader caches on compiled sources
Co-Authored-By: Codex <[email protected]>
2026-10-19 04:27:37 +02:00
joedeangelis533-bot 392c947111 fix(tools): reject unbacked segment data when unwrapping SELF 2026-10-18 22:24:06 -04:00
Adrià 79d7d26b6d Merge pull request #6484 from Ondra97/codex/team-20261015-worker-2
fix(libkernel): share guest rename semantics with sceKernelRename
2026-10-19 03:35:57 +02:00
Hotline Messina Dev 02dd083729 fix(tools): preserve empty load segment alignment when unwrapping SELF 2026-10-18 21:25:03 -04:00
JJenkx 97a8f1c7c9 fix(tools): classify wait subscopes in trace digests 2026-10-18 20:51:26 -04:00
Dean 60fb8078c7 Merge pull request #6067 from meh7an/perf/libs-mimalloc-windows
feat(libs): let relinked Windows games opt into mimalloc
2026-10-19 13:09:36 +13:00
Adrià f849e58cfa Merge pull request #6323 from Gabrieljr42/feat/progress-module-json
feat(tools): add a module filter and JSON output to progress.py
2026-10-19 01:17:26 +02:00
LeandroLP23andClaude Opus 5.5 fb1ad2fcf4 feat(tools): warn when a pull request adds a technical debt entry over 1000 characters
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-18 23:48:11 +02:00
Adrià 88defdafa1 Merge pull request #6268 from DavidFB-creator/fix/conventions-unknown-nid-collisions
feat(tools): flag Unknown exports whose NID is already a symbol in the tree
2026-10-18 23:27:04 +02:00
Mehran 9824c46fe0 feat(libs): let relinked Windows games opt into mimalloc 2026-10-19 00:08:47 +03:00
Amr Yasser e10616b17b fix(web): publish converter and libraries from one release 2026-10-18 23:26:42 +03:00
Dean a589dc0590 Merge pull request #5976 from fma-rc/ci/pr-labels
ci: label pull requests that unblock a title or change performance
2026-10-19 07:57:27 +13:00
Jota dd4f79332f fix(tools): run the oracle comparison test cases in process
hardware_oracle_compare started compare_results.py in a new Python
process for every case, 77 interpreter starts. That takes 5-16 s
on the macOS relinker runners against the test's 20 s timeout, and the
x86_64 job timed out at 20.14 s in run 39103831688 on a pull request
that does not touch the oracle tools.

Call compare_results.main() in the test process with sys.argv patched
and stdout and stderr captured, and keep the identical and differing
cases as real subprocesses so the exit status of the script entry point
stays covered. The test drops to under 1 s.
2026-10-18 12:00:52 -03:00
iAlturki e9a7b8ea54 fix(tools): accept UTF-8 BOMs in trace digest inputs 2026-10-18 16:27:26 +03:00
David Fontanet BujaldónandClaude Opus 5.5 c494367836 Merge boykopovar/AnyPS5 main into fix/conventions-unknown-nid-collisions
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-18 13:17:36 +02:00
011010 99e295a7ba test(tools): register and extend the environment rule tests 2026-10-18 04:16:05 -06:00
011010 061101a3e8 fix(tools): report a row the pull request removes 2026-10-18 04:16:04 -06:00
mantavisualandClaude Opus 4.8 9dfd2a0abf fix: accept "no usable Vulkan device" skips in the Windows check_skips job
The Windows job rejected any skip other than an agc* test, a "no display"
reason or a missing 120 Hz mode, so a non-agc test that skipped because the
runner has no usable Vulkan device failed the job. This contradicted the
job's own expected-skip message ("no display or Vulkan device"), the Linux
job, which already accepts that reason, and the Windows runner, which carries
no Vulkan ICD (the workflow sets ANYPS5_REQUIRE_VULKAN only on Linux).

Accept the "no usable Vulkan device" reason in the Windows job as well, and
keep feature-level device limitations unexpected there as before.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-10-18 12:03:01 +03:00
011010 ea01ee8965 fix(tools): check the environment names a pull request adds 2026-10-18 02:36:16 -06:00
011010 bb109df676 fix(tools): read the helper and wide-string environment readers 2026-10-18 02:13:39 -06:00
MrMha c91e90b966 feat: compute NIDs from UTF-8 symbol files or stdin 2026-10-18 11:39:05 +04:00
husari.orozco abec10fe2d fix(tools): catch the EnvInt and GetEnvironmentVariableA readers and take the review rows 2026-10-18 01:14:35 -06:00
husari.orozco d49b0fecf5 docs(environment): add the APS5_* and ANYPS5_* reference and check it 2026-10-18 01:14:35 -06:00
husari.orozco a084b22f23 feat(tools): cover both prefixes and report the kind and default 2026-10-18 01:14:34 -06:00
husari.orozco 5a0fbcd9dd feat(tools): list the APS5_* environment names the code reads 2026-10-18 01:14:34 -06:00
MrMha d19e3f125b feat: bound hardware-oracle comparison diagnostics 2026-10-18 10:21:05 +04:00
MrMha 71e1073128 feat: cache progress history by commit and counting rules 2026-10-18 10:20:26 +04:00
MrMha 71de464e18 feat: optionally fail import audits on referenced throwing stubs 2026-10-18 10:19:56 +04:00
MrMha 08c280a35b feat: filter configure checks included in cache seeds 2026-10-18 10:18:36 +04:00
MrMha b9a5d3dfc3 feat: explain saved test selections and fixture dependencies 2026-10-18 10:17:59 +04:00
MrMha 3e906dce25 feat: run independent syntax checks with configurable concurrency 2026-10-18 10:17:24 +04:00
MrMha 4ed7c7aeb6 feat: validate hardware-oracle inputs without GPU tools 2026-10-18 10:16:19 +04:00