-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Labels
area:runtime-nodeArea: Node runtime bridgeArea: Node runtime bridgebugSomething isn't workingSomething isn't workingpriority:p2Priority P2 (medium)Priority P2 (medium)
Milestone
Description
Summary
OptimizedNodeBridge caches calls via JSON.stringify args; circular/BigInt args throw, and cache heuristics can return stale results for stateful functions.
Failure mode
- Calls can throw before reaching Python when args are not JSON-serializable.
- Cached results can be incorrect for non-pure functions with misleading names.
Proposed fix
- Make caching opt-in/configurable for OptimizedNodeBridge.
- Guard cache key generation with try/catch; bypass cache on stringify errors.
- Optionally require an explicit allowlist of cacheable functions.
Acceptance criteria
- Calls with circular/BigInt args still execute without cache errors.
- Caching is disabled by default or explicit; tests cover both paths.
Metadata
Metadata
Assignees
Labels
area:runtime-nodeArea: Node runtime bridgeArea: Node runtime bridgebugSomething isn't workingSomething isn't workingpriority:p2Priority P2 (medium)Priority P2 (medium)