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

Every origin provider says its failures in one set of words #5649

shipped production is serving it opened this has it
opened this

For: An origin that names no account, a bad path, or no review 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/origins/providers/forgejo.ts, src/origins/providers/github.ts.

Done:

  • [ ] src/origins/words.ts (with #5586's and #5623's sentences if they have landed) exports these sentences (new, or the module that already owns that concept; say which in the pull):

- "the origin named no account" - "not a path in a repository" - "the origin returned no review"

  • [ ] 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/provider-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/provider-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/origins/words.ts (with #5586's and #5623's sentences if they have landed), src/origins/providers/forgejo.ts, src/origins/providers/github.ts, test/provider-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