Repository navigation
fix(core): address v6 transition, typing, inspection and graph feedback - #5817
Conversation
🦋 Changeset detectedLatest commit: 63d10c1 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Why
Transition selection could lose enqueued effects inside
try/catch, schema inference accepted misspelled context keys, and inspection could misattribute events or turn observer exceptions into actor failures. Preserve those contracts and make graph evaluation failures actionable.What changed
unknownoranyinput.Scope
Tradeoffs
Reference-producing enqueue calls and direct parent sends retain speculative aborts and reevaluation to avoid initializing actors during selection. Catching those aborts no longer drops effects. Graph traversal still requires representative event payloads and does not infer every dynamic target.
Blast Radius
Changes transition selection, schema-derived context types, event provenance, and inspection callbacks. TypeScript now reports schema context misspellings that previously compiled.
Verification
0/5 issues reproducedagainst the built package. Runtime cases pass in production and development; type cases pass on TypeScript 5.9.3 and 6.0.3. Graph diagnostics retain the original cause and identify state and event.pnpm typecheck,pnpm lint,pnpm format:check,pnpm build, andpnpm check:filespass. Independent correctness review completed; its enqueue-validation finding was fixed and rechecked.pnpm test:core --maxWorkers=1passes all 162 test files and 2,722 tests, including the declaration-emission tests.