Commit Graph
760 Commits
Author SHA1 Message Date
GalaxyGamingFRandClaude Fable 5.1 a89aa5c0d0 fix(progress): skip cells for rectangles without area
When squarify gave a group a sliver narrower than 2px, treemap passed cells a zero or negative width, so the row count became complex or divided by zero and render crashed. cells now returns no cells for rectangles without area. A regression test renders a 300 and 1 item split.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 12:00:10 -07:00
MrMha cf1195ad20 fix(hw-oracle): narrow cache PR and normalize runtime paths 2026-10-11 19:31:39 +04:00
MrMha 19344d661a test(packaging): restore cwd before temporary cleanup 2026-10-11 19:30:59 +04:00
MrMha 2f6db82da7 fix(nid-names): normalize Windows inventory paths 2026-10-11 19:30:28 +04:00
Adrià Franch 8b73fe7a76 fix(stubgen): give new output files the default umask permissions 2026-10-11 17:11:35 +02:00
Adrià Franch a5465007fa test(conventions): merge duplicate import 2026-10-11 17:10:33 +02:00
MrMha 0ffd244af2 fix(ci): preserve test discovery and skip diagnostics 2026-10-11 18:25:36 +04:00
MrMha 563b4738a5 fix(hw-oracle): invalidate cached builds when inputs change 2026-10-11 18:24:42 +04:00
MrMha 5ccc11642f fix(packaging): validate and stage release archives 2026-10-11 18:23:59 +04:00
MrMha 83be8dfb27 fix(stubgen): protect input files and keep stdout valid C++ 2026-10-11 18:23:13 +04:00
MrMha 08b1b7808a fix(nid-names): ignore comments and literals in symbol inventories 2026-10-11 18:22:21 +04:00
MrMha 14bbb1e00f fix(pr-overlap): bound explicit dependency declarations 2026-10-11 18:21:44 +04:00
MrMha 45f349df9b fix(conventions): handle unusual Git paths and escaped links 2026-10-11 18:21:09 +04:00
MrMha d6bc502765 fix(import-audit): validate ELF and PE exports before reporting 2026-10-11 18:20:18 +04:00
Winvoker c9038f7d8d fix(progress): match stub calls across whitespace 2026-10-11 15:06:06 +03:00
MarcZX100 05504bb05e fix(tools): retain literals when classifying inert returns 2026-10-11 11:44:32 +00:00
Leandro Soares 90a82da283 feat(tools): mark behaviourally empty bodies in the progress report
Cherry-picked from commit f1be92e95c02be451971fc1a8eec139e738e936d.
2026-10-11 11:44:28 +00:00
Adrià 2e40ade881 Merge pull request #3402 from GalaxyGamingFR/fix/conventions-system-dependency-spelling
fix(conventions): match ordinary CMake spellings of system lookups
2026-10-11 12:39:31 +02:00
Adrià 02030f8a62 Merge pull request #3427 from AchrafReyani/fix/pr-overlap-fetch-head-sha
fix(tools): fetch each open pull request by the head commit the API reports
2026-10-11 12:35:24 +02:00
GalaxyGamingFRandClaude Fable 5.1 0e7ccce2ec fix(conventions): match ordinary CMake spellings of system lookups
The system-dependency rule was case-sensitive, so FIND_PACKAGE(SDL2) passed,
and its trailing word boundary failed when whitespace followed the opening
parenthesis. find_path, find_program and find_file were not covered at all.
The pattern is now case-insensitive, anchors each command name, and covers
the find_* family.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 12:21:30 +02:00
Adrià dcca02896e Merge pull request #3406 from GalaxyGamingFR/fix/stubgen-debt-links
fix(tools): make stubgen TechnicalDebt links resolve from docs/dev
2026-10-11 12:20:37 +02:00
Adrià 68ae2a895d Merge pull request #3386 from GalaxyGamingFR/fix/conventions-path-with-spaces
fix(conventions): keep per-line rules for file names with spaces
2026-10-11 12:19:02 +02:00
Adrià f0c6cf27b2 Merge pull request #3408 from GalaxyGamingFR/fix/pr-overlap-template-placeholder
fix(tools): read Depends on through the template placeholder in pr_overlap
2026-10-11 12:13:59 +02:00
Achraf ReyaniandClaude Opus 5.5 2b234efff3 fix(tools): fetch each open pull request by the head commit the API reports
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 19:13:35 +09:00
Adrià b42b29128b Merge pull request #3407 from GalaxyGamingFR/fix/import-audit-per-library-stubs
fix(tools): classify import_audit stubs per providing library
2026-10-11 12:09:27 +02:00
Adrià Franch 68f60cf348 fix(conventions): spell the stripped tab as an escape 2026-10-11 12:07:35 +02:00
GalaxyGamingFRandClaude Fable 5.1 3a1deb48a8 fix(conventions): strip trailing tab from spaced diff paths
Git appends a tab after file names containing spaces in the +++ header, so the
added-lines key kept the tab and its suffix no longer matched. Comment,
extension, title and silent-stub rules then skipped such files. The tab is
now stripped, with a test covering core/a b.cpp.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 12:07:34 +02:00
Adrià cdef5b7fce Merge pull request #3405 from GalaxyGamingFR/fix/pr-overlap-encoding
fix(tools): decode pr_overlap git output with errors=replace
2026-10-11 12:05:54 +02:00
Adrià Franch 52a5b4869a fix(tools): drop unused depends lookup in open_prs 2026-10-11 12:01:08 +02:00
GalaxyGamingFRandClaude Fable 5.1 26e0b30df3 fix(tools): ignore PR template placeholder when reading dependencies
The PR template's untouched "Depends on: <!-- #PR, or none -->" line
matched the checklist regex, so prose such as "Depends on #1400" was never
consulted and the declared dependency was lost. HTML comments are now
stripped and the prose form is used when the checklist line is blank. An
explicit "Depends on: none" still takes precedence.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 12:01:08 +02:00
Adrià 8ec0e13109 Merge pull request #3404 from GalaxyGamingFR/fix/conventions-checklist-bullets
fix(conventions): count * and + checklist bullets as unchecked
2026-10-11 11:59:14 +02:00
GalaxyGamingFRandClaude Fable 5.1 efbf36f637 fix(tools): make stubgen debt links resolve from docs/dev
stubgen emitted TechnicalDebt links as repo-relative paths, but
TechnicalDebt.md lives in docs/dev and the conventions checker resolves
links relative to it, so pasted lines failed CI. The derived default path
now carries a ../../ prefix; an explicit --td-path is used as given.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 11:58:25 +02:00
Adrià 5c4bc7d607 Merge pull request #3390 from GalaxyGamingFR/fix/check-skips-device-messages
fix(ci): recognise every device-limitation skip message in check_skips
2026-10-11 11:51:46 +02:00
GalaxyGamingFRandClaude Fable 5.1 50c288810e fix(tools): key import audit stubs by library
source_stubs pooled done NIDs across all libraries, so a throwing stub
in libSceShare.native counted as implemented when libSceShare had the
same function. Stubs are now keyed by (library.prx, nid) and audit marks
an import stub only when every provider of it is a stub.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 02:42:36 -07:00
GalaxyGamingFRandClaude Fable 5.1 15f34d3043 fix(tools): decode pr_overlap git output with errors=replace
One PR diff containing a byte that is not valid UTF-8 made git() and
merge() raise, which aborted the hourly run and dropped the overlap
comment on every PR. Both subprocess calls now pass errors="replace",
matching check_conventions.py. A test commits a Latin-1 byte and checks
the export is still found.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 02:42:08 -07:00
GalaxyGamingFRandClaude Fable 5.1 2f1b4aaf97 fix(conventions): count * and + checklist bullets as unchecked
The pull request check only matched unchecked items written with a dash,
so a checklist rewritten with * or + bullets passed with every box empty.
GitHub renders all three bullet styles as task items. The pattern now
accepts any of them, and new tests cover each bullet style.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 02:41:54 -07:00
Adrià 66d577d428 Merge pull request #3378 from GalaxyGamingFR/fix/conventions-quoted-paths
fix(conventions): read non-ASCII paths unquoted from git
2026-10-11 11:37:57 +02:00
Adrià f4b7151097 Merge pull request #2510 from Edd016/fix/hw-oracle-mingw-lld
fix(hw-oracle): select the AMDGPU ELF emulation when linking kernels
2026-10-11 11:33:58 +02:00
GalaxyGamingFRandClaude Fable 5.1 73b4bdb600 fix(tools): accept more device limitation skips in check_skips
The Linux skip check only recognised subgroup, "the device has no",
"the device reports" and "no display", so tests that skip with
"the device lacks ...", "does not import", "imports no", "flushes",
"binds fewer", "no usable Vulkan device" or "host imports are
unavailable" failed the job. The regex now covers those messages, and
unrelated reasons such as "flaky" still fail. A unit test covers the
messages and an end-to-end run.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 02:33:31 -07:00
GalaxyGamingFRandClaude Fable 5.1 8365766e93 fix(conventions): read non-ASCII paths unquoted from git
With git's default core.quotePath=true, paths with non-ASCII characters
were printed quoted and octal-escaped. The checker stored the quoted
string as the path and then failed in git show with a traceback. git()
now passes core.quotePath=false so raw UTF-8 paths are used. A test
covers a diff containing a non-ASCII file name.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 02:32:41 -07:00
TibixDev 3a35841aad feat(pad): accept timed controller pulses from a local command file
Add an optional input helper for test runs without desktop input injection. Preserve physical input and release injected buttons automatically.

Validation: guest_pad tests and Python helper CLI smoke checks passed. Written with AI assistance.
2026-10-11 10:54:18 +02:00
Adrià 85c7cf9b02 Merge pull request #3343 from AchrafReyani/carry/progress-literal-braces
fix(progress): ignore braces in literals and comments when scanning bodies
2026-10-11 10:50:56 +02:00
Adrià 407b5324de Merge pull request #2373 from 011010/ci/conventions-systemdeps-exemption
ci(conventions): exempt cmake/SystemDeps.cmake from the system-dependency rule
2026-10-11 10:26:03 +02:00
Achraf ReyaniandClaude Opus 5.5 ef94a36b90 fix(progress): blank literals and comments in one pass
An apostrophe in a block comment paired with a later character literal on
the same line when literals were blanked before comments, exposing a brace
and ending the body early.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:17:40 +09:00
GalaxyGamingFRandClaude Fable 5.1 f3216874c5 fix(progress): ignore braces in literals and comments when scanning bodies
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-10-11 17:16:25 +09:00
Blazing Cook 271e31a5a3 fix(conventions): restrict silent stub exemptions to their section 2026-10-11 16:45:35 +09:00
Adrià 8accbdaee0 Merge pull request #3287 from AchrafReyani/carry/conventions-comment-apostrophes
fix(tools): keep apostrophes in comments from opening character literals
2026-10-11 09:26:31 +02:00
Achraf ReyaniandClaude Opus 5.5 dd9c78aa1b fix(tools): stop collecting NIDs at abbreviated options and --nid=
Resolve each argument after --nid against the parser's option strings the
way argparse does, so --nid=B, abbreviations such as --j and --d=, and the
-- marker end the NID list instead of being taken as NIDs.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 13:24:35 +09:00
GalaxyGamingFRandClaude Fable 5.1 3dbcc5f1c7 fix(tools): keep apostrophes in comments from opening character literals
Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-10-10 21:21:07 -07:00
Achraf ReyaniandClaude Opus 5.5 7f9ca519b4 fix(tools): accept NIDs starting with a dash in nid_names --nid
NIDs use the base64 alphabet with '-', so some start with a dash, such as
-nvxBWa0iDs (gethostname). argparse read such a value after --nid as an
option and nid_names.py stopped with "unrecognized arguments". Every
value after --nid up to the next option of the tool is now passed as
--nid=<value>, and --nid collects them with append.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 12:40:04 +09:00