Case states.
What each state means and what you can do. The names are the app's; in brackets, what cases returns over MCP.
Updated 22 September 2026.
The states
- PROPOSED (
proposed). Admitted, not started. Start it with Work this case orworkCase, or leave it to automatic case work. - OPEN (
open). Started, no usable result yet. A rejected candidate leaves the case open for the next one. A pulsing dot means a Session is running. - VERIFIED (
verified). A candidate passed its checks, every claim held, and the verifier found nothing. It can become a pull request; the merge does not close it. - CLOSED (
stopped). Stopped without a usable result, by you, by an agent, or by Perfloop, with the reason on the case page. Reopen case puts a plainly closed case back on the Frontier. - REFUTED (
refuted). The whole hypothesis was disproved: an agent asks for that ruling, and a fresh independent verifier accepts it only when it cannot find a defect or a confound, and cannot name a next experiment worth running. The evidence is a measurement showing the claim does not hold, or the source and the proof showing there was never a mechanism to measure. The case stays closed with its evidence.
When a case pauses, stops, or repairs
Out of budget. A Session stops when the case reaches its Case limit or the workspace runs out of Usage, and the case keeps its state: OPEN, or VERIFIED when it already had a usable result. Inbox shows a case at its own limit with what it used, and an Admin sets a new total or continues it without a limit. When Usage is out, no new Session starts until more is added.
Timed out. A Session that runs out of time ends with what it saved, and the case keeps its state, OPEN or VERIFIED. Start it again, or leave it to automatic case work. A production check can time out too: the window after the deploy passed without a signal, and the case settles on its measured result.
Replaced. When Perfloop's own infrastructure loses a Session's sandbox, one fresh Session picks up from the saved state; nothing is asked of you. A second loss in a row, or a Session that could not start for a configuration or authorization reason, stays terminal: the case keeps what was saved and waits for Work this case. With Keep working on, Perfloop can also pick an open case again later on its own. A closed case can be continued by a successor, a new case for the same hypothesis at the current model, which a member creates through the GraphQL API with replaceCase; there is no app control and no MCP tool for it. The old one keeps its evidence and points to the new one.
Stale. An Inbox item marked stale has waited more than 24 hours, an open pull request seven days. It still needs its decision. A case keeps the model version it was admitted at; when a later build retires its hypothesis, the case closes as HYPOTHESIS RETIRED.
Conflicting. When the target branch moves and the pull request no longer merges cleanly, Perfloop starts a Session to bring the change onto the current target, and the case page says so until it does. You can resolve it on the pull request yourself. Perfloop never overwrites a head you changed.
Also in this section: The loop, Steering and learning, Initiatives, Autonomy and limits, and The MCP server.
Questions: hello@perfloop.ai
