Skip to content

Bug fixes, test coverage improvements, and CI integration with fallow code health analysis.

Choose a tag to compare

@TenGosc007 TenGosc007 released this 03 Jun 11:50
· 15 commits to main since this release
d12518e

1.4.0 - 2026-06-03

Added

  • GameEvent.PLAYER_MOVE is now emitted by savePlayerMove with correct index payload
  • GameEvent.RESET is now emitted exclusively by reset() — no longer fires on every state update
  • GameEvent.STATE_CHANGE is now also emitted by backToMove
  • CI workflow (.github/workflows/ci.yml) with test coverage and fallow health analysis on push to main and pull requests
  • test:coverage script in package.json — runs vitest with v8 coverage
  • fallow script in package.json — runs fallow health with coverage data
  • fallow added to devDependencies
  • @vitest/coverage-v8 added to devDependencies
  • Test suite expanded to 38 tests covering all event contracts, snapshot stability, _gameStatus reference preservation, custom board size, and all 8 winning combinations

Fixed

  • _updateGameState was incorrectly emitting GameEvent.RESET on every savePlayerMove and backToMove call
  • GameEvent.PLAYER_MOVE was never emitted (missing emit in _updateGameState)
  • _gameStatus reference was unnecessarily replaced with a new object on every move when the game remained in "running" state

Changed

  • Board._curretnFields renamed to Board._currentFields (typo fix)
  • coverage/ added to .gitignore