undef-dice 2026-02-05
Operational excellence pass: ErrorBoundary, escape-html utility, logging standardization, and ESLint tightening
127 files · 13,816+ · 4,629-

New capabilities

4 files changed
  • REVIEW_CHECKLIST.md Operational excellence review criteria checklist
  • ErrorBoundary.tsx React error boundary for graceful error handling
  • escape-html.ts HTML escaping utility for safe rendering
  • defaults.ts New defaults configuration
  • Added REVIEW_CHECKLIST.md with operational excellence review criteria specify internal
    1 file
    • REVIEW_CHECKLIST.md
  • Created ErrorBoundary.tsx component for graceful React error handling harden behavioral
    1 file
    • ErrorBoundary.tsx
  • Added src/utils/escape-html.ts utility for safe HTML rendering harden internal
    1 file
    • escape-html.ts
  • Added new defaults configuration in src/config/defaults.ts baseline internal
    1 file
    • defaults.ts

Code quality refactoring

14 files changed
  • roll.ts Cleaner roll orchestration logic (~385 line diff)
  • main.ts Simplified by removing ~80 lines of redundant initialization
  • messaging.ts Standardized logging
  • bootstrap.ts Standardized logging
  • ui-setup.ts Standardized logging
  • mesh-factory.ts Extracted mesh-factory helper logic
  • presets.ts Improved preset handling
  • DiceRoller.tsx Minor type and import fixes
  • DiceScene.tsx Minor type and import fixes
  • Die.tsx Minor type and import fixes
  • PlaybackDie.tsx Minor type and import fixes
  • UndefDiceApp.tsx Minor type and import fixes
  • useDiceStore.ts Cleaner store interface
  • useEffectsStore.ts Cleaner store interface
  • Overhauled src/game/roll.ts (~385 line diff) with cleaner roll orchestration logic remediate internal
    1 file
    • roll.ts
  • Simplified src/main.ts by removing ~80 lines of redundant initialization remediate internal
    1 file
    • main.ts
  • Standardized logging across messaging.ts, bootstrap.ts, ui-setup.ts, and other modules to use the centralized logger remediate internal
    3 files
    • messaging.ts
    • bootstrap.ts
    • ui-setup.ts
  • Extracted mesh-factory helper logic in src/dice/mesh-factory.ts remediate internal
    1 file
    • mesh-factory.ts
  • Updated src/ui/presets.ts with improved preset handling remediate behavioral
    1 file
    • presets.ts
  • Cleaned up src/react-app/ components with minor type and import fixes remediate internal
    3 files
    • DiceRoller.tsx
    • DiceScene.tsx
    • Die.tsx

Tooling and dependencies

4 files changed
  • eslint.config.js Stricter ESLint rules
  • package.json Removed unused fuse.js dependency
  • vite.config.ts Build configuration updates
  • tsconfig.build.json TypeScript build configuration updates
  • Expanded ESLint config with stricter rules baseline internal
    1 file
    • eslint.config.js
  • Removed unused fuse.js dependency from package.json baseline internal
    1 file
    • package.json
  • Fixed ESLint errors across test files and source remediate internal
    3 files
    • eslint.config.js
    • useCameraStore.test.ts
    • useDiceStore.test.ts