Skip to content

Guard choice interactions without overlay#227

Merged
han4wluc merged 11 commits intomainfrom
fix/choice-interaction-guards
Apr 4, 2026
Merged

Guard choice interactions without overlay#227
han4wluc merged 11 commits intomainfrom
fix/choice-interaction-guards

Conversation

@han4wluc
Copy link
Copy Markdown
Contributor

@han4wluc han4wluc commented Apr 4, 2026

Summary

  • replace the fullscreen choice overlay with a derived isChoiceVisible selector threaded into render/template data
  • stop auto/skip/next-line timers when a choice becomes visible and block non-choice RouteGraphics actions before action templating or dispatch runs
  • preserve choice-origin interactions by tagging click payloads from the choice subtree and avoid clone-sensitive presentation reconstruction by using a line-scan choice selector
  • add focused selector, event-bridge, render-state, and VT coverage for the blocked-click regression

Testing

  • npm test -- puty.spec.js spec/createEffectsHandler.routeGraphicsEvents.test.js spec/systemStore.choiceVisibilityCloneSafety.test.js
  • docker run --rm --user $(id -u):$(id -g) -e RTGL_VT_DEBUG=true -v "$PWD:/app" -w /app docker.io/han4wluc/rtgl:playwright-v1.57.0-rtgl-v1.0.10 rtgl vt screenshot --wait-event vt:ready --concurrency 1 --timeout 60000 --item choice/blocked-non-choice-actions.yaml

@han4wluc han4wluc merged commit a7e08a7 into main Apr 4, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant