games_hub: rummy (#245) - #1608
Conversation
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
iili | 7a71af6 | Commit Preview URL Branch Preview URL |
Sep 28 2026, 08:05 PM |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
1d4-web | 7a71af6 | Commit Preview URL Branch Preview URL |
Sep 28 2026, 08:05 PM |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
ast-lol | 7a71af6 | Commit Preview URL Branch Preview URL |
Sep 28 2026, 08:06 PM |
…kend-ui-fvxk0l # Conflicts: # domains/games/apis/games_hub/BUILD.bazel
Review panel + Bugbot (
|
Recheck at
|
|
Generated by Claude Code |
CI note (
|
Closes #245. UI: muchq/muchq.github.io PR on branch
claude/rummy-game-backend-ui-fvxk0l.Basic rummy as the hub's third game, on castle's terms:
libs/cards/rummy: 10 cards at 2 seats, 7 at 3–4; draw stock or discard; melds (sets, runs, ace low or high, no wrap) and lay-offs onto anyone's meld; discard ends the turn; the card taken from the discard can't go straight back unless it's the last in hand; an empty stock is the discard turned over under its top; first empty hand wins and scores the others' deadwood. Versioned serde for thegamesrow.model/rummy.smithy:rummyenvelope member; moves name cards (castle: the wire should name cards, not the engine's slots #1505). The view redacts other hands and the stock, and a stock draw'slastMovenames no card.TableEngineMove<Engine>/LifecycleMove<Move>; castle behaviour unchanged (castle_e2e green). Rummy points ridegameEndedand stay out of the room's running total (golf's lower-is-better scale).hubVariants, dejaVARIANTS, otel_contract pin, prom_proxy Rummy tiles.Tests:
rummy_e2e_test: whole games against an engine mirror at 2/3/4 seats; also redaction, refusals, refill, abandonment, resumerummy_wire_test: raw-byte goldenshub_e2e_testpg_hub_store_testandpg_hub_e2e_test(restart mid-turn). Ran locally against Postgres 16.Locally:
bazel test //domains/games/...with Postgres, stats/otel_contract/deja/prom_proxy tests,--runs_per_test=10on the rummy stream suites, and a mutation-check over hub redaction and engine rules. The only surviving mutant is equivalent.The review panel ran against the first commit; its survivors are the second commit. Cursor's panel fold-ins are the last.
Rummy variants are planned separately (#1609–#1611).
Generated by Claude Code