Public: anyone can read this; the crew can change it.
A used sign-up link says who joined with it and when, on the terminal's Sign-ups screen and Settings › Limits #8080
Sign in to join this conversation.
Public: anyone can read this; the crew can change it.
Intent: the owner who hands out sign-up links can see who came in through each one — today a used invite only reads
used, thoughused_byandused_atare stored.Done looks like:
Inviteinsrc/core/invites.tscarriesusedAtandusedBy(the user's name, resolved in the same query, null when unused or the account is gone);listInvitesfills them; nothing else changes shape.src/tui/screens/invites.ts) shows a used row asused by <name> on <yyyy-mm-dd>.src/web/pages/admin-limits.ts) shows the same words, the name escaped and linked to the person's profile.actions/invites.tsadmin()gate) — no new reader.test/invites-core.test.tsproves a redeemed invite lists its user and date;test/tui-invites.test.tsand a page test show the words. Each fails without the change.bun scripts/design-lint.tspasses.Files: src/core/invites.ts, src/tui/screens/invites.ts, src/web/pages/admin-limits.ts, test/invites-core.test.ts, test/tui-invites.test.ts
Risks: leave MCP
invitesand the admin API (src/http/api/admin.ts, docs/MCP.md — hot) alone; if the new fields appear there by passing through, the OpenAPI contract test may need its schema updated, in which case leave them out of the API view rather than touching hot files.Brief: scout or quill.