• [changed] Changelog and roadmap pages carry the same layout everywhere, and their "nothing here yet" text is translated instead of English-only.
  • [changed] Guide pages read like a book — a Back button on the title line, and links to the previous and next guide at the foot, alongside the rest of the section.
  • [fixed] Guide summaries are whole sentences — cards and search results used to cut off wherever the source file happened to wrap a line.
  • [added] Client logs — the game uploads its own log lines and they are re-emitted into the server's own log stream, so one search for a session id returns both sides of a failure. Browse sessions at /admin/logs; off by default.
  • [added] Logs page filters by client session and user, and separates client entries from the server's own tail.
  • [fixed] Logins survive a busy database — the analytics day-marker and daily counters drop a failed write instead of failing the request they ride on.
  • [fixed] Repeat quests re-arm right away again, instead of once an hour.
  • [changed] Matchmaking is near-instant — a join sweeps immediately instead of waiting for the tick.
  • [added] Performance guide — measured throughput, capacity and database choice.
  • [added] Socket buffer size is configurable — the largest per-connection memory cost.
  • [changed] Logins return sooner — the last-seen and activity writes moved off the request path.
  • [fixed] Concurrent signups no longer queue behind each other on SQLite.
  • [added] Load-test harness — per-feature benchmarks and a capacity journey, in stress/.
  • [fixed] Benchmark RPCs measured an error path, not a locked write.
  • [fixed] Realtime events arrived twice
  • [fixed] Language flags are cached, so they no longer pop in after the text.
  • [fixed] Deleting an account deletes its avatar from storage.
  • [changed] One heading scale across the shipped pages.
  • [added] Player analytics — D1 / D7 / D30
  • [fixed] Accessible theme colors
  • [added] RULES.md — design & accessibility rules.
  • [added] Grouped quests.
  • [added] Repeat quest reset type.

July 2026

  • [breaking] Renamed to Gamend.
  • [added] Captcha on the register and magic-link forms
  • [added] Chat moderation — word filter, report queue, mutes
  • [breaking] One theme file
  • [added] Translation pipeline
  • [added] All 30 locales fully translated (machine-translated, pending review).
  • [added] Icons everywhereicon_url on notifications, tournaments, groups and leaderboards;
  • [added] Quest chains are browsable; a chain lists as one quest.
  • [breaking] API paths use underscores
  • [breaking] One pagination meta shape on every list response.
  • [added] API conventions spec + mix gamend.api.lint in precommit and CI.
  • [added] Settings: one declared config surface.
  • [changed] Guides are markdown files. /docs/setup
  • [changed] Times are shown in the reader's timezone.
  • [added] Retention for every unbounded table.
  • [added] Ready checks
  • [added] Push notifications
  • [added] Lobby state
  • [added] Quests / progression.
  • [breaking] Achievements removed — replaced by permanent quests
  • [added] Economy.
  • [added] Inventory.
  • [added] Object storage — with local-disk and S3/R2 backends; presigned avatar uploads.
  • [added] Admin Oban Web dashboard at /admin/oban + jobs/storage.
  • [added] Lobby snapshots — opt-in via LOBBY_SNAPSHOTS_ENABLED.
  • [added] Matchmaking (ticket queue), admin page and hooks.
  • [added] Party matchmaking, matched as one unit.
  • [added] Tournaments (bracket system).
  • [added] User blacklist, enforced in matchmaking and lobbies.
  • [added] Admin runtime page: hooks, env vars, protobuf, channels, events, ER diagram, plugins, jobs.
  • [added] Protobuf realtime format (opt-in).
  • [changed] Realtime state events send full payloads.
  • [removed] JSON delta encoding.
  • [removed] Dead modules and client delta code.
  • [added] Unique usernames.
  • [breaking] UUIDv7 string ids.
  • [added] JWT revocation.
  • [added] Persistent IP bans.
  • [added] Redis rate limiting.
  • [added] Data retention pruning.
  • [added] New plugin hooks.
  • [added] Observability metrics.
  • [security] Auth, payments, RPC hardening.
  • [perf] Faster broadcasts and queries.
  • [fixed] WebRTC RPC replies.

April 2026

  • [changed] Root host app restructure.
  • [added] Browser theme color, sitemap.xml, robots.txt.
  • [added] Native HTTPS
  • [added] Account Activation beta mode.
  • [added] Translations: Spanish, French, Romanian.
  • [added] Roadmap page.
  • [added] Security: RealIp, IP bans, OAuth CSRF, rate limiting, WebRTC - limits, security headers.
  • [added] OPENAPI_ENABLED feature gate.

March 2026

  • [changed] Make Leaderboards accept label instead of user_id.
  • [added] Initial version of Achievements.
  • [added] Initial version of Rate Limiting.
  • [changed] Self-hosted Inter font and eliminated all inline scripts.
  • [added] Initial version of WebSocket updates.
  • [added] Initial version of WebRTC updates.
  • [changed] Admin interface with realtime connections view.

Feb 2026

  • [added] Initial version of CHANGELOG and Blog.
  • [added] Initial version of Groups.
  • [added] Initial version of Parties.
  • [added] Initial version of Notifications.
  • [added] Initial version of Chat.