The Verdict object
Everything DoesItARM returns is built from one object: the Verdict. Learn it once and every endpoint and MCP tool reads the same. Concept first — the why behind these fields is How verdicts work.
The shape
Section titled “The shape”type Verdict = { slug: string // canonical id on doesitarm.com title: string kind: "app" | "game" status: "native" | "rosetta2" | "translation" | "unsupported" | "unknown" translationLayer?: "gptk" | "crossover" | "whisky" | "vm" | null confidence: "high" | "medium" | "low" basis: ("binary" | "automated_test" | "crowd" | "vendor" | "curator")[] macosVersion: string // e.g. "26", "27" chip: string // "apple_silicon" | "m1" | "m2" | "m3" | "m4" caveats: string[] breaksAtRosettaEol: boolean lastVerified: string // ISO date stale: boolean signals: Signal[] // contributing reports/tests, newest first alternatives?: Alternative[] // native equivalents, mainly when unsupported/unknown}Field by field
Section titled “Field by field”status— the answer.unknownmeans Needs more data, a real verdict, not a failure. We assert positives/negatives only on strong evidence (a negative needs a reproduced failure), sounknownis the honest default.translationLayer— set only whenstatusistranslation; names the layer (gptk,crossover,whisky,vm).nullor absent otherwise.confidence+basis— how sure we are, and how we know (binary inspection, automated test, crowd reports, vendor statement, curator note).macosVersion+chip— the scope this answer applies to.caveats— qualifiers like “no online play” or “low FPS”.breaksAtRosettaEol—truewhen the title only survives via Rosetta 2 and will break at macOS 28 (fall 2027).lastVerified+stale— the freshness fields. See Caching & freshness.signals— the evidence trail, newest first.alternatives— native equivalents, surfaced mainly when a title isunsupportedorunknown.
Worked examples
Section titled “Worked examples”{ "slug": "adobe-photoshop", "title": "Adobe Photoshop", "kind": "app", "status": "native", "confidence": "high", "basis": ["binary", "vendor", "automated_test"], "macosVersion": "26", "chip": "apple_silicon", "caveats": [], "breaksAtRosettaEol": false, "lastVerified": "2026-06-21", "stale": false, "signals": [{ "id": "sig_01", "kind": "test", "status": "native", "confidence": "high", "macosVersion": "26", "chip": "m3", "at": "2026-06-21T00:00:00Z", "ref": "https://doesitarm.com/adobe-photoshop#test-01" }], "alternatives": []}{ "slug": "cyberpunk-2077", "title": "Cyberpunk 2077", "kind": "game", "status": "translation", "translationLayer": "gptk", "confidence": "medium", "basis": ["crowd", "automated_test"], "macosVersion": "26", "chip": "apple_silicon", "caveats": ["Runs via Game Porting Toolkit; no anti-cheat online play."], "breaksAtRosettaEol": false, "lastVerified": "2026-06-19", "stale": false, "signals": [{ "id": "sig_8f3", "kind": "report", "status": "translation", "confidence": "medium", "macosVersion": "26", "chip": "m2", "at": "2026-06-19T14:02:00Z", "ref": "https://doesitarm.com/cyberpunk-2077#report-8f3" }], "alternatives": [{ "forSlug": "cyberpunk-2077", "altSlug": "baldurs-gate-3", "reason": "Runs natively on Apple Silicon; similar open-world RPG." }]}{ "slug": "final-cut-pro", "title": "Final Cut Pro", "kind": "app", "status": "native", "confidence": "medium", "basis": ["vendor", "crowd"], "macosVersion": "26", "chip": "apple_silicon", "caveats": ["Last verified before macOS 26.2; re-check pending."], "breaksAtRosettaEol": false, "lastVerified": "2025-09-02", "stale": true, "signals": [{ "id": "sig_fcp1", "kind": "source", "status": "native", "confidence": "medium", "macosVersion": "25", "chip": "m2", "at": "2025-09-02T00:00:00Z", "ref": "https://doesitarm.com/final-cut-pro#source-1" }], "alternatives": []}{ "slug": "some-ancient-installer", "title": "Some Ancient Installer", "kind": "app", "status": "unknown", "confidence": "low", "basis": [], "macosVersion": "26", "chip": "apple_silicon", "caveats": ["No binary or report on file. Submit one to improve this verdict."], "breaksAtRosettaEol": false, "lastVerified": "2026-06-10", "stale": false, "signals": [], "alternatives": [{ "forSlug": "some-ancient-installer", "altSlug": "a-maintained-equivalent", "reason": "Actively maintained, native on Apple Silicon." }]}{ "slug": "quicken-2017", "title": "Quicken 2017", "kind": "app", "status": "rosetta2", "confidence": "high", "basis": ["binary", "crowd"], "macosVersion": "26", "chip": "apple_silicon", "caveats": ["x86_64 only; runs under Rosetta 2 today."], "breaksAtRosettaEol": true, "lastVerified": "2026-06-18", "stale": false, "signals": [{ "id": "sig_qk1", "kind": "report", "status": "rosetta2", "confidence": "high", "macosVersion": "26", "chip": "m2", "at": "2026-06-18T00:00:00Z", "ref": "https://doesitarm.com/quicken-2017#report-qk1" }], "alternatives": []}breaksAtRosettaEol: true — it runs today, but only through Rosetta 2, so it
stops working at macOS 28 (fall 2027). Plan the migration before then.
{ "slug": "aperture", "title": "Aperture", "kind": "app", "status": "unsupported", "confidence": "high", "basis": ["binary", "crowd"], "macosVersion": "26", "chip": "apple_silicon", "caveats": ["Discontinued by Apple; reproduced failure to launch on macOS 26."], "breaksAtRosettaEol": false, "lastVerified": "2026-06-15", "stale": false, "signals": [{ "id": "sig_ap1", "kind": "test", "status": "unsupported", "confidence": "high", "macosVersion": "26", "chip": "m3", "at": "2026-06-15T00:00:00Z", "ref": "https://doesitarm.com/aperture#test-ap1" }], "alternatives": [{ "forSlug": "aperture", "altSlug": "lightroom-classic", "reason": "Native on Apple Silicon; closest pro photo library and RAW editor." }]}A negative needs a reproduced failure (the caveats say so), and alternatives[]
points at a native replacement — the pairing the data model is built around.
The related shapes — Signal and Alternative — are nested inside the Verdict and render
in full on the generated lookupVerdict reference.