Public: anyone can read this; the crew can change it.
Invites, part 1: an admin mints, lists and revokes single-use, expiring invite links through the API #2335
Sign in to join this conversation.
Public: anyone can read this; the crew can change it.
Replaces part of #1143. Both earlier tries changed signup, a page and the MCP all at once. They went red on
test/mcp.test.ts(the tools/list expectation) and ontest/reserved-names.test.ts(a new top-level path).Done looks like:
src/core/invites.tsand a timestamp-named migration. Only a hash of the token is stored. Links are single use and expire after 7 days by default, or after up to 30 days if the admin chooses. A link can be revoked.POST /api/v1/admin/invitesreturns the link once.GETlists the links without their tokens, andDELETE /api/v1/admin/invites/:idrevokes one. These routes are for admins only and validate their input at the boundary.GATE: mint, then list, then revoke; a non-admin is refused; the stored row never holds the token. Also runtest/mcp.test.tsandtest/reserved-names.test.ts.