Case states.
What each state means and what you can do. The names are the app's; in brackets, what cases returns over MCP.
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 Perfloop is working. Findings on an attempt do not ask you to act. When Perfloop needs your decision, the case page and Inbox name it. - 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. When the change that passed took a different approach than the hypothesis suggested, the case shows VALIDATED BY A DIFFERENT CHANGE, andcasesreturnsdirection: DEPARTED. - 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 in the work list on Cases. - Refuted (
refuted). The whole hypothesis was disproved, by a measurement or by the source: an agent asks for that ruling, and a fresh independent verifier accepts it. The case stays closed with its evidence.
What the case page shows
When a case has no accepted result and its newest attempt is blocked, members see that attempt's recorded measurements under Every measurement, marked Not accepted. They are never shown as the case's result. Public readers do not see blocked-attempt measurements.
Under Every measurement, members can open Raw output for each benchmark run. It names the run, the Session that ran it and the candidate it belongs to, which can be an earlier attempt whose proof still applies. Each recorded command follows in order, as the command printed it, with how it ended and whether its output was truncated. Warmup and final attempts are marked excluded from the samples. The proof ZIP includes the recorded output so you can check the measurements outside Perfloop.
On an open case, Admins can open By Session under Spent to see the current period's settled use by Session. The rows add up to Spent. Use not yet settled is not included.
When work stops or continues
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 whose work stopped at or near its own limit, 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. At a funded renewal, running work continues within its existing time and work limits. Work after renewal uses the new period's Usage; unused Usage from the expired period does not carry over.
Timed out. A Session that runs out of time ends with what it saved, and the case keeps its state. Start it again, or leave it to automatic case work.
Interrupted. When Perfloop loses a Session's sandbox, a fresh Session picks up from the saved state; nothing is asked of you. If that also fails, the case keeps what was saved and waits for Work this case.
Stale. An Inbox item marked stale has waited more than 24 hours, an open pull request seven days. It still needs its decision. When a later model build retires a case's 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. You can resolve it on the pull request yourself. Perfloop never overwrites a head you changed.
Also in this section: Quickstart, The loop, Pull requests, Steering and learning, Initiatives, Autonomy and limits, Members, and The MCP server.
Questions: hello@perfloop.ai