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

small: the home page no longer ends with "This forge is not taking new accoun… #11328

Merged opened this in answer to

Check · Review · Land · Live done — Landed and live in production.

Merged

The anonymous home page no longer ends with "This forge is not taking new accounts." I removed that line from `src/web/studio/home.ts` outright, with or without a start form or plans.

shipped production is serving it deploy 1cfdf1a

opened this

The anonymous home page no longer ends with "This forge is not taking new accounts." I removed that line from src/web/studio/home.ts outright, with or without a start form or plans.

/signup and /signin now say "Accounts on this forge are by invitation. Start your own forge instead." when signup is closed or invite-only. "Start your own forge instead." links to /#start-forge, the home form. The line comes from one helper in src/web/pages/site.ts. Signup closed (HTTP 403) still shows its old "Signup is closed on this forge." sentence above the new line.

I added one test in test/plans-row.test.ts. With plans and a buy link set, for signup closed and invite, it asserts the home page has neither sentence and that /signup and /signin carry the new line and link. bun test passes for plans-row, signup-closed and signup. tsc is clean and scripts/gate.ts and design-lint printed no errors. I did not run the full suite.

  • Left alone: the old closed-signup sentence and the TUI and API messages, because other tests assert them. The /signin sentence "This forge is closed to new accounts." also stays, so a closed or invite forge now shows two sentences there.
  • Try it: set signup to closed or invite, open /, then /signup and /signin.
  • Push: the pre-push hook wanted a commit saying how to try the change, so there is an empty "Try:" commit on the branch.

Closes #11325

commented

The anonymous home page no longer ends with "This forge is not taking new accounts." I removed that line from src/web/studio/home.ts outright, with or without a start form or plans.

/signup and /signin now say "Accounts on this forge are by invitation. Start your own forge instead." when signup is closed or invite-only. "Start your own forge instead." links to /#start-forge, the home form. The line comes from one helper in src/web/pages/site.ts. Signup closed (HTTP 403) still shows its old "Signup is closed on this forge." sentence above the new line.

I added one test in test/plans-row.test.ts. With plans and a buy link set, for signup closed and invite, it asserts the home page has neither sentence and that /signup and /signin carry the new line and link. bun test passes for plans-row, signup-closed and signup. tsc is clean and scripts/gate.ts and design-lint printed no errors. I did not run the full suite.

  • Left alone: the old closed-signup sentence and the TUI and API messages, because other tests assert them. The /signin sentence "This forge is closed to new accounts." also stays, so a closed or invite forge now shows two sentences there.
  • Try it: set signup to closed or invite, open /, then /signup and /signin.
  • Push: the pre-push hook wanted a commit saying how to try the change, so there is an empty "Try:" commit on the branch.
commented

The check failed on two tests. I fixed one, and the other passes when run alone here, so I left it unchanged. The fix is pushed as c62785efa.

  • Fixed: the front-page test "the door leads with the pins, in order…" still expected the old sentence "New accounts on this forge are by invitation." on the home page of a closed forge. That sentence is what this issue removes, so the test was wrong. It now asserts the home page says neither "by invitation" nor "not taking new accounts".
  • Not reproduced: "the page offers the three windows…" in test/traffic-history.test.ts passes here, together with front.test.ts (24 pass, 0 fail). Nothing in my change touches the traffic-history code, so it may be a flake or shard-order problem. If the check fails on it again, its log is the next thing to read.

The rest of the pull is unchanged:

  • Home page: the anonymous page no longer ends with "This forge is not taking new accounts."
  • /signup and /signin: when signup is closed, they show "Accounts on this forge are by invitation. Start your own forge instead." The second sentence links to the home form (/#start-forge).
  • Left alone: the existing "Signup is closed on this forge." wording on /signup, because other tests assert it.
  • Try it: set signup to closed or invite, then open /, /signup and /signin.
Changes requested — before the latest push

Removing the home sentence is right and the test for it is good. Fix first: /signin and /signup now say the same thing two or three times (principle 1). Details in the line comments. Also: the link target /#start-forge only exists when the home start form renders (home.ts:800); anonymous home with no form leaves a dead anchor, so link /#yours (always present, home.ts:896) or guard it. The preview has signup open so I could not see the closed state live; the test covers it.

commented

The home page no longer ends with "This forge is not taking new accounts" (or the invite variant), and /signin now says accounts are by invitation exactly once.

What changed

  • Home: the closed/invite sentence is removed from src/web/studio/home.ts.
  • /signin:

- For invite and closed modes, the old sentences ("invite-only…", "closed to new accounts") are gone. They are replaced by one line: "Accounts on this forge are by invitation. Start your own forge instead." - Open and request modes keep their existing sentences. - The link now goes to /#yours, which is always on the home page, so it can't land on nothing. I did not guard on the form instead.

  • /signup (closed): I dropped the line I had added. Its own closed message, the "You can still run a forge of your own" paragraph and the "Get your own forge" button already say it.
  • Tests:

- The /signin assertions in test/signin-page.test.ts now expect the one line and the /#yours link, and that neither old sentence appears. - The test/plans-row.test.ts test checks the home page for neither sentence, /signin for the single line, and /signup for no extra copy.

I ran bun x tsc --noEmit, bun scripts/design-lint.ts and test/signin-page.test.ts, test/plans-row.test.ts and test/front.test.ts; all pass. I did not look at the output of bun scripts/gate.ts: it was piped into a type-check error that I then fixed, so I did not confirm a clean gate run.

Not done: the preview has signup open, so I did not check the closed state live; the tests cover it.

🤖 Generated with Claude Code

Approved

Earlier asks met: the home sentence is gone, /signin says it once, and the link now targets /#yours, which exists on the home page and in the preview. /signup carries no duplicate copy. Tests cover both modes and would fail without the change. Next: (1) Non-blocking: SIGNUP_SENTENCES now has two undefined entries; a short comment or collapsing them would read cleaner. (2) Non-blocking: check the closed and invite states live on a preview, since this one has signup open.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs