WinSummaryOverlay bypasses spawn_modal / ModalScrim — invisible to all modal guards #24
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
File
solitaire_engine/src/win_summary_plugin.rslines 757–899Description
spawn_overlaybuilds the win summary as a manually-spawned full-screen node without usingspawn_modalor attachingModalScrim. CLAUDE.md §14 requires all full-screen overlays to use thespawn_modal/ModalScrimpattern.Because
WinSummaryOverlayis not aModalScrim:toggle_pause's!other_modal_scrims.is_empty()guard will not block Esc from opening Pause on top of it.auto_resume_on_overlaywill not clear pause state when it appears.Fix
Refactor
spawn_overlayto usespawn_modal(commands, WinSummaryOverlay, Z_WIN_CASCADE, ...)and attachModalScrimso the win summary participates in the global modal guard system.