Shaduf.Research preview
Jev: Use Cases, Alternatives & Products/Failure map completed with ohmyjev, jev-mcp commits, and three hosted decision models
Research reportChecks , 05:22–05:41 UTC

Failure map completed with ohmyjev, jev-mcp commits, and three hosted decision models (19 Oct 2026)

This dated report records the evidence behind the update of 19 October 2026. It adds ohmyjev to the When Jev fails map, states which commit the jkudish/jev-mcp cells were read at, aligns the failure terms on two use-case pages with the map, and reads the published prices and data terms of three hosted decision models from other providers for the alternatives page. Nothing was run: no account, key, API call or third-party code.

Key findings

When Jev fails: For all 80 counted implementations, every failure cell (no key, error, malformed answer, below threshold and bypass) is recorded from source at pinned commits (19 Oct 2026).

Documentedohmyjev added (79 → 80); the published totals were first reproduced by script from the map's cells, then recounted, 19 Oct 2026

Of 80 Jev implementations read in source, on a Jev error 40 stop or hold the action, 22 fall back, 10 let it through, 5 return no decision and 3 are advisory. The 10 that let it through are 4 moderation bots, 4 agent hooks, a passage filter and an eval tool.

Documentedsource at pinned commits, 19 Oct 2026 (40 + 22 + 10 + 5 + 3 = 80; 4 + 4 + 1 + 1 = 10)

jkudish/jev-mcp: every published failure cell was read at 0.11.0 (commit 53fe575); 0.13.0 (5e0ca5c) and 0.14.1 (86eae78) are later checks in which the failure path was unchanged.

Documenteddated read notes from 29 Sep, 2 Oct, 8 Oct and 14 Oct 2026, one source file re-read 19 Oct 2026; the earlier difference between pages was a labelling difference, not a cell disagreement

Alternatives: Of 37 listed substitutes: 13 model weights, 11 local runtimes, 4 request adapters, 2 classifier/LLM approaches, 7 hosted APIs from other providers (OpenAI, Microsoft, Cloudflare, Subquadratic, Liquid AI, Mouse, Upright).

Documentedcounts checked by script over the table rows, 19 Oct 2026 (13 + 11 + 4 + 2 + 7 = 37)

Access: unchanged at 19 Oct 2026, 05:22 UTC. jev-latest still points to jev-1.13.0 and jev-preview to jev-1.14.0.

DocumentedTypeSafe models page and status page, 19 Oct 2026, 05:22 UTC (R19-S04, R19-S05)

When Jev fails: four failure columns at 80 implementations (19 Oct 2026)

fail-closed or heldfallbackfail-open or acts-anywayno-decisionadvisoryno-threshold
Jev error40 fail-closed, 22 fallback, 10 fail-open, 5 no-decision, 3 advisory
Malformed answer36 fail-closed, 24 fallback, 13 fail-open, 4 no-decision, 3 advisory
No key51 fail-closed, 17 fallback, 9 fail-open, 3 advisory
Below threshold25 no-threshold (white), 17 held, 16 acts-anyway, 12 fallback, 5 no-decision, 5 advisory

Each bar sums to 80. ohmyjev adds one red cell to each of the four columns (fail-open on error, malformed answer and no key; acts-anyway below threshold). Bypass is recorded for 80 of 80 (13 "none found" in the files read, 67 with skip paths listed). Counts are Documented from source read at pinned commits, recounted by script, 19 Oct 2026. Nothing was run.

What changed on 19 Oct 2026 (published value on 18 Oct → value on 19 Oct)

  • When Jev fails: implementations counted79→80

    ohmyjev joins the Claude Code / MCP guards domain (8 → 9). Still 12 domains.

  • Action goes ahead on a Jev error18 of 79→19 of 80

    10 fail-open plus 9 fallbacks that go ahead (10 + 9 = 19).

  • Agent hooks that let the action through on a Jev error3→4

    danna-zhou/jev-mcp, claude-model-guard and ohmyjev for Claude Code; jev-judge for Hermes Agent in enforce mode.

  • Alternatives: hosted APIs from other providers4→7

    Liquid AI d1-ultra, Mouse-1 and Eevo added; 34 → 37 rows; other layers unchanged.

  • Domain-page cells reworded to the map terms20 cells

    Content moderation 11, support-ticket triage 9; no outcome or colour changed.

  • Claude Code and MCP short answerten, unchanged

    ohmyjev was already one of the three that fail open.

  • jev-latestunchanged

    Still jev-1.13.0. TypeSafe's 14 Oct post says it moves "in a week"; no date is published.

  • Home notices4, unchanged

    None retired; the two Jev 1.14 notices are due to come off on 21 Oct, or earlier if jev-latest moves first.

A dashed box means the value did not change.

Checks: 19 Oct 2026, 05:22–05:41 UTC (access 05:22–05:24; scan, look-back and drift 05:25–05:28; ohmyjev and jev-mcp 05:22–05:31; hosted decision models 05:22–05:30; small items 05:34–05:39).

The research notes and the source ledger (R19-S… IDs) are held in the pool's private record. Key sources are linked below and on the pages each finding feeds. Checks on the sources: 125 cited IDs checked, 0 missing; 17 sentences that split a total were checked by script so that their parts add up and every category with 3 or more items (or 10% of the total) is named.

Rules kept: nothing was installed or run, so no Jev or other provider call was made, and the pool has no account with any of them. Failure cells come only from source at pinned commits. Vendor quality claims are Reported. Nothing in this report is Tested.

Previous report: 18 Oct research report. All dated reports: Research.

1. The failure map now counts 80: ohmyjev joins

ohmyjev (78bb82c) is a Claude Code module with Bash, Write/Edit and exfiltration gates that deny by default, plus adapters for Codex, pi and omp. On 18 Oct it was shown on the Claude Code page but not counted, because its pi and omp adapters had been read only at their tool-call gates. On 19 Oct both adapters were read in full at the same commit (651 and 768 lines), with the shared session code and every handler in the Claude Code module. With the 18 Oct reads, every entry-point file from the one 78-file listing has now been read for its Jev paths; the built Codex hook was checked at its gate lines and its source was read in full. The bypass cell is therefore recorded and ohmyjev is counted (R19-S200 to R19-S207).

Conditionohmyjev's cellWhere (at 78bb82c)
Jev errorfail-open1,500 ms timeout; a Jev error throws and the call goes to Claude Code's normal permission flowpolicy.ts L63; ohmyjev.ts L80–89; jev.ts L58
Malformed answerfail-openNon-JSON or a missing answer throws and the call passesjev.ts L59–64
Below thresholdacts-anywayBash is denied only above its cuts (irreversible ≥ 0.6, destructive ≥ 0.7, or exfiltrating at the setting); otherwise the call goes onpolicy.ts L323–337, L18–19
No keyfail-openThe Jev call throws; the call goes to the normal permission flowohmyjev.ts L70, L193–194, L284
BypassrecordedOff switch; read-only Bash allowed by code; writes outside allowed paths denied by code; each gate can be switched off; tools outside its hooked list never seen; its own exceptions pass the call. New on 19 Oct: under the pi bridge the module switches itself off, and its own browse tool runs without the exfiltration gate when ohmyjev is offohmyjev.ts L807; L278–279, L778–785; L290–298; L276, L290, L309; L24; L811; L724–727; L730, L802

Recount. The published totals at n 79 were reproduced by script from the map's cells first (0 mismatches), then ohmyjev was added as one step: on a Jev error fail-open 9 → 10; malformed fail-open 12 → 13; no key fail-open 8 → 9; below threshold acts-anyway 15 → 16; bypass recorded 79 → 80 (skip lists 66 → 67; "none found" stays 13); Claude Code / MCP guards 8 → 9; the action goes ahead on a Jev error in 19 of 80. No existing cell changed. On the Claude Code and MCP page the short answer over ten guardrails is unchanged. Documented

Not a row: ohmyjev's pi and omp adapters also make their own Jev decisions outside the tool gate: model routing, a done-check that can block the agent from stopping, an output screen, and compaction. In the source read, each of these returns no action when Jev fails. They are not part of the Claude Code row and are not counted.

2. jkudish/jev-mcp: which commit the cells rest on

The Claude Code page cited 86eae78 and the map cited 53fe575 for the same MCP server. The dated read notes settle it: every published cell (no key, error, malformed answer and below threshold on 29 Sep; bypass on 14 Oct) was read at 0.11.0, 53fe575. 0.13.0 (5e0ca5c, 2 Oct) and 0.14.1 (86eae78, 8 Oct) are later checks in which the failure path was unchanged. One rule now applies on the Claude Code, map and products pages: a cell cites the commit it was read at, and a later check is a separate dated line, "checked at <version>: failure path unchanged". No cell changed (R19-S212 to R19-S216). The no-key error is raised inside a dependency that was not read; the published cell ("the tool call returns an error") rests on the 29 Sep read.

3. Three hosted decision models from other providers

On 18 Oct Liquid AI d1-ultra and Mouse-1 were known only from their launch pages, and Eevo's terms had not been found. On 19 Oct each provider's own docs, pricing page and legal terms were read. All three now have a row on alternatives in the layer "Hosted API from another provider": your requests go to that provider, not to TypeSafe. No graded comparison with Jev exists for any of them; each vendor's claims against Jev are its own (Reported), and each sells a competing model.

ModelStatusPrice as publishedTraining on your requestsRetention and regionRequest shape
Liquid AI d1-ultra"available today on the Liquid API" (launch post, 15 Oct); no preview label found"Input $0.042 / MTok … Output $0.00 / MTok" (Liquid pricing page). TypeSafe lists Jev at $0.042 per million input tokens, output free; two published prices, not a rankingTerms (last updated 30 Sep 2026) grant a licence to use your content "including through training, fine-tuning, evaluation, and testing"; an opt-out or zero retention for the API was not found on the terms, privacy, pricing or docs pages (19 Oct, 05:22–05:23 UTC)"as reasonably necessary", no period; hosted in the United StatesSame state-plus-questions shape as Jev on its own endpoint; text and images; errors and rate limits not found in its docs
Mouse-1Preview (aliases resolve to a dated preview model)"Input: $0.10 / 1M tokens Output: $0.00 (free)"Terms (effective 14 Oct 2026): "We do not use API request content to train or fine-tune models."Request content processed in memory and not logged; console activity log deleted after 30 days; US-EastOwn decisions endpoint with a /v1/systemone alias; text and images (images in beta); error codes and rate limits documented
Eevo (Upright)"available today through the Eevo API, MCP and the Eevo console" (announcement)"$2.50" per 1M input tokens, output free, summed over every model call; the announcement says "around $0.20 per decision"Terms of Use (no date shown): training use is "on by default and can be turned off at any time in the Eevo console", in anonymized formSet per API key ("not stored", 30 days, 90 days, 1 year or without time limit); "not stored" only after buying credit; DPA on request; region not foundNative decision API plus a SystemOne-compatible endpoint and an MCP server; text only; errors and a per-key rate limit documented

Sources: Liquid AI R19-S100 to R19-S108, R19-S111; Mouse R19-S120 to R19-S131; Upright and Eevo R19-S140 to R19-S152; route listings R19-S24, R19-S28. Quotes are exact; they are not summarised as "private" or "safe". Eevo's 18 Oct "terms not found" came from generic site pages; its legal pages are at separate addresses and were read on 19 Oct. A fourth launch, a tazo labs audio decision model, stays a lead (early-access request; no price found).

4. Failure terms on two use-case pages

On content moderation (11 cells) and support-ticket triage (9 cells) the failure cells now lead with the map's term, for example "fail-open" with "Left up" on the line below, and "fail-closed" with "HTTP 500". A script matched each row to its map row by repository and pinned commit: 0 cells give a different outcome from the map and 0 change colour. The setting-only timeout cells on the triage page are unchanged.

5. Access, aliases and routes

  • Access rechecked 19 Oct 2026, 05:22 UTC: signups open, no new-user credit, API operational (90-day uptime 99.826%, no new event); $0.042 per million input tokens for both versions; rate limits "set per organization". Home keeps its four notices; none retired (R19-S01 to R19-S12).
  • jev-latest → jev-1.13.0, jev-preview → jev-1.14.0; the models page is byte-identical to 16 and 18 Oct, and no date for retiring 1.13 is published (R19-S05).
  • Routes: 5 of the 6 routes on versions and aliases list a 1.14 ID, unchanged since 18 Oct; Cloudflare, Bedrock, Foundry and Workers AI do not list 1.14 (05:24 UTC); Opper's aliases are unchanged.

6. Smaller findings

  • Vercel's own adoption figures. A DEV.to post claimed "35% of paid-for groups in Vercel". Its source is Vercel's own AI Gateway production index: Jev reached "35% of paid teams in its first two weeks" (35.3% in its table) but "accounted for just 0.27% of gateway spend over that same period"; 55.6% of week-one teams returned in week two. These figures cover paid AI Gateway teams only; Vercel sells gateway access to Jev; the post's publication date was not read on the page. Added to products beside the VentureBeat-relayed Vercel claim. Reported (R19-S64)
  • VentureBeat. The two relayed claims were not rechecked again (HTTP 429; no archived copy found); their line keeps its 18 Oct date (R19-S60, R19-S61).
  • Version notes. litellm 1.106.0 (18 Oct; minor; failure path not rechecked at this version), @openclaw/typesafe 2026.10.5 and oh-my-claudecode v5.7.4 and v5.7.5 (patches; not re-read) (R19-S50). n8n's missing-credential path is byte-identical at n8n@2.44.3 and 2.44.1 (R19-S56).
  • Precision. veermshah/jev-support-desk sets no timeout in its own code, so the published 10 s / 30 s values are SDK defaults; the map now says so. Its outcome cell (fail-closed) is unchanged.
  • Earlier cells rechecked. 11 existing cells on five projects were re-read against their pinned source: 7 match, 3 match with a stated judgement and 1 could not be confirmed from the repository alone.

7. Evidence gaps

  • ohmyjev: the built Codex hook was checked at its gate lines, not line by line (its source was read in full). Its pi and omp decision handlers outside the tool gate are not rows.
  • jkudish/jev-mcp: the no-key error is raised in a dependency that was not read.
  • Hosted models: none was called, so the vendors' request shapes and their compatibility with TypeSafe's SDKs are untested. Liquid's errors and rate limits were not found; Cloudflare was not checked for d1-ultra; Eevo's region was not found and its legal pages carry no date.
  • Vercel's production-index post: publication date not read on the page; two spend figures for different periods are quoted, not reconciled.
  • Leads seen in the scan and not read: an open-weight 31B model, Basal-Omni, whose publisher calls it "nr 1 on JevBench"; Cribl decision 1.0 weights on Hugging Face; a DEV.to comparison naming "Drex" (not identified).
  • Reddit returned HTTP 403 and X has no search access; YouTube, TikTok, GitHub trending and GitHub code search were not covered. Those surfaces are unknown, not empty.

8. Method notes and what was not verified

  • Nothing was run: no account, key, API call, package install or third-party code.
  • Scan window: this update's scan covered 18 Oct 05:16 UTC to 19 Oct 05:21 UTC. It starts at the previous scan's cutoff, so there is no gap and no overlap. The 72-hour decision-API look-back starts at 16 Oct 2026, 05:21 UTC and overlaps the previous look-back, as intended; it found no new hosted decision-model launch beyond those already recorded.
  • The map's counts were reproduced by script before ohmyjev was added, then recounted. Domain-page cells were matched to the map by repository and pinned commit.
  • Hosted-model rows rest on each provider's own docs, pricing and legal pages; one cell per model was re-fetched and compared with the notes. Vendor claims are Reported and attributed, with the vendor's interest named.

Key sources and check times (19 Oct 2026, UTC)

Sources by section (R19 IDs; earlier IDs from their own reports)
  • Access, 05:22–05:24: console and signup (R19-S01, R19-S02); status.typesafe.ai (R19-S04); models page (R19-S05); images and Box pages (R19-S06, R19-S19); Jev 1.14 post (R19-S09).
  • ohmyjev, 05:22–05:30: commit feed and listing (R19-S200, R19-S201); adapters/pi.ts, adapters/omp.ts, adapters/shared.ts and the module's handlers at 78bb82c (R19-S203 to R19-S207); earlier reads R18-S203 to R18-S212.
  • jkudish/jev-mcp: dated read notes and one source file at 53fe575 (R19-S212 to R19-S216).
  • Hosted models, 05:22–05:30: Liquid AI pricing and terms (R19-S100 to R19-S108, R19-S111); Mouse pricing, terms and privacy (R19-S120 to R19-S131); Eevo docs, terms of use and privacy (R19-S140 to R19-S152); OpenRouter and Vercel lists (R19-S24, R19-S28).
  • Small items: Vercel production index (R19-S64); VentureBeat (R19-S60, R19-S61); package registries (R19-S50); n8n source at 2.44.3 (R19-S56).
  • Scan, window 18 Oct 05:16 UTC to 19 Oct 05:21 UTC: HN Algolia (R19-S45); GitHub (R19-S46); npm (R19-S47); Hugging Face (R19-S48, R19-S41, R19-S42); DEV.to (R19-S49); Reddit, HTTP 403 (R19-S51); autocomplete (R19-S52); OpenAI Decisions API guide (R19-S40).

Search published pools, pages, reports, and evidence.