An unfurl discloses on paste, not on open
Parley is video meetings where guests join from a link, with no account and no download. The decision I would defend hardest is the one where I cut my own specification.
Video meetings where guests join from a link. No account, no download, no plugin.
This is a portfolio project, not a product with users. The largest real session so far was six people in one room, and it worked, which is enough to show it holds at a size past a demo. Wider testing is next. None of the argument below rests on traction.
I defined it, designed it, set the architecture and specified it end to end, then directed an AI coding agent to implement it. Two of the places that arrangement broke are written up in the essay rather than here.

The guest I designed around
A guest on a phone, on mobile data, following a link out of WhatsApp, who has never heard of the product and will not create an account to talk to someone for ten minutes. Nearly every consequential decision falls out of that one person.



The decision I reversed


The gap between passive broadcast and deliberate click is the entire disclosure.
It costs something visible. Meeting links are the most-shared artefact in the product, and they now unfurl as a generic card in exactly the place most people will first encounter it.
Three theories that each fit until they did not

Magic-link sign-in started refusing during testing. I had three theories about why, and each one fitted every run I had until the next run arrived and broke it.
The answer was a rolling window of thirty verifications per five minutes, which explains a long idle period spending almost nothing and a short burst spending everything. It was on the Supabase dashboard.

Live on Vercel. v1.4 and v1.5 have both shipped, the second bringing the waiting room, the ten-minute block, the layer scale and the reaction anchor.
For three weeks in between, it could not host a meeting. A dozen full test suites in one night exhausted LiveKit’s connection-minutes allowance, so sign-in worked, the waiting room worked, and every guest landed on the room’s connection-dropped screen: the right screen for the wrong reason. It recovered with no code change, because no code change could have fixed it.

