rea/tests
Ysopwnable 21aa877e5a
fix(process): honor startup deadlines and add a CI audit skill (#2692)
* docs(skills): add CI and test correctness auditing

Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>

* fix(process): report no remaining time after a provider deadline fires

Node timers can fire while performance.now() is still a fraction of a
millisecond short of the monotonic deadline. ProviderStartupDeadline then
reported interruption "timeout" and an aborted signal while remainingMs()
returned ceil(0.x) = 1, so polling loops guarded by remainingMs() > 0
(Hopper and Ghidra startup) could run past an elapsed deadline, and the
real-timer test "aborts a bounded wait when its real monotonic deadline
expires" failed intermittently in CI (expected 1 to be 0).

Once the deadline's own timer has classified a timeout, report zero
remaining time. A deterministic regression test fires the timer with the
monotonic clock 0.4 ms short of the deadline.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(process): retain the monotonic startup deadline budget

Recheck the absolute monotonic deadline when an early timer fires, and keep
polling waits pending until their own target or the shared deadline arrives.
Preserve caller cancellation, disposal and the unchanged real-timer assertion.
This replaces the earlier remainingMs workaround: an early callback must not
classify an unexpired deadline as a timeout.

Adapt the production fix and regression cases from nosmile99 PR #2793 at
546001693636f13700d86c6e93b6086abba2b7d6, including the independently reported
both-timers-early reproduction. Preserve the prior contributor's commit.

Fixes #2760

Co-authored-by: nosmile99 <147114285+nosmile99@users.noreply.github.com>
Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>

* style(tests): format the Java class fixture signature

The captured main baseline has an unformatted helper signature. Apply the
repository formatter so the required style gate can run to completion.

Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>

* test(ghidra): group expanded suites by their contracts

Split result-envelope and completeness checks, and Windows invocation and
runtime checks, into named describe groups within the existing lint limit.
Preserve every test, fixture, assertion and platform prerequisite.

Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>

---------

Co-authored-by: Kaoru0822 <208281322+kaoru0822-kitauji@users.noreply.github.com>
Co-authored-by: morluto <76467478+morluto@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: nosmile99 <147114285+nosmile99@users.noreply.github.com>
2026-10-13 22:15:43 +08:00
..
acceptance fix(flutter): reject ambiguous ELF mappings and bound note reads (#2334) 2026-10-13 22:13:22 +08:00
boundary fix(process): honor startup deadlines and add a CI audit skill (#2692) 2026-10-13 22:15:43 +08:00
composition fix(ida): report missing tools when a compatibility profile mismatches (#2307) 2026-10-13 21:58:36 +08:00
conformance feat(android): expose exact DEX descriptors and direct invoke sites (#2439) 2026-10-13 22:02:47 +08:00
evaluation ci: observe affected-owner test plans against full results 2026-10-13 19:21:09 +08:00
fixtures fix(process): honor startup deadlines and add a CI audit skill (#2692) 2026-10-13 22:15:43 +08:00
process-global fix(setup): resolve the configuration MSIX Claude Desktop reads (#2426) 2026-10-13 22:04:22 +08:00
support test(cli): preserve Windows runtime paths and failure diagnostics 2026-10-12 15:46:42 +08:00
ciTestSequencer.ts ci: finish main validation and balance complete test costs 2026-10-13 18:54:05 +08:00
processOwnershipRunner.ts test(process): retire native caches at worker teardown 2026-10-09 04:12:49 +08:00