Skip to content

v1.0.0-alpha.10

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 13 Jun 09:47
6a22bfa

1.0.0-alpha.10 (2026-06-13)

Features

  • about: tell the origin story on the About screen (90fce60)
  • coach: overhaul the advisor into decision-aware, stage-aware coaching (2005e96)
  • coach: present finish plans, narrated holds, and swap-first copy (a2396bc)
  • coach: see whole finishes, narrate holds, lead with the joker swap (e17e557)
  • cpu: refine the Expert opponent-threat model and expose it for the coach (817dad6)
  • cpu: sharper Fifty, cover, and joker-swap postures in the pipeline (5fb0ce6)
  • game: persist deal seeds for reports (abe1320)
  • match: add landscape match-over overlay; drop the portrait screen (0798212), closes #96
  • reports: add developer replay harness for exported reports (699c11f)
  • reports: add diagnostic log and action transcript models (83d2f67)
  • reports: embed diagnostics and transcript in match reports (23837f2)
  • reports: encode versioned match exports (8760e49)
  • reports: record diagnostics and transcript at the applyAction seam (80a3df4)
  • table: center east/west melds into columns (cd1018e), closes #96
  • table: coach insight flow (once-per-round banners) + compute gating (75eeef9)
  • table: fly each placed meld to its own resting slot (bb02559), closes #96
  • table: stage banners ride as a note under the primary coach hint (37b7f2b)
  • table: wire flight slots, Fifty give-up, practice pause, and match-over overlay (c040ec5), closes #96
  • ui: add match report export actions (0e3d0ad)
  • ui: confirm report contents and capture diagnostics on export (d5f636a)
  • ui: render the Fifty cue as a flame (1f77abd)
  • web: fill-viewport table scaling and back-navigation guard (d42db4d)
  • web: persist prefs, matches, and onboarding via localStorage (8c8d2b3)

Bug Fixes

  • cards: apply cubic card filtering on web only (20d1646)
  • cards: render card art with cubic filtering (8d8e789)
  • coach: decouple two hints from advisor invariants (c05d5d0)
  • coach: lay-off rider rides the brain's posture, fiftyHold always names a throw (b4e2b16)
  • coach: prove take-and-finish with the engine finish planner (ed17255)
  • coach: re-key the callout when hold-back attribution changes (e96a721)
  • coach: re-teach each distinct bait card and re-key on benchmark raises (48e6a3c)
  • correct Arabic localization strings (4f28fcc)
  • correct Arabic strings and onboarding content visibility (b1b0f4c)
  • cpu: primaryThreatFor names the most dangerous opponent per tier (570e60d)
  • cpu: read aces high in the collecting tell and own-run cover hold (df3c8b4)
  • cpu: tighten three opponent-threat-model edges (74251bd)
  • engine: draw a stock-exhausted round that can never finish (a902394)
  • engine: end the round when the human is eliminated by score (5312945)
  • engine: enumerate every joker variant for the finish-proof value gate (a44ec12)
  • engine: only report finishes an unopened pickup can realize (6ab9de1), closes #94
  • engine: prove finishes through ambiguous-joker melds (e458283)
  • fifty: let a doomed Fifty pickup be given up by returning the card (5d0cc02)
  • fifty: take staged melds back before giving up on every tier (f249b1f), closes #96
  • jokers: keep the joker badge from hiding cards in the meld-suggestion rack (68037de), closes #96
  • l10n: externalize choose joker identity dialog title (506d9eb)
  • l10n: externalize choose joker identity dialog title (985b4b7), closes #100
  • l10n: unify AI-player term to الكمبيوتر in Arabic (28cc374)
  • reports: harden report decoder diagnostics (8875929)
  • reports: ignore a negative persisted droppedCount on decode (f850dd9)
  • reports: keep the canonical coach hint id and detail stock mismatches (d880d89)
  • reports: validate decoded report, transcript, and diagnostics (review) (3be810c)
  • table: coach keys carry their own dimensions, presenter guards subjectSeat (4ac1cbd)
  • table: coach turn tracking, seat-only recompute, rematch flow reset (dc28f5d)
  • table: localize the give-up Fifty dialog and guard its async gap (b738bce), closes #96
  • table: match the playfield compact breakpoint in meld-flight geometry (3638e30), closes #96
  • ui: abandon the match and open match-over when the human is eliminated (087169c)
  • ui: bound the CPU loop auto-restart so a stalled round can't freeze (4cc7028)
  • ui: make picking up a discard distinct from claiming Fifty (fd4f8fc)
  • ui: pass high-contrast to the match-over report sheet (review) (294b7ac)
  • web: branded loading screen and manifest orientation/theme (17d1a05)
  • web: download match reports and gate splash audio on web (51bfbfd)
  • web: keep the report-download anchor in the document (b8722a5)

Performance Improvements

  • web: lazy audio, webp brand mark, add web interop dep (4aa3843)