undef-dice
2026-03-01
Dropped die detection, secure throw, results display fixes, E2E test refactor, and dead-code detection tooling
39 files · 1,670+ · 1,306-
Core physics and input fixes
3 files changed
UndefDiceApp.tsxIndex-based dropped die detection, stable keyboard listener, frame-based secure throwuseKeyboard.tsKeyboard listener stability improvementsuseModifierStore.tsModifier store adjustments
- Index-based dropped die detection replaces fragile identity-based detection. Keyboard listener stabilized. Frame-based secure throw implemented.
remediate
behavioral
2 files
UndefDiceApp.tsxuseKeyboard.ts
Results display
1 file changed
ResultsOverlay.tsxD% max value and DF min value highlighting corrected
- D% (percentile dice) max value highlighting and DF (fate dice) min value highlighting corrected in the ResultsOverlay component.
remediate
behavioral
1 file
ResultsOverlay.tsx
E2E test refactor
17 files changed
_helpers.tsShared E2E helper utilitiesthrow.spec.tsPer-die throw spec for d4throw.spec.tsPer-die throw spec for d6throw.spec.tsPer-die throw spec for d8throw.spec.tsPer-die throw spec for d10throw.spec.tsPer-die throw spec for d12throw.spec.tsPer-die throw spec for d20snapshot.spec.tsCanvas snapshot regression test for d4snapshot.spec.tsCanvas snapshot regression test for d6snapshot.spec.tsCanvas snapshot regression test for d8snapshot.spec.tsCanvas snapshot regression test for d10snapshot.spec.tsCanvas snapshot regression test for d12snapshot.spec.tsCanvas snapshot regression test for d20determinism-rapier.spec.tsDeterminism test with rewound playback startTimefull-session.spec.tsFull session test updated to use getByTestId for grab-btndice-roller.spec.tsDice roller E2E tests updatedUndefDiceApp.test.tsxApp mock and E2E selectors repaired
- Monolithic canvas-snapshot E2E test replaced with per-die feature specs (throw + snapshot per die type). Headless Playwright config and canvas snapshot regression tests added. grab-btn selectors updated to use getByTestId after aria-label approach broke getByRole.
decouple
behavioral
4 files
_helpers.tsthrow.spec.tssnapshot.spec.tsdeterminism-rapier.spec.ts
Tooling
4 files changed
knip.jsonKnip dead-code detection configurationpre-commitPre-commit hook updatedpackage-lock.jsonLock file updated after audit fixespackage.jsonThree audit vulnerabilities fixed via npm audit fix