Public: anyone can read this; the crew can change it.
Decision written: how a person with no account gets in to contribute to a public app #9600
Check · Review · Land · Live done — Landed and live in production.
I added `docs/features/guests.md`. It sets out the three ways in and recommends one, but the decision itself isn't recorded. The issue should stay open until the owner or a writer comments a choice. I didn't call `keep_plan`; it isn't available in this session.
shipped production is serving it deploy 4cb4bc0
I added docs/features/guests.md. It sets out the three ways in and recommends one, but the decision itself isn't recorded. The issue should stay open until the owner or a writer comments a choice. I didn't call keep_plan; it isn't available in this session.
The doc covers three options, each with what it's for, its risks and its cost to build:
- A, their own forge and a guest pull from it. The pull path and its guards already exist. It's the hardest step for a newcomer, though, and hosting isn't shipped.
- B, an invite request. It keeps bots out, but a person has to answer every request. It's also a spam target and slower than C for the same protection.
- C, a guest account limited to forks and pulls. The
contributeability already exists for guests insrc/core/roles.ts. Opening signup needs a storage quota, low rate limits, no crew runs or apps for guests, and the guard on a stranger's pull (#9575). Theforge-signup-gateis removed last, and that is an owner-visible switch.
The crew recommends C, with A named beside it on every public app, and B not built. Until the limits exist, signup stays invite-only and A is the only way in.
The doc ends with a "Decision" section that says "Not yet recorded". Whoever comments the choice on #9573 should fill it in with the option, the date and who chose it.
I made no code changes. The owner's earlier comment on #9428 said both a forge of one's own and a guest account here should work, so the doc keeps A beside C.
The doc-related tests I ran (features, readme-cap, design-audit) and scripts/gate.ts pass. I didn't run tsc or the other test files scripts/fast.ts named, since the change is one markdown file.
To try it, read docs/features/guests.md on the branch.
🤖 Generated with Claude Code
Doc-only, one file in docs/features/ (not README), no code. Referenced files and roles.ts contribute ability exist. Options A/B/C are laid out with for/risks/cost, and a recommendation is given (C with A beside it, B not built). Two things I would do next: (1) once the owner or a writer comments the choice on #9573, fill in the Decision section (option, date, who) and only then close the issue; (2) the doc says the signup-gate removal is owner-visible but cites no file; name the gate file so the later C work can find it.
Left #9573 open: 1 unticked item remain (The issue is closed only after the owner or a writer comments the choice; the doc records it.).
I added
docs/features/guests.md. It sets out the three ways in and recommends one, but the decision itself isn't recorded. The issue should stay open until the owner or a writer comments a choice. I didn't callkeep_plan; it isn't available in this session.The doc covers three options, each with what it's for, its risks and its cost to build:
contributeability already exists for guests insrc/core/roles.ts. Opening signup needs a storage quota, low rate limits, no crew runs or apps for guests, and the guard on a stranger's pull (#9575). Theforge-signup-gateis removed last, and that is an owner-visible switch.The crew recommends C, with A named beside it on every public app, and B not built. Until the limits exist, signup stays invite-only and A is the only way in.
The doc ends with a "Decision" section that says "Not yet recorded". Whoever comments the choice on #9573 should fill it in with the option, the date and who chose it.
I made no code changes. The owner's earlier comment on #9428 said both a forge of one's own and a guest account here should work, so the doc keeps A beside C.
The doc-related tests I ran (
features,readme-cap,design-audit) andscripts/gate.tspass. I didn't runtscor the other test filesscripts/fast.tsnamed, since the change is one markdown file.To try it, read
docs/features/guests.mdon the branch.🤖 Generated with Claude Code
Closes #9573