Repository navigation
🥁 test: Stabilize Host Edit Responsiveness Assertions - #16727
Conversation
|
Head: c935cf5 Separates skill-edit atomicity from timer ordering. Adds cold/reused-worker timer checks with a deliberately pending reply. Existing real-amplification timer coverage is unchanged. No production changes. |
|
Verified head: c935cf5
Default whole-workspace coverage collection exceeded the local command limit; scoped coverage completed. Full suites and Lighthouse were not run locally. CI is running. |
|
Reviewed head: c935cf5 Independent review complete: no findings. Confirmed amplification rejection, no-write assertions and existing real-amplification timer coverage remain intact. CI: all four @librechat/api shards and TypeScript checks passed. Remaining checks are running with no failures reported. Local evidence: 376 focused tests passed with scoped coverage; four regression cases passed across five runs. API typecheck and touched-file static checks passed. Independent reviewer did not rerun Jest. |
c935cf5 to
18db092
Compare
Summary
API shard 4/4 intermittently fails an existing skill-edit assertion across unrelated PRs. Introduced in #16677, the assertion treats a worker reply arriving before
setTimeout(0)as timer starvation, even when the edit is correctly rejected without writing.Separate atomicity from responsiveness: skill handler tests keep real amplification rejection and no-write assertions. Worker lifecycle tests hold a reply pending and check timer progress with both cold and reused workers. Existing real-amplification timer coverage remains intact. No production code changes.
Related to #16707, #16719, #16715.
How it works
Type of change
Testing
Environment: Node.js 24.16.0, repository npm/Jest configuration.
Automated checks at
c935cf5b7530619266cb35f6da01f015e0ee3b1e:handlers.ts,processing.tsandmatching.ts.npm exec --workspace packages/api -- tsc --noEmit: passed.npm run static-checks -- --against origin/dev: passed.The default whole-workspace coverage collection hit the local command limit after both suites passed. The scoped coverage run completed successfully. Full suites and Lighthouse were not run locally; this changes tests only.
Investigation: Original handler suite passed locally. A disposable Node inspector set a conditional breakpoint before
clearTimeout(timer); 200 repeated original cases passed without hitting it. The CI failure was not reproduced locally.Screenshots / recordings
No user-facing change.
Risk / compatibility
Test-only. Worker budgets, matching, persistence and runtime behavior are unchanged.