[techdebt] cleanup duplicate schema definitions

This commit is contained in:
Devin Zuczek
2026-08-11 15:50:55 -04:00
parent 1afa9b7ac3
commit ca8d40c4ec
16 changed files with 1873 additions and 2034 deletions
+13 -6
View File
@@ -641,9 +641,11 @@ const app = new Hono<App>()
// "Hot" rooms feed — public, non-dorm rooms ordered by live player count (their
// instances' presence), then stored engagement, optionally filtered to a single
// `tag` (e.g. `rro`). `tag=new` is a pseudo-tag no room carries: it serves the
// player-made (non-RRO) rooms newest-first. Paginated via skip/take (take defaults
// to 100). Returns `{ Results, TotalResults }` like search.
// `tag` (e.g. `rro`). `tag=new` and `tag=community` are pseudo-tags no room
// carries: `new` serves the player-made (non-RRO) rooms newest-first, `community`
// keeps the normal ordering but drops the rooms the Coach account created.
// Paginated via skip/take (take defaults to 100). Returns
// `{ Results, TotalResults }` like search.
.get(
'/rooms/hot',
describeRoute({
@@ -653,11 +655,16 @@ const app = new Hono<App>()
'Public, non-dorm rooms ordered by how many players are in them right now — live',
'presence summed across each rooms instances — falling back to stored engagement',
'for rooms nobody is in. Optionally narrowed to a single `tag` (the browse screens',
'filter chips post one, e.g. `rro`). The `new` chip is a pseudo-tag — no room carries',
'a `new` tag — and instead serves the player-made (non-RRO) rooms, newest first.',
'filter chips post one, e.g. `rro`). The `new` and `community` chips are pseudo-tags —',
'no room carries either. `new` instead serves the player-made (non-RRO) rooms, newest',
'first; `community` keeps the ordering above but serves only rooms the Coach account',
'(the system account owning the seeded first-party rooms) did not create.',
].join(' '),
parameters: [
stringQuery('tag', 'Restrict to rooms carrying this tag (or `new`, a pseudo-tag)'),
stringQuery(
'tag',
'Restrict to rooms carrying this tag (or `new`/`community`, pseudo-tags)'
),
...pageParams(100),
],
responses: { 200: json(PagedRooms, 'The feed page') },