You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(runner): Ensure frame.space is always set and add inHandler flag
Audit and fix frame creation to ensure space is always available from
the result cell context:
1. Modified pushFrameFromCause() to:
- Extract space from unsafe_binding and set on frame.space
- Accept inHandler boolean parameter (replaces event field)
- This makes frame.space available as fallback in cell.ts
2. Renamed Frame.event to Frame.inHandler:
- More accurate semantic: indicates handler context, not event data
- Used for per-frame counter-based ID generation fallback
- Simpler boolean check vs checking event truthiness
3. Updated CauseContainer to store space:
- Container now holds id, space, and cause for sharing across siblings
- ensureLink() checks if container has both id and space before deriving
- Space from container takes precedence over frame space
4. Updated event handler in runner.ts:
- Pass inHandler: true to pushFrameFromCause()
- Frame now has both space (from processCell.space) and inHandler flag
Benefits:
- frame.space fallback in cell.ts now works correctly
- clearer semantics with inHandler vs event
- space always available from result cell in runner contexts
- CauseContainer properly shares space across siblings
0 commit comments