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

"Flags are set by a forge admin." lives in one place, read by the flag action, the web page and the terminal #5593

shipped production is serving it opened this has it
opened this

For: A non-admin setting a flag reads the same wherever it is said, because it is said from one place. Today each sentence below is typed out separately in src/actions/flag_winner.ts, src/web/pages/flags.ts, src/tui/screens/flags.ts, so the next edit to one copy makes them drift.

Done:

  • [ ] src/core/flags.ts (export it beside mayManageFlags) exports these sentences (new, or the existing module of that concept if one already owns similar words; say which in the pull):

- "Flags are set by a forge admin."

  • [ ] Every file named imports them, and grep -rn for each sentence under src/ finds only the module.
  • [ ] Answers and pages are byte-for-byte unchanged: every existing test passes as it is.
  • [ ] A new test/flags-words.test.ts asserts each exported sentence is non-empty and that each file named no longer contains the literal (read the source as text). It fails if a copy is typed back.
  • [ ] Before pushing, run test/flags-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/core/flags.ts (export it beside mayManageFlags), src/actions/flag_winner.ts, src/web/pages/flags.ts, src/tui/screens/flags.ts, test/flags-words.test.ts. Risk: a pure move; change no wording. Touch only the lines the sentences are on.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs