Skip to content

v0.9.0

Choose a tag to compare

@github-actions github-actions released this 30 Jan 04:13
· 67 commits to 00917a73e65015b234164c9c34c8f2ce2895a4ca since this release

v0.9.0 Release Notes

Shanten Calculation Fixes (agari-core)

  • Fixed incorrect shanten with called melds (pon, chi, kan): The shanten formula now properly accounts for the minimum number of tiles required to form a valid tenpai hand

    • Previously, hands like 999m[1111m][1111p][1111s] (3 tiles + 3 kans) incorrectly showed as "Tenpai"
    • Now correctly calculates based on tile deficit from minimum required
  • Added tile deficit validation: Prevents reporting tenpai when there aren't enough tiles to form a valid waiting pattern

  • Minimum tiles for tenpai by called meld count:

    Called Melds Min Hand Tiles for Tenpai
    0 13
    1 10
    2 7
    3 4
    4 1 (tanki wait)

Dora Counting Fixes

  • Fixed ura dora not counting tiles in kans: WASM bindings now include tiles from called melds (pon, chi, kan) when counting dora/ura dora
  • Added red five (akadora) support in dora selectors: 0m, 0p, 0s options now available in dropdowns
  • Fixed red five display: Red fives render correctly as red 5 tiles with indicator dot (was showing "0")
  • Fixed backend error with red fives: Red five notation converted to standard notation before sending to backend

Web Frontend Improvements

  • Meld Builder UI: Interactive chi/pon/kan/ankan builder with validation
  • Winning Tile Selection: Click tiles to mark as winning tile
  • Fixed kan hand size calculation: Kans now correctly use 3 slots (not 4) since you draw a replacement tile
  • Hand notation always visible: Shows notation when tiles or melds are present

Technical Changes

  • Added calculate_shanten_with_melds() public API in agari-core
  • Added ALL_TILES_WITH_RED constant for tile selection including red fives
  • Updated WASM bindings for meld-aware shanten and dora counting