rehearse · the test stage

Decide what "done" means.
Before you build it.

Rehearse turns the spec into checks that pass or fail. They are written before a line of code, so the work has a real target instead of a feeling.

Request access
the problem

"Done" is an argument. Usually after it's built.

Most teams find out what "done" meant at the end, in review, when it is expensive to change. Everyone had a slightly different picture, and nobody wrote it down. So the work ships, and the disagreement ships with it.

what it does

The spec becomes a pass or a fail.

checks, not hopes
Each requirement in the spec becomes a check with a clear answer. It passed, or it did not. No room for "close enough".
written first
The checks exist before the code does. The work is built to meet a target that was agreed, not reverse-engineered to match whatever got made.
no moving goalposts
Once "done" is written down, it stops moving. The bar is set in the open, where everyone can see it, before the work starts.
something to answer to
Author has a target it can be measured against. Track knows what to watch. The whole pipeline downstream inherits the same definition of right.

You rehearse before you perform. Production is no place to find out what "done" meant.

the acceptance gate

A check passes, or it turns back.

Each requirement becomes a check with one of two answers. What passes goes on to Author. What fails is caught before a line is written, not after it ships.

what a check looks like

A wish becomes a number.

A line most teams would nod through in a meeting is turned into something a machine can settle. Vague goes in. Measurable comes out.

"it should be fast"
becomes p95 under 200ms on the results endpoint, at 50 concurrent users. A number, a place to measure it, and the load it holds under.
"handle bad input"
becomes a malformed request returns 400 with a named error, never a 500. The edge case is settled here, not discovered in production.
"only the right people"
becomes a signed-out call to the admin route returns 401, a signed-in non-admin gets 403. Two cases, two answers, both checkable.

Function, speed, security, the edges. Each becomes a check with a clear answer, so "done" is a list you can run, not a feeling you argue about.

where it sits

Between the spec and the code.

Rehearse takes the spec that Capture wrote and turns it into the checks Author has to pass. It is the second stage of five, and it is why the code has something real to answer to.

See the whole pipeline