Repository navigation
test(executor): re-enable unit tests and add runtime semantics guards - #168
Merged
Merged
Conversation
The `#[cfg(test)] mod tests;` declaration was dropped from pctx_executor/src/lib.rs in 52efa39, so every test under src/tests/ (including concurrent_v8_stress) stopped compiling or running. All 51 still pass once re-enabled. Adds runtime_semantics.rs to pin behaviour that a deno_core / V8 bump can silently change: tool-call (op_invoke) and timer (op_sleep) scheduling relative to microtasks, parallel vs sequential tool calls, tool error propagation, event loop draining after module evaluation, unhandled rejections, error stacks, ICU-backed Intl, Temporal, sync and async WebAssembly, and multi-threaded execution with async ops. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Patrick Kelly (pk8189)
force-pushed
the
test/runtime-semantics-guards
branch
from
October 5, 2026 14:36
f8e9e01 to
96d4ab6
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Two things, both test-only:
pctx_executor's unit tests.#[cfg(test)] mod tests;was dropped fromcrates/pctx_executor/src/lib.rsin 52efa39 ("execution event trace", shipped in v0.7.0), so nothing undersrc/tests/has compiled or run since — includingconcurrent_v8_stress, our guard against the multi-threaded V8 isolate crash. All 51 existing tests still pass once re-enabled.runtime_semantics.rs(15 tests) pinning behaviour that adeno_core/ V8 bump can silently change. Written while validating chore: bump deno stack to deno_core 0.412 / deno_ast 0.53 #167; they pass identically onmainand on chore: bump deno stack to deno_core 0.412 / deno_ast 0.53 #167's branch.What the new tests cover
op_invokescheduling: tool calls resolve after microtasks;Promise.allcalls overlap (and start before any finishes); sequential calls don't overlapallSettled/race, uncaught tool error fails the executionop_sleeptimers: ordering vs microtasks and by delay,setInterval+clearIntervalRangeErrorIntl(time zones, plural rules, collation, locale casing, Japanese era) andTemporal(incl. a DST gap)WebAssembly(async compile depends on V8 platform tasks being pumped)Type of Change
Testing
No new clippy warnings from the added file (clippy isn't enforced in CI; the re-enabled older test files carry a few pre-existing pedantic warnings).
Notes
Not covered here, found while probing — both pre-existing on
main, to be filed separately:throwinside asetTimeoutcallback, orAtomics.waitAsync, hangsexecute()indefinitely while holdingV8_MUTEX..json/.jsfiles from the host filesystem viaFsModuleLoader.Documentation
🤖 Generated with Claude Code