Commit Graph

  • 121959ba27 docs(CLAUDE.md): staging deploy verification checklist main v3.3.5.2 adlee-was-taken 2026-04-18 14:06:37 -04:00
  • 612eccf03b fix(ci): force-update tags on deploy fetch v3.3.5.1 adlee-was-taken 2026-04-18 14:02:06 -04:00
  • 76a9de27c2 chore(staging): wire LEADERBOARD_INCLUDE_TEST_DEFAULT into compose v3.3.5 adlee-was-taken 2026-04-18 00:55:00 -04:00
  • f37f279098 chore: bump version to 3.3.5 adlee-was-taken 2026-04-18 00:50:30 -04:00
  • c02b0054c2 fix(server): winner_id on completed games + stats idempotency latch adlee-was-taken 2026-04-18 00:47:53 -04:00
  • 8030a3c171 fix(server): populate games_v2 metadata on game start adlee-was-taken 2026-04-18 00:41:58 -04:00
  • d5f8eef6b3 fix(server): mark games abandoned on room teardown + staging leaderboard adlee-was-taken 2026-04-18 00:37:49 -04:00
  • 70498b1c33 fix(soak): multi-hole round transitions, token refresh, dashboard wiring adlee-was-taken 2026-04-17 20:37:24 -04:00
  • ccc2f3b559 fix(server): game completion pipeline — stats recording + dict iteration safety adlee-was-taken 2026-04-17 20:37:08 -04:00
  • d5194f43ba docs(soak): full README + validation checklist adlee-was-taken 2026-04-11 23:05:22 -04:00
  • b9cc7d29cf Merge feat/soak-harness: multiplayer soak & UX test harness + v3.3.4 v3.3.4.1 adlee-was-taken 2026-04-11 22:58:36 -04:00
  • b8bc432175 feat(soak): artifacts, graceful shutdown, health probes, smoke script, v3.3.4 adlee-was-taken 2026-04-11 22:57:15 -04:00
  • d3b468575b feat(soak): per-room watchdog + heartbeat wiring + multi-game lobby fix adlee-was-taken 2026-04-11 21:52:49 -04:00
  • 921a6ad984 feat(soak): stress scenario with chaos injection adlee-was-taken 2026-04-11 21:49:30 -04:00
  • c307027dd0 feat(soak): --watch=tiled launches N headed host windows adlee-was-taken 2026-04-11 21:01:21 -04:00
  • 21fe53eaf7 feat(soak): click-to-watch live video via CDP screencast adlee-was-taken 2026-04-11 20:54:52 -04:00
  • 34ce7d1d32 feat(soak): Screencaster — CDP Page.startScreencast wrapper adlee-was-taken 2026-04-11 19:06:17 -04:00
  • 796de876b7 feat(soak): wire --watch=dashboard in runner adlee-was-taken 2026-04-11 19:05:44 -04:00
  • a35e789eb9 feat(soak): dashboard status grid UI adlee-was-taken 2026-04-11 18:55:21 -04:00
  • 9d1d4f899b feat(soak): DashboardServer — vanilla http + ws adlee-was-taken 2026-04-11 18:53:59 -04:00
  • d1688aae0b feat(soak): runner.ts end-to-end with --watch=none adlee-was-taken 2026-04-11 18:52:08 -04:00
  • a6a276b509 fix(bot): GolfBot handles authenticated sessions + num-decks stepper adlee-was-taken 2026-04-11 18:52:07 -04:00
  • 6df81e6f8d feat(soak): CLI parsing + config precedence adlee-was-taken 2026-04-11 17:25:04 -04:00
  • 2c20b6c7b5 feat(soak): populate scenario + scenario registry adlee-was-taken 2026-04-11 17:23:56 -04:00
  • 722934bdf2 feat(soak): shared runOneMultiplayerGame helper adlee-was-taken 2026-04-11 17:23:00 -04:00
  • 2a86b3cc54 feat(soak): scripts/seed-accounts.ts CLI wrapper adlee-was-taken 2026-04-11 17:22:10 -04:00
  • 3bc0270eb9 feat(soak): SessionPool — seed, login, acquire contexts adlee-was-taken 2026-04-11 17:19:39 -04:00
  • 066e482f06 feat(soak): structured JSONL logger with child contexts adlee-was-taken 2026-04-11 17:12:27 -04:00
  • 02642840da feat(soak): RoomCoordinator with host→joiners handoff adlee-was-taken 2026-04-11 17:11:05 -04:00
  • 1565046ab7 feat(soak): core types + Deferred primitive adlee-was-taken 2026-04-11 16:58:56 -04:00
  • 5478a4299e feat(soak): scaffold tests/soak package adlee-was-taken 2026-04-11 08:19:09 -04:00
  • 835a79cc0f docs: soak harness bring-up steps adlee-was-taken 2026-04-11 01:23:13 -04:00
  • 983518e93d feat(admin): visible Test/Test-seed badges + filter toggle adlee-was-taken 2026-04-11 01:20:09 -04:00
  • 917ef2a239 feat(server): admin users list surfaces is_test_account adlee-was-taken 2026-04-11 01:09:37 -04:00
  • b5a25b4ae5 feat(server): stats queries support include_test filter adlee-was-taken 2026-04-11 00:33:38 -04:00
  • 0891e6c979 feat(server): register flow flags accounts from test-seed invites adlee-was-taken 2026-04-11 00:16:56 -04:00
  • 1f20ac9535 feat(server): expose marks_as_test on InviteCode adlee-was-taken 2026-04-11 00:11:34 -04:00
  • 8e23adee14 feat(server): propagate is_test_account through User model & store adlee-was-taken 2026-04-11 00:01:53 -04:00
  • 3817566ed5 docs: rename test-account index to match users_v2 convention adlee-was-taken 2026-04-10 23:52:55 -04:00
  • d16367582c feat(server): add is_test_account + marks_as_test schema adlee-was-taken 2026-04-10 23:48:35 -04:00
  • e8051b256b docs(plan): harden soak-harness schema migration for deploy adlee-was-taken 2026-04-10 23:40:28 -04:00
  • cf916d7bc3 docs: implementation plan for multiplayer soak harness adlee-was-taken 2026-04-10 23:37:15 -04:00
  • 97036be319 docs: multiplayer soak & UX test harness design adlee-was-taken 2026-04-10 23:03:28 -04:00
  • 52d7118c33 Add favicon and prod deploy script v3.3.4 v3.3.3 adlee-was-taken 2026-04-07 20:37:36 -04:00
  • d7631ec671 Fix CI: remove checkout step, runner can't resolve gitea hostname v3.3.2 adlee-was-taken 2026-04-07 19:51:54 -04:00
  • f6eeaed97d Fix CI/CD: use SSH-based build instead of Docker-in-Docker v3.3.1 adlee-was-taken 2026-04-07 19:49:35 -04:00
  • ef54ac201a Add invite request system and Gitea Actions CI/CD pipeline v3.3.0 adlee-was-taken 2026-04-07 19:38:52 -04:00
  • 0c0588f920 TUI: add double-escape quit and minor layout tweaks adlee-was-taken 2026-04-07 19:38:38 -04:00
  • 420928f11e Reconcile docker-compose.prod.yml drift with droplet (INC-0001/AI-10) adlee-was-taken 2026-04-05 16:27:14 -04:00
  • bc9445f06e Relicense project under GPL-3.0-or-later adlee-was-taken 2026-04-05 09:26:06 -04:00
  • ea34ddf8e4 Fix swap animation stutter and remove 1s server-side dead delay adlee-was-taken 2026-03-05 23:47:26 -05:00
  • 5408867921 Harden .gitignore and add detect-secrets baseline adlee-was-taken 2026-03-05 22:47:02 -05:00
  • a8b521f7f7 Fix two production crashes and bump to v3.2.0 adlee-was-taken 2026-03-05 20:30:08 -05:00
  • 7f0f580631 Add client-side card reveal before swap and YOUR TURN badge update worktree-agent-ae238fec worktree-agent-a471949c adlee-was-taken 2026-02-25 23:35:49 -05:00
  • 215849703c Add inline comments across client and server codebase adlee-was-taken 2026-02-25 22:17:19 -05:00
  • 72eab2c811 TUI visual polish: felt table, status bar, scoreboard delay adlee-was-taken 2026-02-25 21:56:01 -05:00
  • dfb3397dcb Overhaul TUI navigation, quit handling, and scoreboard tags adlee-was-taken 2026-02-25 21:41:45 -05:00
  • b1d3aa7b77 Add session persistence, splash screen, and TUI polish adlee-was-taken 2026-02-25 19:35:03 -05:00
  • 67d06d9799 Mark stale games as abandoned in DB during cleanup and on startup adlee-was-taken 2026-02-25 12:25:03 -05:00
  • 82aa3dfb3e Add auto-cleanup of stale game rooms after 5 minutes of inactivity adlee-was-taken 2026-02-25 12:17:57 -05:00
  • 7001232658 Add single-escape navigation: back from signup/lobby, leave room adlee-was-taken 2026-02-24 20:17:10 -05:00
  • 13e98d330a Add TUI signup flow, quit/help/standings modals, and UI refinements adlee-was-taken 2026-02-24 20:14:04 -05:00
  • bfe29bb665 Add TUI lobby settings, clickable cards, and UI polish adlee-was-taken 2026-02-24 19:23:27 -05:00
  • e601c3eac4 Add DAILY_OPEN_SIGNUPS and DAILY_SIGNUPS_PER_IP to compose env vars adlee-was-taken 2026-02-24 14:38:25 -05:00
  • 6461a7f0c7 Add metered open signups, per-IP limits, and auth security hardening adlee-was-taken 2026-02-24 14:28:28 -05:00
  • 3d02d739e5 Set prod log level default to WARNING adlee-was-taken 2026-02-24 02:00:33 -05:00
  • 3ca52eb7d1 Bump version to 3.1.6, update docs v3.1.6 adlee-was-taken 2026-02-24 01:59:54 -05:00
  • 3c63af91f2 Bump mobile logo-golfer gap from 12px to 15px adlee-was-taken 2026-02-24 01:56:43 -05:00
  • 5fcf8bab60 Fix logo-golfer spacing: source order bug, tighten landscape, widen mobile adlee-was-taken 2026-02-24 01:55:28 -05:00
  • 8bc8595b39 Adjust logo-golfer spacing: tighter landscape, more room on mobile adlee-was-taken 2026-02-24 01:54:08 -05:00
  • 7c58543ec8 Tighten landscape logo-golfer gap, alternate suit colors on ball logo adlee-was-taken 2026-02-24 01:52:25 -05:00
  • 4b00094140 Add spacing between logo ball and golfer container adlee-was-taken 2026-02-24 01:48:44 -05:00
  • 65d6598a51 Fix kicked ball launching from golfer's back foot at narrow viewports adlee-was-taken 2026-02-24 01:47:06 -05:00
  • baa471307e Tune lobby header: 2x2 suit grid, mobile spacing, tighter row gap adlee-was-taken 2026-02-24 00:35:25 -05:00
  • 26778e4b02 Fix lobby header: use inline-grid for logo/title layout adlee-was-taken 2026-02-24 00:22:34 -05:00
  • cce2d661a2 Fix logo-row centering at mid-range widths (750-1120px) adlee-was-taken 2026-02-23 23:26:52 -05:00
  • 1b748470a0 Use width:fit-content on h1 for bulletproof logo-title alignment adlee-was-taken 2026-02-23 23:14:56 -05:00
  • d32ae83ce2 Nudge mobile header line 18px left via text-indent adlee-was-taken 2026-02-23 23:07:58 -05:00
  • e542cadedf Bump mobile single-line breakpoint to 749px to cover all phones adlee-was-taken 2026-02-23 23:06:39 -05:00
  • cd2d7535e3 Replace translateX hack with text-align left on h1 for logo alignment adlee-was-taken 2026-02-23 23:02:17 -05:00
  • 4dff1da875 Only trigger single-line mode at <=449px, shift everywhere else adlee-was-taken 2026-02-23 22:59:51 -05:00
  • 8f21a40a6a Make logo-row inline on mobile for single-line header layout adlee-was-taken 2026-02-23 22:58:28 -05:00
  • 0ae999aca6 Revert flex approach, use default translateX with max-width reset for mobile adlee-was-taken 2026-02-23 22:57:49 -05:00
  • a87cd7f4b0 Use inline-flex column on h1 to left-align logo row with title adlee-was-taken 2026-02-23 22:56:38 -05:00
  • eb072dbfb4 Set logo-row shift to 750px breakpoint (mobile ends ~750px) adlee-was-taken 2026-02-23 22:54:10 -05:00
  • 4c16147ace Set logo-row shift breakpoint to 900px to match actual layout break adlee-was-taken 2026-02-23 22:51:40 -05:00
  • cac1e26bac Split the difference: logo-row shift at 600px breakpoint adlee-was-taken 2026-02-23 22:49:21 -05:00
  • 31dcb70fc8 Bump logo-row shift breakpoint to 768px so mobile stays centered adlee-was-taken 2026-02-23 22:47:31 -05:00
  • 15339d390f Use min-width breakpoint for logo shift, tighten logo-title gap adlee-was-taken 2026-02-23 22:45:38 -05:00
  • c523b144f5 Tighten logo-golfer gap and shift row further left on landscape adlee-was-taken 2026-02-23 22:40:52 -05:00
  • 0f3ae992f9 Wrap logo+golfer in .logo-row and translateX left on landscape adlee-was-taken 2026-02-23 22:36:00 -05:00
  • ce6b276c11 Increase logo left shift to -3.5rem to align with GolfCards text adlee-was-taken 2026-02-23 22:33:16 -05:00
  • 231e666407 Fix logo shift direction: move left on landscape, not right adlee-was-taken 2026-02-23 22:31:38 -05:00
  • 7842de3a96 Shift logo+golfer group right on landscape via margin-left adlee-was-taken 2026-02-23 22:29:47 -05:00
  • aab41c5413 Restore logo-golfer-ball order in header adlee-was-taken 2026-02-23 22:23:49 -05:00
  • 625320992e Move golfer emoji left of logo, make .club inline adlee-was-taken 2026-02-23 22:22:53 -05:00
  • 61713f28c8 Style GolfCards title with .club on second line adlee-was-taken 2026-02-23 22:13:40 -05:00
  • 0eac6d443c Rename lobby title from Golf to GolfCards.Club adlee-was-taken 2026-02-23 22:11:39 -05:00
  • dc936d7e1c Add v3.1.5 footer with copyright to lobby and waiting room v3.1.5 adlee-was-taken 2026-02-23 21:08:39 -05:00
  • 1cdf1cf281 Tune round-end pause and reduce deck shake frequency adlee-was-taken 2026-02-23 21:06:17 -05:00