undef-dice
2026-02-02
Vanilla Three.js layer removed; core modules relocated to src/core/; Zustand store tests added
120 files · 5,529+ · 11,569-
Architectural namespace reorganization
25 files changed
defaults.tsConfig defaults moved to src/core/dice-configs.tsDice configs moved to src/core/index.tsConfig index moved to src/core/custom-geometry.tsDice geometry moved to src/core/dice/face-reader.tsFace reader moved to src/core/dice/geometry-data.tsGeometry data moved to src/core/dice/mesh-factory.tsMesh factory moved to src/core/dice/notation-parser.tsNotation parser moved to src/core/dice/numbers-overlay.tsNumbers overlay moved to src/core/dice/textures.tsTextures moved to src/core/dice/chromatic-aberration.tsEffect moved to src/core/effects/crt-scanlines.tsEffect moved to src/core/effects/effect-chain.tsEffect chain moved to src/core/effects/motion-trails.tsEffect moved to src/core/effects/panel-glow.tsEffect moved to src/core/effects/pixelation.tsEffect moved to src/core/effects/seeded-rng.tsSeeded RNG moved to src/core/integration/die-bodies.tsPhysics bodies moved to src/core/physics/world.tsPhysics world moved to src/core/physics/pre-simulate.tsPre-simulate moved to src/core/simulation/playback.tsPlayback moved to src/core/simulation/config.tsTypes moved to src/core/types/dice.tsTypes moved to src/core/types/ui-setup.tsUI setup moved to src/core/logger.tsLogger moved to src/core/utils/
- Moved all engine modules into
src/core/namespace:config/,dice/,effects/,integration/,physics/,simulation/,types/,utils/remediate architectural5 files
dice-configs.tsnotation-parser.tseffect-chain.tsworld.tspre-simulate.ts
- Deleted the entire vanilla Three.js layer (~11,500 lines removed):
remediate
architectural
5 files
scene.tsfloor.tsroll.tsdice-buttons.tsmain.css
Test coverage expansion
10 files changed
useCameraStore.test.tsCamera store testsuseDiceStore.test.tsDice store testsuseEffectsStore.test.tsEffects store testsuseHistoryStore.test.tsHistory store testsuseModifierStore.test.tsModifier store testsusePhysicsStore.test.tsPhysics store testsusePresetStore.test.tsPreset store testsEffectComposer.test.tsxEffectComposer component testsPanelGlow.test.tsxPanelGlow component testsvisual-parity.spec.tsVisual parity E2E test comparing vanilla and React renders
- Added 7 comprehensive Zustand store test suites (~3,700 lines total):
qualify
internal
7 files
useCameraStore.test.tsuseDiceStore.test.tsuseEffectsStore.test.tsuseHistoryStore.test.tsuseModifierStore.test.tsusePhysicsStore.test.tsusePresetStore.test.ts
- Added
EffectComposer.test.tsxandPanelGlow.test.tsxcomponent tests qualify internal2 files
EffectComposer.test.tsxPanelGlow.test.tsx
- Added
visual-parity.spec.tsE2E test comparing vanilla and React renders qualify internal1 file
visual-parity.spec.ts
Supporting additions
6 files changed
record-features.mjsAutomated feature recording scriptindex.htmlStripped down by ~490 lines, removing inline styles and scriptstsconfig.build.jsonUpdated path mappingsvitest.config.tsEnhanced test setup with additional mocking utilitiestest-setup.tsEnhanced test setupcss.d.tsCSS module type declarations
- Added
record-features.mjsscript for automated feature recording instantiate behavioral1 file
record-features.mjs
- Stripped down
index.htmlby ~490 lines, removing inline styles and scripts remediate internal1 file
index.html
- Updated import paths across all remaining source files to use
@/core/prefix remediate internal2 files
tsconfig.build.jsonvitest.config.ts