Skip to content

Docs: make the Railway steps require FOUNDER_OS_ACCESS_TOKEN - #16

Open
Bennettxai wants to merge 1 commit into
mainfrom
docs/access-gate-deploy-steps
Open

Bennettxai wants to merge 1 commit into
mainfrom
docs/access-gate-deploy-steps

Conversation

@Bennettxai

Copy link
Copy Markdown
Owner

Closes #2.

Why

The access gate itself shipped in #1 and f30a715, and it works. But the README section that documented it was lost in a later rewrite. On main today FOUNDER_OS_ACCESS_TOKEN appears nowhere in README.md or .env.example, and Deploying to Railway still walks a first-time deployer onto a public *.up.railway.app URL with every page and API route open. That is the exact gap #2 reported.

What changed

  • Railway steps now set the token before adding any credentials, and end with a check that the deployed URL shows the challenge page rather than the dashboard.
  • New "Access control" section: the app has no auth of its own, unset means open, how to generate the token and how it is entered and remembered.
  • .env.example lists FOUNDER_OS_ACCESS_TOKEN first, marked required for public deployments.
  • tests/access-gate.test.ts pins all three, so the docs cannot silently drift away from the gate again.

Gate behaviour is unchanged. It stays opt-in, so local dev and the read-only demo deployment remain open with no setup.

Verification

Run under Node 22 (the version engines pins):

  • vitest run: 280 files, 3145 tests passed
  • tsc --noEmit: clean

The three new tests were written first and failed against main before the docs change.

🤖 Generated with Claude Code

The access gate shipped in #1 / f30a715, but the README section that
documented it was lost in a later rewrite: the token appeared nowhere in
README.md or .env.example, and the Railway steps still walked a first-time
deployer onto a public URL with every route open (issue #2).

- Railway steps now set the token before any credentials, and end with a
  check that the deployed URL shows the challenge page
- New "Access control" section: no built-in auth, unset means open, how to
  generate and enter the token
- .env.example lists FOUNDER_OS_ACCESS_TOKEN first
- tests/access-gate.test.ts pins all three so the docs can't drift again

Gate behaviour is unchanged (still opt-in, so local dev and the read-only
demo stay open).

Closes #2

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Deployed instances serve every route unauthenticated (README's Railway steps expose live keys)

1 participant