a44b4de717
`active` was `$derived(gameStore.activeBoards)`, and that getter read the non-`$state` `#game`. The $derived captured no reactive dependency, so the glowing/interactive boards froze on North's NW+NE after move 1: the next player couldn't act, clicks on their boards did nothing, and selections fired on unexpected boards — the reported "turns", "what piece is selected", and "mirrored movements" symptoms were all this one stale-derived bug. Fix: derive `active` from the reactive `view.currentPlayer`; remove the footgun `activeBoards` getter so nothing re-reads `#game` reactively. Add scripts/smoke.py: Playwright end-to-end test driving the real app through a full N->S->E->W round (engine vitest can't see Svelte reactivity wiring). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
35 lines
414 B
Plaintext
35 lines
414 B
Plaintext
# Logs
|
|
logs
|
|
*.log
|
|
npm-debug.log*
|
|
yarn-debug.log*
|
|
yarn-error.log*
|
|
pnpm-debug.log*
|
|
lerna-debug.log*
|
|
|
|
node_modules
|
|
node_modules/
|
|
dist
|
|
dist/
|
|
dist-ssr
|
|
*.local
|
|
|
|
# Editor directories and files
|
|
.vscode/*
|
|
!.vscode/extensions.json
|
|
.idea
|
|
.DS_Store
|
|
*.suo
|
|
*.ntvs*
|
|
*.njsproj
|
|
*.sln
|
|
*.sw?
|
|
|
|
# Project-specific
|
|
.superpowers/
|
|
*.tsbuildinfo
|
|
GITEA_API.md
|
|
|
|
# Backups (global safety rule keeps these locally; never commit them)
|
|
.backup/
|