Prototype versus Alpha: the placement pass โ
- Date: 2026-08-24.
- Inputs:
docs/business/launches/PROTOTYPE.mdanddocs/business/launches/ALPHA.md, read side by side, plusdocs/business/launches/README.mdfor the sorting test and the stage definitions. - Status: a comparison, not a move. Nothing here has been applied to either page. Every recommendation waits on the operator.
What is this? โ
The two launch pages have never been read against each other, so this had to be worked out rather than looked up. โ
- Each page was audited on its own on 2026-08-11 and restructured on 2026-08-14. Neither pass asked whether a given row was on the right page.
- The operator's side quest, recorded in this project's README: with December approaching, does anything currently in Prototype belong in Alpha?
The test is the one the plan already states, and it is the only test used here. โ
- From
README.md: "If December were cancelled tomorrow, would we still do this? Yes, Prototype. No, Alpha." - A second rule from the same page constrains the answer: in Prototype, P0 reads as "blocks our ability to build Alpha", not "blocks a release".
- Where the test does not resolve cleanly, this document says so and asks her, rather than picking.
Does anything in Prototype belong in Alpha? โ
Three rows fail the test, and all three fail it the same way: their stated Why is about running Alpha, not about building it. โ
| Row | Phase, priority | Its stated Why | Test result | Recommendation |
|---|---|---|---|---|
| Admin portal mobile layout | 2, P1 | "Moderation may need answering away from a desk" | Cancel December and there are no users, no reports, and nothing to moderate | Move to Alpha. Strongest of the three |
| System Health false DOWN | 2, P2 | "Operational confidence during a live event" | Names a live event, but a probe that lies also misleads today | Her call. Argued both ways below |
| Lantern naming | 2, P2 | "A permanent numeric suffix is a small identity leak in an anonymous product" | A leak only leaks once there are users to leak between | Her call. Argued both ways below |
A fourth candidate was withdrawn mid-pass, because it turned out to be finished. โ
- "Offer review layout" (
#818) reads Not started on the page and fails the sorting test on its face: "reviewers use it every day of Alpha" is a sentence about Alpha operations. - It is already Built.
#818closed COMPLETED on 2026-08-14, and commitd791173b(PR#877) carriesCloses #818. The row is the fifth stale row this session found, and the correction is inchangeset.md. - A Built row does not move. Recorded here rather than deleted, because the reasoning that nearly moved it is the same reasoning that moves
#826, and a reader should see why one survived the check and the other did not.
Admin portal mobile layout (#826) is the clearest move. โ
- The row describes a sidebar that never collapses and content rendering off-screen on a phone. That is only a problem for a person who has to act on something while away from a desk.
- Nobody has to act on anything until there are participants, so the whole row is downstream of December.
- It would land next to the Alpha safety rows, which is also where its consequence lives: a report that waits because the moderator was out is an Alpha safety outcome, not a Prototype inconvenience.
System Health false DOWN (#797) genuinely splits, so it is her call. โ
- Argument to move: the Why names a live event, and a false DOWN during Alpha is the failure that matters.
- Argument to stay: an operational probe that reports services down that are up misleads whoever reads it today, and every agent session reads it. That is the "profile completion metric" argument, and that row is staying.
- What decides it: whether she reads System Health during ordinary working days, or only when something is live. An agent cannot know that.
Lantern naming (#251, #578) splits harder, and it is a privacy judgment. โ
- Argument to move: an identity leak is only exploitable against real users, and there are none until Alpha.
- Argument to stay: the repo's own axiom is that architecture is the privacy guarantee, and a naming scheme is architecture. Changing it after real lanterns exist is a migration; changing it now is a rewrite of a word list.
- What decides it: whether she counts the numeric suffix as a real anonymity defect or a cosmetic one. The row is P2 either way, so nothing turns on it before December.
Two rows look like Alpha work and are correctly in Prototype, but the Alpha page cannot see them. โ
- Credential and identity colocation (
#875, Phase 2, P0) and Data classification and egress (#874, Phase 2, P0) both pass the test cleanly: a routine admin read shipping password hashes to a browser is a live defect we would fix if December never came. - The problem is the other direction.
ALPHA.mdline 76 carries "Privacy architecture in place" as a P0 citing only#523, the master tracker. Neither#875nor#874is visible from the Alpha page at all, so an Alpha readiness review reads that row and sees a tracker rather than two open P0 defects. - Recommendation: leave both rows in Prototype, and add
#875and#874to the Alpha "Privacy architecture in place" Issues cell. That is a cross-reference, not a move, and it is the cheapest fix for the only blind spot this pass found. - Not applied here: it is an
ALPHA.mdedit outside the four named stale rows, and tasks 9 and 10 are editing that file.
Everything else in Prototype passes the test and stays. โ
- Phase 1 Environment, all six rows: onboarding, context sync, local stacks, doctor, local portal login, Codespace. Every one of them is a thing we would still want on a Monday with no launch date. No move.
- Phase 3 Gates, all five rows: contrast enforcement, story and a11y coverage, admin zone lint, shared primitives, admin vitest. A gate protects whatever gets built next, launch or no launch. No move.
- Phase 4 Internal tools, all five rows: doc site taxonomy, intranet search, go links, ranked next-task list, apps platform. Internal tooling by definition survives a cancelled launch. No move, but see the duplication finding below.
- Runs throughout, all four rows: broken doc links, guide consolidation, dependency currency, agent guidance. No move.
- Profile completion metric (
#881) stays despite looking like a product defect: the Why is "the operator reads that number as truth", and she reads it today.
Does anything in Alpha belong in Prototype? โ
Two rows read as internal-tooling arguments wearing an Alpha label, and both have empty Issues cells. โ
| Row | Phase, priority | Its stated Why | Test result | Recommendation |
|---|---|---|---|---|
| Ad Network as a first-class surface | 1, P1 | "It is a product area now, and burying it makes it unmanageable" | Cancel December and it is still buried and still unmanageable | Move to Prototype, Phase 2 Product |
| Venues search and filters | 1, P1 | "Unusable once there is more than a handful" | Depends on whether venue import continues regardless of December | Her call |
Ad Network as a first-class surface is an admin information-architecture problem, not a launch blocker. โ
- The Why is entirely about manageability for the people using the admin site, which is the same argument as "Admin portal mobile layout", pointed the other way.
- It sits beside
#826and#818naturally: all three are admin-surface IA. - It also has no issue at all, which is a second reason it needs attention. It is P1, so it is outside this session's "every P0 has an issue" goal, and no issue was filed for it.
Venues search and filters depends on a fact only she has. โ
- If venue import keeps running through the autumn, the list becomes unusable regardless of December and the row is Prototype work.
- If import is paused until pilot venues are chosen, the row is genuinely Alpha.
- It also has no issue. Same P1 caveat as above.
Everything else in Alpha stays. โ
- The Phase 1 Build rows, the Phase 2 Prove rows, the Phase 3 Clear rows, the Phase 4 Ready rows, and Phases 5 and 6 are all either product surface, launch clearance, or recruiting. None of them survives "cancel December" as work anyone would still do.
- "Polish and refinement" (
#293) was checked specifically and stays: its Why is "real users meet strangers through this", which is the definition of an Alpha concern.
What did this pass find that is not a placement question? โ
Three Prototype rows are simultaneously listed as "Not scheduled" in the launch README, which is a direct contradiction. โ
README.mddefines Not scheduled as "wanted, with no release attached yet".PROTOTYPE.mdis the current stage. A row cannot be both.- The three, with the issues that prove they are the same rows and not merely similar ones:
PROTOTYPE.md Phase 4 row | README.md Not-scheduled row | Shared issues |
|---|---|---|
| Team-built apps platform | App creation portal | #827, #849 |
| Intranet search | Intranet search | #800 |
| Go links | Go links | #811 |
- Recommendation: delete the three from
README.md's Not-scheduled table, sincePROTOTYPE.mdis the page that carries a phase, a priority and a status for them. - Not applied here:
README.mdis outside this session's lane and outside the named scope.
The apps platform row also carries two different names for one thing. โ
PROTOTYPE.mdcalls it "Team-built apps platform";README.mdcalls it "App creation portal". Whichever survives the deduplication above should be the only name.
Doc site taxonomy (#883) raises a question this pass could not answer. โ
- Its Why says "'Internal' with nothing enforcing it is a label, not a boundary". That was read as a Prototype row on the test, and it stays.
- The open question: if an internal-only doc subdomain is genuinely reachable by anyone today, that is an exposure with no December in it at all, and its priority is wrong rather than its page. Confirming reachability was outside this task's scope and is not claimed either way here.
What has to happen next? โ
Nothing in this document is applied, and none of it should be applied without her. โ
- Three proposed Prototype-to-Alpha moves, one recommended and two explicitly her call.
- One proposed Alpha-to-Prototype move, plus one more that is her call.
- One withdrawn candidate ("Offer review layout"), which turned out to be Built and stays put.
- One cross-reference (
#875and#874onto the Alpha privacy row) that is the cheapest and highest-value item here. - One deduplication across three rows in
README.md.
The two rows this pass did NOT try to place are the two that need her words. โ
- "Attribution, no-POS path" and "ToS and Privacy Policy" are both on the Alpha page and both stay there. Their problem is content, not placement, and the questions are recorded in
changeset.md.