Specline canon 2.8.0 Handbook For agents ↗
Reference · Altitudes

The three acceptance altitudes

Acceptance checks are partitioned by altitude — and the altitudes are the handoffs between who certifies done, not three flavors of test. Each check belongs to one actor: the implementer (provable), the reviewer (judgeable), or you (tasteable). Falsifiable (B5) means settleable the same way twice; each altitude is one actor settling it.

provable the implementer's exit

Certified by the implementer: the goal is met. Shown by a runnable command where one fits (npm test -- trade-in — exits 0), or by the implementer's grounded assessment against the code and its own tool results — evidence, not opinion.

A runnable command is the strongest form of that evidence, not the required form. What's required is that the implementer can establish the goal is met before it stops and hands off. Not every goal reduces to a command, and pretending it does is how specs end up weak.

judgeable the reviewer's gate

Certified by a fresh-context reviewer agent: it judges the implementer's interpretation against a named spec section and the repo's standards (conventions/, technical/) — including the nuanced bars the goal can't fully state, like performance and security.

Falsifiability gate: the named section, which is mandatory — a judgeable item that cites no section isn't settleable, so Specline flags it. This is the check on the implementer's self-assessment; it bounces work back within review_rounds_before_human before reaching you.

e.g. "matches the empty-state behavior in §4.3."

tasteable your gate

Certified by the decider, once, at the acceptance gate — taste, product-fit, anything no command or review can falsify. The final, unbounded judgment.

e.g. "the onboarding flow feels effortless."

The handoffs, in order

The implementer asserts done (grounded), the reviewer independently checks the interpretation, the human accepts. Judgment is layered, not banished — each altitude is the next actor's turn.

AltitudeActorCertifiesBound
provableImplementerThe goal is met — by command or grounded assessment.The inner loop: loop_budget / stale_after.
judgeableFresh-context reviewerThe interpretation matches the named sections + standards.The outer loop: review_rounds_before_human.
tasteableThe deciderIt's right. Final accept.None — unbounded judgment, once.

Depth scales with risk. blast_radius gates the depth of the judgeable partition, not its existence: a low blast radius may leave it empty (no separate reviewer); high makes a fresh-context reviewer mandatory.

Specline's limit. Specline checks, in planning, that the partition is present and a judgeable item names a section. It cannot judge whether the implementer's assessment was sound or the reviewer was right — that's the actors' job, then yours.