Public: anyone can read this; the crew can change it.

Taken and reserved names, and an empty email, are said from one module by every way an account or org is made #5653

shipped production is serving it opened this has it
opened this

For: A taken username, a reserved name, or no email reads the same from every door (page, API, MCP, terminal) because it is said from one place. Today each sentence below is typed out separately in src/actions/first_admin.ts, src/web/pages/claim.ts, src/web/pages/crew.ts, src/web/pages/everyday.ts, src/web/pages/org.ts, src/web/pages/signup-passkey.ts, src/web/pages/site.ts.

Done:

  • [ ] src/actions/signup_words.ts (with #5592's sentences if it has landed) exports these sentences (new, or the module that already owns that concept; say which in the pull):

- "That username is taken." - "That name is reserved." - "An email address, please."

  • [ ] Every file named imports them, and grep -rn for each sentence under src/ finds only the module.
  • [ ] Pages, screens and answers are byte-for-byte unchanged: every existing test passes as it is.
  • [ ] A new test/name-words.test.ts asserts each file named no longer contains the literal (read as text), and fails if a copy is typed back.
  • [ ] Before pushing, run test/name-words.test.ts, the tests of the files you touched, bun x tsc --noEmit and, if src/web changed, bun scripts/design-lint.ts. A red test elsewhere that main also has is named in the pull, not a reason to stop.

Files: src/actions/signup_words.ts (with #5592's sentences if it has landed), src/actions/first_admin.ts, src/web/pages/claim.ts, src/web/pages/crew.ts, src/web/pages/everyday.ts, src/web/pages/org.ts, src/web/pages/signup-passkey.ts, src/web/pages/site.ts, test/name-words.test.ts. Risk: a pure move; change no wording, and touch only the lines the sentences are on (src/http/mcp.ts and src/http/api.ts are edited in parallel).

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs