Domain source
SWE-bench Verified contributes the upstream evaluation contract and 500 public tasks.
Expert-verified GitHub issues paired with a service, repository, pull-request, incident, ADR, and standup world.
Baseline leaderboard
All companion tasks are solvable by their reference traces and reject the seeded random floor. No paid or frontier model run is claimed. The first two rows are harness controls; the model leaderboard remains open until a version-pinned submission exists.
A 100% reference ceiling shows the tasks are executable, not all failing. A 0% seeded-random floor shows the verifier does not simply reward any activity. Neither row measures model capability.
Task browser
These are the four independent Blobfish diagnostic tasks in this world—not excerpts relabeled from the larger Harbor source suite.
Incident 9401 on the ingest service was mitigated at minute 175. Close it out: set incident 9401's resolved_minute to 175 and status to 'resolved', work out how long it lasted (resolved_minute minus detected_minute), then record the follow-up decision by creating an ADR on service 9001 titled 'Rate-limit the ingest queue' with status 'accepted', decided_on '2026-07-21' and a decision that states the incident duration as 'N minutes'; finally post a standup note on service 9001 by author 'Rowan Novak' for day_label 'tuesday' whose body references incident 9401.
Required tool surface
get_incidentupdate_incidentcreate_adr_recordcreate_standup_noteGenerator label only; no empirical model difficulty claim is published.
Episode trace
Switch between a successful reference replay and a real failing floor episode. Both start from the same immutable world state; neither is a model leaderboard row.
A checked-in reference trace replayed against a fresh SQLite copy. This proves the task can pass; it is not a model submission.
Fresh seeded database copied into an isolated episode.
get_incidenttool success{
"incident_id": 9401
}{
"incident_id": 9401,
"service_id": 9001,
"summary": "Ingest queue saturated, consumers stalled",
"severity": "sev1",
"status": "open",
"detected_minute": 100,
"resolved_minute": null
}update_incidenttool success{
"incident_id": 9401,
"resolved_minute": 175,
"status": "resolved"
}{
"incident_id": 9401,
"service_id": 9001,
"summary": "Ingest queue saturated, consumers stalled",
"severity": "sev1",
"status": "resolved",
"detected_minute": 100,
"resolved_minute": 175
}create_adr_recordtool success{
"service_id": 9001,
"title": "Rate-limit the ingest queue",
"decision": "Incident 9401 lasted 75 minutes; rate-limit producers to keep consumers from stalling.",
"status": "accepted",
"decided_on": "2026-07-21"
}{
"adr_id": 9302,
"service_id": 9001,
"title": "Rate-limit the ingest queue",
"decision": "Incident 9401 lasted 75 minutes; rate-limit producers to keep consumers from stalling.",
"status": "accepted",
"decided_on": "2026-07-21"
}create_standup_notetool success{
"service_id": 9001,
"author": "Rowan Novak",
"day_label": "tuesday",
"body": "Incident 9401 resolved; writing the rate-limit ADR follow-up."
}{
"note_id": 9503,
"service_id": 9001,
"author": "Rowan Novak",
"day_label": "tuesday",
"body": "Incident 9401 resolved; writing the rate-limit ADR follow-up."
}Released assets
The executable database, schema, seed, tools, tasks, MCP manifest, and world manifest are checked into the same repository and linked individually.
Environment
6 related entity tables expose 23 read-only and 21 mutating tools. Every episode gets a fresh copy of the 115-row seed state.
services · 19 rowsrepositories · 20 rowspull_requests · 20 rowsadr_records · 18 rowsincidents · 19 rowsstandup_notes · 19 rowsMCP + CLI
Harbor preserves the upstream suite. Blobfish serves and evaluates the independent companion world. The reference policy is keyless; a model run requires an explicit provider and cost cap.
harbor run -d blobfishai/domainbench-24 \
-i '*repobench-500*' -a <agent> -m <provider/model>harbor run -d swe-bench/swe-bench-verified
-a <agent> -m <provider/model>blobfish info benchmark/worlds/repobench-500
blobfish serve benchmark/worlds/repobench-500blobfish eval benchmark/worlds/repobench-500 \
--policy oracle --split all --run release-oracleMethodology
Mercor’s open-source Archipelago clarified the public contract: environment, agent runner, trajectory, and grading should be inspectable together. Blobfish already has the same layers, plus fail-closed state policies and Harbor release gates.
SWE-bench Verified contributes the upstream evaluation contract and 500 public tasks.
The companion system is domain-aligned, generated with a fixed seed, and clearly labeled as separate from the source task set.
All 4 tasks must pass the reference replay and reject the random floor before release evidence is generated.
No model row appears without a pinned model, agent, trials, runtime, costs, trajectories, and verifier outputs.
Across the portfolio