AP
Agent Provider Depot
Opinionated picks for agents
OpenAPI

Corrections log

Public log of corrections to Depot data. Historic entries are copied from CHANGELOG.md (version + date as published there). Provider-submitted corrections (POST /api/corrections) appear in GET /api/corrections with their status; only a human can approve one, and approval is recorded here by scripts/review-correction.mjs. A correction never changes a score.

As of 2026-10-27 · JSON · RSS · Atom · JSON Feed · What Depot refuses to say

Applied corrections (63)

  1. 2026-10-25 · v0.12.121 · source_requoted · applied

    Before: 31 of the 52 refused entries (repo LICENSE/README verdicts, Hugging Face card verdicts, and the Daytona, GlitchTip and Piper 404s among them) dated from official pages fetched 2026-10-03; 10 others had been re-checked in v0.12.120. Top-level source said the refused list dates from 2026-10-03 except the 10 entries marked 'Re-checked 2026-10-25'.

    After: 21 refused entries (Weaviate, AutoGPT, InternLM2.5, LLaVA 1.5, XTTS-v2, Daytona, Context7, CLIP, langgraph-deploy, Cal.com, LiteLLM, GlitchTip, Letta, whisper.cpp, Piper, Chroma, Qdrant, Unstructured, Playwright, Guardrails AI, LLM Guard) gain a dated 'Re-checked 2026-10-25 (v0.12.121)' sentence naming each URL and quote; every verdict unchanged. Flag (pending review, verdict not changed): Context7 README now says an API key is 'Recommended' for higher rate limits, not required; GlitchTip's official GitLab repository (linked from glitchtip.com) serves an MIT LICENSE, so the GitHub 404 reason does not hold for it. Wording note: Unstructured README no longer says chunking/embedding/vector database (reason for not retagging still holds). Daytona LICENSE, glitchtip-backend LICENSE on GitHub and piper1-gpl LICENSE/LICENSE.md 404s re-confirmed. Top-level source now names the 31-entry exception; 21 entries still date from 2026-10-03. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: The URLs quoted in the 21 refused entries' 'Re-checked 2026-10-25 (v0.12.121)' sentences (all fetched twice 2026-10-25). Scores changed: no.

  2. 2026-10-25 · v0.12.120 · source_requoted · applied

    Before: langfuse-oss notes listed ee/, web/src/ee/ and worker/src/ee/ as covered by ee/LICENSE and carried the v0.12.119 flag that the LICENSE (changed 2026-10-23) also lists packages/shared/src/server/ee/. The 52-entry refused list dated from official pages fetched 2026-10-03; top-level source said only the refused list still dates from 2026-10-03.

    After: langfuse-oss notes list all four directories the LICENSE names (ee/, web/src/ee/, worker/src/ee/, packages/shared/src/server/ee/) and say the flag is resolved; license 'MIT Expat outside ee/', whatYouGet (does not enumerate directories), kind, cost, limits, sourceUrl, jtbdIds and asOf unchanged. 10 refused entries (nektos/act, Inngest server, Temporal server, Restate, Nango, NATS server, BullMQ, faster-whisper, Kokoro, garak) gain a dated 'Re-checked 2026-10-25' sentence quoting their LICENSE; every verdict unchanged; README parts not re-fetched. Top-level source now says the refused list dates from 2026-10-03 except those 10 entries. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: https://raw.githubusercontent.com/langfuse/langfuse/main/LICENSE and the 10 LICENSE URLs quoted in the refused entries (all fetched twice 2026-10-25). Scores changed: no.

  3. 2026-10-25 · v0.12.119 · source_requoted · applied

    Before: The 21 dev_tool rows inspect-ai, lancedb, langfuse-oss, langgraph, litellm-oss, llm-guard, markitdown, mcp-python-sdk, mcp-servers, mem0, ntfy, pgvector, playwright, promptfoo, qdrant-oss, ragas, ray, reviewdog, signoz, sqlite and trigger-dev carried asOf 2026-10-03. guardrails notes said its README was not re-fetched (hosted-inferencing cutoff from 2026-10-03). Top-level source counted 128 rows re-checked and 21 dev_tool rows at 2026-10-03.

    After: Each of the 21 dev_tool rows gains a dated re-check sentence quoting its own LICENSE (sqlite: its copyright page) and asOf moves 2026-10-03 -> 2026-10-25; no sourceUrl moved (no redirects). langfuse-oss is flagged in notes: its LICENSE (changed 2026-10-23 per the GitHub commits API) now also lists 'packages/shared/src/server/ee/' under ee/LICENSE, which the older note does not list; license value left as stored. guardrails notes now record the README re-fetch (cutoff 'August 25, 2026' unchanged). kind, cost, license, limits, whatYouGet and jtbdIds unchanged on all 22 rows. Top-level source now says all 149 rows were last fetched 2026-10-19 to 2026-10-25 and only the refused list dates from 2026-10-03. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: Each row's own sourceUrl (plus raw LICENSE for the 11 GitHub blob pages), https://api.github.com/repos/langfuse/langfuse/commits?path=LICENSE, https://raw.githubusercontent.com/guardrails-ai/guardrails/main/README.md (all fetched 2026-10-25). Scores changed: no.

  4. 2026-10-25 · v0.12.118 · mistagged_free_row · applied

    Before: crawl4ai license 'Apache-2.0' (flagged for review in v0.12.117: the LICENSE appends an 'Attribution Requirement' section the value did not capture).

    After: crawl4ai license 'Apache-2.0 plus attribution requirement', the same 'Apache-2.0 plus ...' style as mineru's 'Apache-2.0 plus additional commercial terms'. notes gain a dated relabel sentence and say the flag is resolved. kind, cost, limits (null), sourceUrl, whatYouGet, jtbdIds and asOf (2026-10-25) unchanged. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: https://raw.githubusercontent.com/unclecode/crawl4ai/main/LICENSE (fetched twice 2026-10-25). Scores changed: no.

  5. 2026-10-25 · v0.12.118 · source_requoted · applied

    Before: a2a-protocol and agents-md notes cited their spec sites (https://a2a-protocol.org/latest/, https://agents.md/) as HTTP 200 on 2026-10-03 only. The 12 dev_tool rows browser-use, centrifugo, chroma, composio-sdk, dagger, devcontainers-spec, duckdb, e2b-sdk, graphiti, guardrails, hatchet and huggingface-transformers carried asOf 2026-10-03. Top-level source counted 116 rows re-checked and 33 dev_tool rows at 2026-10-03.

    After: a2a-protocol and agents-md notes gain a dated 2026-10-25 spec-site re-check sentence (asOf already 2026-10-25). Each of the 12 dev_tool rows gains a dated re-check sentence quoting its own LICENSE and asOf moves 2026-10-03 -> 2026-10-25; no sourceUrl moved (no redirects). kind, cost, license, limits, whatYouGet and jtbdIds unchanged on all 14 rows. Top-level source now counts 128 rows re-checked and 21 dev_tool rows still at 2026-10-03. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: Each row's own sourceUrl (plus raw LICENSE for the 5 GitHub blob pages), https://a2a-protocol.org/latest/, https://agents.md/ (all fetched twice 2026-10-25). Scores changed: no.

  6. 2026-10-25 · v0.12.117 · source_requoted · applied

    Before: The 3 free_browser, 3 free_sandbox, 3 free_vector, 3 free_mcp, 2 free_image, 2 free_speech and 1 free_rerank rows all carried asOf 2026-10-03 (last fetched then). The free index top level said asOf 2026-10-03, source 'official pages fetched 2026-10-03'.

    After: Each row's own raw LICENSE/COPYING source re-fetched twice 2026-10-25; every stored license header still matches; each notes field gains a dated re-check sentence quoting the source and asOf moves 2026-10-03 -> 2026-10-25. crawl4ai is flagged in notes: its LICENSE appends an 'Attribution Requirement' section that the stored license value 'Apache-2.0' does not capture (LICENSE last changed 2025-02-21 per the GitHub commits API); the license value is left as stored pending review. No sourceUrl moved (no redirects). kind, cost, license, limits, whatYouGet and jtbdIds unchanged on all 17 rows; no row added or removed. The only rows left at asOf 2026-10-03 are the 33 dev_tool rows, so the top-level asOf moves to 2026-10-25 (the newest row asOf) and the top-level source now says rows carry their own asOf, with the dev_tool rows and the refused list still dating from official pages fetched 2026-10-03. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: Each row's sourceUrl (fetched twice 2026-10-25), plus https://raw.githubusercontent.com/unclecode/crawl4ai/main/README.md (fetched twice 2026-10-25) and https://api.github.com/repos/unclecode/crawl4ai/commits?path=LICENSE (2026-10-25). Scores changed: no.

  7. 2026-10-25 · v0.12.116 · source_requoted · applied

    Before: The 8 local_runtime rows, 8 free_docs rows (all but groq-docs) and 7 free_ocr rows all carried asOf 2026-10-03 (last fetched then). openai-api-docs cited https://platform.openai.com/docs and anthropic-docs cited https://docs.anthropic.com.

    After: Each row's own source re-fetched twice 2026-10-25 and the stored license (including null for llms-txt-spec, openai-api-docs, anthropic-docs and agent-skills-spec) and the MinerU limits still match; each notes field gains a dated re-check sentence quoting the source and asOf moves 2026-10-03 -> 2026-10-25. openai-api-docs sourceUrl moves to the observed redirect target https://developers.openai.com/api/docs; anthropic-docs sourceUrl moves to the observed redirect target https://platform.claude.com/docs/en/home. kind, cost, license, limits, whatYouGet and jtbdIds unchanged on all 23 rows; no row added or removed. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: Each row's sourceUrl (fetched twice 2026-10-25), plus the raw LICENSE files of the five GitHub blob sources and https://raw.githubusercontent.com/modelcontextprotocol/modelcontextprotocol/main/LICENSE (each fetched twice 2026-10-25). Scores changed: no.

  8. 2026-10-25 · v0.12.115 · source_requoted · applied

    Before: The 21 free_data rows (benchmark and dataset licenses) all carried asOf 2026-10-03 (last fetched then). swe-bench cited https://github.com/princeton-nlp/SWE-bench/blob/main/LICENSE and wildchat cited https://huggingface.co/datasets/allenai/wildchat/raw/main/README.md.

    After: Each row's own source re-fetched twice 2026-10-25 and the stored license (including null for gaia and swe-bench-verified) still matches; each notes field gains a dated re-check sentence quoting the source and asOf moves 2026-10-03 -> 2026-10-25. swe-bench sourceUrl moves to the observed 301 target https://github.com/SWE-bench/SWE-bench/blob/main/LICENSE; wildchat sourceUrl moves to the observed 307 target https://huggingface.co/datasets/allenai/WildChat/raw/main/README.md. kind, cost, license, limits, whatYouGet and jtbdIds unchanged on all 21 rows; no row added or removed. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: Each row's sourceUrl (fetched twice 2026-10-25), plus https://raw.githubusercontent.com/SWE-bench/SWE-bench/main/LICENSE (fetched twice 2026-10-25). Scores changed: no.

  9. 2026-10-25 · v0.12.113 · source_requoted · applied

    Before: The 23 open_weights rows sourced from a Hugging Face LICENSE/README/model API file or the Whisper GitHub LICENSE all carried asOf 2026-10-03 (last fetched then). glm-4-9b-chat cited https://huggingface.co/THUDM/glm-4-9b-chat/raw/main/LICENSE.

    After: Each row's own source re-fetched twice 2026-10-25 and the stated license still matches; each notes field gains a dated re-check sentence quoting the source and asOf moves 2026-10-03 -> 2026-10-25. glm-4-9b-chat sourceUrl moves to the observed 307 target https://huggingface.co/zai-org/glm-4-9b-chat/raw/main/LICENSE. kind, cost, license, limits, whatYouGet and jtbdIds unchanged on all 23 rows; no row added or removed. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: Each row's sourceUrl (fetched twice 2026-10-25), plus https://raw.githubusercontent.com/openai/whisper/main/LICENSE, https://raw.githubusercontent.com/hexgrad/kokoro/main/LICENSE and https://huggingface.co/Qwen/Qwen2.5-VL-3B-Instruct/raw/main/README.md (fetched 2026-10-25). Scores changed: no.

  10. 2026-10-25 · v0.12.112 · source_requoted · applied

    Before: pricingNotes said 'Serverless Inference API + dedicated Inference Endpoints; Hub-centric; pay for compute on dedicated endpoints.' (asOf 2026-09-14). weaknesses said 'Serverless cold starts and rate limits' (unsourced). website was https://huggingface.co/inference-endpoints.

    After: pricingNotes: Inference Providers (pay-as-you-go access to partner inference providers plus Hugging Face's own hf-inference provider) + dedicated Inference Endpoints ('Pay for what you use, per minute' per https://endpoints.huggingface.co, fetched 2026-10-25; instance rates are the GPU-hour price rows). The 'Serverless Inference API' name is retired: https://huggingface.co/docs/inference-providers/pricing (fetched 2026-10-25) says hf-inference 'used to be called “Inference API (serverless)” prior to Inference Providers' and 'just pay for what you use, with no markup from Hugging Face.' Monthly credits: 'Free Users None - yes (credits purchase required)'; PRO users and Team/Enterprise organizations get included monthly credits. Hub-centric. No price changed here; any price change goes through the reviewed --catalog step. weaknesses: 'Serverless cold starts and rate limits' replaced by 'Free accounts get no included Inference Providers credits ('Free Users None', credits purchase required, per https://huggingface.co/docs/inference-providers/pricing fetched 2026-10-25)'. website: https://endpoints.huggingface.co (the 301 target of the old URL). Same text in data/providers.json, research/providers-seed.json and src/data/providers.ts. GET /api/actionable: 0 of 174 picks changed.

    Source: https://huggingface.co/docs/inference-providers/pricing; https://huggingface.co/inference-endpoints -> https://endpoints.huggingface.co; https://huggingface.co/pricing (all fetched 2026-10-25). Scores changed: no.

  11. 2026-10-25 · v0.12.111 · source_requoted · applied

    Before: letta pricingNotes said '(secondary/roundup figures — letta.com/pricing often bot-blocked)'. amberflo pricingNotes said '(amberflo.io/pricing often bot-blocked)' and its weaknesses said 'Price page flaky/opaque'. kling pricingNotes ended 'Re-pin kling.ai/dev/pricing before commits (page sometimes geo/bot blocked).' and its weaknesses said 'API pricing page often hard to scrape / geo-variable'.

    After: letta: the bot-blocked aside replaced by the observed redirect chain (HTTP 200 at https://docs.letta.com/pricing) and docs quotes 'Pro For personal use. $20 /month', 'API Plan For teams building on the Letta API. $20 /month Unlimited agents $0.10 / active agent / mo $0.00015 / sec tool execution', 'Free plans are limited to 3 stateful agents.'; stored 2026-09-14 figures kept, not re-priced. amberflo: the aside replaced by the observed TLS handshake failure (curl error 35, no HTTP status); weakness now 'https://www.amberflo.io/pricing failed the TLS handshake to plain curl (fetched twice 2026-10-25, no HTTP status), so plan prices are unconfirmed'; ~$99/~$599 bands kept as of 2026-09-14, not re-confirmed. kling: sentence replaced by the observed HTTP 200 client-rendered page (73 characters of server-rendered text, unit card only in inline script data: 'Video API Pricing 1 Unit = $0.14 (list price)', 'Image API Pricing 1 Unit = $0.0035 (list price)'); weakness now states the client-rendered card and 'geo variance not tested'. Same text in data/providers.json, research/providers-seed.json and src/data/providers.ts. GET /api/actionable: 0 of 174 picks changed.

    Source: https://www.letta.com/pricing -> https://docs.letta.com/pricing (fetched 2026-10-25); https://www.amberflo.io/pricing (fetch attempted 2026-10-25, TLS handshake failure); https://kling.ai/dev/pricing (fetched 2026-10-25). Scores changed: no.

  12. 2026-10-25 · v0.12.110 · source_requoted · applied

    Before: providers gladia weaknesses said: 'Public price page often bot-blocked'. pricingNotes began 'As of 2026-09-14 (support.gladia.io official help): Starter PAYG async $0.61/hr, realtime $0.75/hr ...' and ended 'Marketing /pricing often 409 to bots — help center is the durable card.'

    After: weaknesses entry replaced by: "Price card on https://www.gladia.io/pricing is in EUR only (fetched 2026-10-25, HTTP 200 to plain curl: 'Starts at 0.16€ /hour' async, 'Starts at 0.68€ /hour' real-time); no $/hr rate on the page, so Depot's USD figures stay as of 2026-09-14". pricingNotes attribution now reads 'support.gladia.io help article as fetched then' (USD figures and asOf 2026-09-14 kept for history, not re-priced or converted); the '409 to bots' sentence is replaced by the 2026-10-25 page quotes ('Starts at 0.16€ /hour' async Self-serve Solaria-3, 'Starts at 0.68€ /hour' real-time Self-serve, 'Start with 50€ free credits') and the help article's 'Rates, volume tiers, add-on prices and top-up bonuses are kept up to date on our pricing page.'. Same text in data/providers.json, research/providers-seed.json and src/data/providers.ts. GET /api/actionable: 0 of 174 picks changed.

    Source: https://www.gladia.io/pricing (fetched 2026-10-25); https://support.gladia.io/article/understanding-our-transcription-pricing-pv1atikh8y9c8sw7sudm3rcy (fetched 2026-10-25). Scores changed: no.

  13. 2026-10-25 · v0.12.109 · source_requoted · applied

    Before: providers jina weaknesses said: 'Official $ matrix frequently bot-blocked'. pricingNotes did not mention the embeddings-page FAQ wording on jina-embeddings-v4.

    After: weaknesses entry replaced by: 'No per-model price on https://jina.ai/embeddings/ (fetched 2026-10-25, HTTP 200: no $ amount anywhere in the page HTML); prices come only from GET api.jina.ai/v1/models'. pricingNotes gain the FAQ quotes 'jina-embeddings-v4 is built on the Qwen2-VL base model, released under the Qwen Research License, which permits research and non-commercial use only. We therefore cannot license it commercially and provide it free of charge via the API instead.' and 'It is not suitable for production workloads', next to the models-API figure (jina-ai/jina-embeddings-v4 pricing.prompt 0.00000005), which Depot keeps (no re-pricing; any price change needs the reviewed --catalog step). Same text in data/providers.json, research/providers-seed.json and src/data/providers.ts. GET /api/actionable: 0 of 174 picks changed.

    Source: https://jina.ai/embeddings/ (fetched 2026-10-25); https://api.jina.ai/v1/models (fetched 2026-10-25). Scores changed: no.

  14. 2026-10-25 · v0.12.108 · source_requoted · applied

    Before: providers jina pricingNotes (asOf 2026-09-14) said: 'New keys typically ship with ~10M free prepaid tokens shared across Search Foundation APIs. Marketing /embeddings page still often bot-blocked; models API is source of record.'

    After: The ~10M free prepaid token sentence is removed (no official page states a number). Replaced by the page's own wording: As of 2026-10-25 (https://jina.ai/embeddings/ FAQ): 'New users get an auto-generated API key with free tokens usable across any of our models.' The page states no free-token amount, so none is given. The models-API figures ($0.05/1M for the listed embeddings/rerank/reader models; jina-ocr-v1 $0.50/$2.00 per 1M prompt/completion) still match GET https://api.jina.ai/v1/models, so their As of date moves 2026-09-14 -> 2026-10-25. The 'still often bot-blocked' phrase is dropped (the page answered HTTP 200 twice). Same text in data/providers.json, research/providers-seed.json and src/data/providers.ts. GET /api/actionable: 0 of 174 picks changed.

    Source: https://jina.ai/embeddings/ (FAQ, fetched 2026-10-25); https://api.jina.ai/v1/models (fetched 2026-10-25). Scores changed: no.

  15. 2026-10-25 · v0.12.107 · source_requoted · applied

    Before: Six catalog pricing rows (friendli-minimax-m25-input $0.30, friendli-minimax-m25-output $1.20, friendli-minimax-m25-cached $0.06 on https://friendli.ai/pricing; samba-minimax-m3-input $0.60, samba-minimax-m3-output $2.40, samba-minimax-m3-cached $0.06 on https://cloud.sambanova.ai/plans/pricing; all asOf 2026-10-03) carried no sourceStatus after the 2026-10-20 static source check marked five of them not_found_on_page (and samba-minimax-m3-input reconfirmed with ambiguity catalog_amount_not_next_to_sku because MiniMax-M3.1-Flash starts with MiniMax-M3 and 0.60 USD appears on Meta-Llama-3.3-70B-Instruct).

    After: All six rows marked sourceStatus: unverified, sourceStatusCheckedOn: 2026-10-25, priceSortEligible: false, with matching 2026-10-25 static_fetch unverified reviews in data/price-reviews.json; stored amounts and asOf 2026-10-03 kept for history, never ranked. Both providers keep other ranked token rows (Friendli GLM-5.3-Flash $0.10/1M input; SambaNova gpt-oss-120b $0.22/1M input). Also synced /home/box/agent-data/workflows/depot-hub/SKILL.md with skills/depot-hub/SKILL.md.

    Source: https://friendli.ai/pricing and https://cloud.sambanova.ai/plans/pricing (fetched 2026-10-25). Scores changed: no.

  16. 2026-10-25 · v0.12.106 · source_requoted · applied

    Before: Free row huggingface-inference-monthly-credits (free_inference, cost credits_not_free_forever, jtbdIds cheap-volume-llm and open-model-inference) said free Hugging Face accounts receive monthly credits for routed Inference Providers requests, with limits monthlyCreditsUsd 0.1, subjectToChange true; sourceUrl https://huggingface.co/docs/inference-providers/pricing; asOf 2026-10-03.

    After: Row removed from the free index; a refused entry records why. The page now lists no monthly credits for free users (they must purchase credits or upgrade to PRO), so there is no free offering left to index. PRO ($2.00) and Team or Enterprise ($2.00 per seat) credits stay unindexed as paid-plan credits (existing refused entry). No other data file carried the $0.10 figure (providers.json huggingface-inference has no freeTier; no Hugging Face plan-limit or catalog price row). GET /api/actionable: 0 of 174 picks or terms values changed; every response is identical. GET /api/free for cheap-volume-llm and open-model-inference no longer lists the row.

    Source: https://huggingface.co/docs/inference-providers/pricing and its markdown view pricing.md (fetched 2026-10-25; Included Monthly Credits table); https://github.com/huggingface/hub-docs/commit/c708a9e9fd2ba53fefc8fad13ff1a9780a838c42. Scores changed: no.

  17. 2026-10-25 · v0.12.105 · source_requoted · applied

    Before: Free row openrouter-free-variants carried asOf 2026-10-03, sourceUrl https://openrouter.ai/docs/api/reference/limits, cost free_tier_unspecified and limits null, because the fetched page left the free RPM/RPD values as template placeholders.

    After: sourceUrl moved to https://openrouter.ai/docs/api_reference/limits (the old URL returns HTTP 308 there). limits now hold the page's free usage table for model IDs ending in :free: 20 requests per minute; 50 requests per day with less than 10 credits purchased (all time), 1000 with at least 10; daily window is the UTC day. cost free_tier_unspecified -> free (validate-data forbids limits on an unspecified tier). notes re-quoted; asOf 2026-10-25. whatYouGet, kind, license (null) and jtbdIds unchanged. GET /api/actionable: 0 of 174 picks changed; the multi-model-router response (pick openrouter) gains the sourced 'free' term from this row (terms value usage -> usage, free); every other field of every response is identical.

    Source: https://openrouter.ai/docs/api_reference/limits and its markdown view limits.md (fetched 2026-10-25; Rate limits > Free usage limits table). Scores changed: no.

  18. 2026-10-25 · v0.12.104 · source_requoted · applied

    Before: Free rows cloudflare-workers-ai-neurons, -embeddings, -rerank and -image carried asOf 2026-10-03 with notes from the Oct 1, 2026 page; the neurons row's paid-billing model list omitted @cf/deepseek-ai/deepseek-v4.1-flash-1017.

    After: notes re-quoted from the 2026-10-25 page (public, HTTP 200 without login, 'Last updated Oct 20, 2026'); asOf 2026-10-25. All limit values unchanged (10,000 neurons/day shared across models, reset 00:00 UTC; no separate embedding, rerank or image cap). The neurons row now lists all eight paid-billing-only models, including @cf/deepseek-ai/deepseek-v4.1-flash-1017, and the page's note that they can be reached with Workers Paid or prepaid AI Gateway credits. whatYouGet, kind, cost (free), license (null), sourceUrl and jtbdIds unchanged. GET /api/actionable: 0 of 174 picks or terms values changed; the edge-llm-inference and wasm-edge-small-models responses now show terms.sources asOf 2026-10-25 for the Workers AI-sourced term (was 2026-10-03).

    Source: https://developers.cloudflare.com/workers-ai/platform/pricing/ (fetched 2026-10-25; free allocation table, paid-billing note, embeddings/image/other model pricing tables). Scores changed: no.

  19. 2026-10-25 · v0.12.103 · source_requoted · applied

    Before: Free rows jina-free-embeddings and jina-free-rerank carried asOf 2026-10-03 with paraphrased notes (no page quotes).

    After: notes re-quoted from the 2026-10-25 page (public, HTTP 200 without login); asOf 2026-10-25. All limit values unchanged (free API key 100 RPM and 100,000 TPM for both the Embedding API and Reranker API rows; IP-based limit 10,000 requests per 60 seconds). The page still states no free token amount, so no token balance is stored. whatYouGet, kind, cost (free), license (null), sourceUrl and jtbdIds unchanged. GET /api/actionable: 0 of 174 picks or terms values changed; the one response citing https://jina.ai/embeddings/ now shows terms.sources asOf 2026-10-25 for the Jina 'free' term (was 2026-10-03).

    Source: https://jina.ai/embeddings/ (fetched 2026-10-25; rate table rows 'Embedding API' and 'Reranker API', FAQ). Scores changed: no.

  20. 2026-10-25 · v0.12.102 · source_requoted · applied

    Before: Free rows cohere-trial-chat, cohere-trial-embed and cohere-trial-rerank carried asOf 2026-10-03 with paraphrased notes (no page quotes).

    After: notes re-quoted from the 2026-10-25 page (public, HTTP 200 without login); asOf 2026-10-25. All limit values unchanged (1,000 API calls a month per trial key; chat 20 req/min; Embed 2,000 inputs/min; Embed (Images) 5 inputs/min; Rerank 10 req/min). cohere-trial-chat whatYouGet now names the page's Chat models (incl. North Mini Code) instead of 'Command chat models'; embed and rerank whatYouGet kept. kind, cost (free), license (null), sourceUrl and jtbdIds unchanged. GET /api/actionable: 0 of 174 picks or terms values changed; the embeddings and rag-enterprise responses now show terms.sources asOf 2026-10-25 for the Cohere 'free' term (was 2026-10-03).

    Source: https://docs.cohere.com/docs/rate-limits (fetched 2026-10-25; tables 'Chat API (per model)' and 'Other API Endpoints'). Scores changed: no.

  21. 2026-10-25 · v0.12.101 · source_requoted · applied

    Before: Free row groq-docs carried asOf 2026-10-03 and the unquoted note 'Docs access is not the Free Plan quota. Use the groq-free-plan rows for numbers.'

    After: notes re-quoted from the 2026-10-25 page (public, HTTP 200 without login; documents rate limits and has a 'Free Plan Limits' tab); asOf 2026-10-25. whatYouGet kept (supported by the page). kind (free_docs), cost (free), limits (null), license (null), sourceUrl and jtbdIds unchanged. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: https://console.groq.com/docs/rate-limits (fetched 2026-10-25; sections 'Understanding Rate Limits' and 'Rate Limits' with the 'Free Plan Limits' tab). Scores changed: no.

  22. 2026-10-24 · v0.12.100 · source_url_changed · applied

    Before: Free row mistral-free-mode carried asOf 2026-10-03, sourceUrl https://docs.mistral.ai/admin/user-management-finops/tier and paraphrased notes mentioning Ambassador credits and 'free for a limited amount of time'.

    After: sourceUrl moved to https://docs.mistral.ai/admin/billing-usage/usage-limits (the old URL returns HTTP 308 there; same Free mode statement). whatYouGet and notes re-quoted from the 2026-10-24 page; asOf 2026-10-24. limits stays null (no numeric free cap published). kind (free_inference), cost (free_tier_unspecified), license (null) and jtbdIds unchanged. The Ambassador credits / 'free for a limited amount of time' wording is no longer on the page. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: https://docs.mistral.ai/admin/billing-usage/usage-limits (fetched 2026-10-24; section 'Plan, usage, and limits'). Scores changed: no.

  23. 2026-10-24 · v0.12.99 · stale_limit_value · applied

    Before: Free row cerebras-free-trial (sourced from https://inference-docs.cerebras.ai/support/rate-limits) carried asOf 2026-10-03 with paraphrased notes; whatYouGet did not state the 30-day credit expiry or that the credits cover all public models.

    After: Row re-checked against the 2026-10-24 page and re-quoted, asOf 2026-10-24. All stored limits unchanged: creditsUsd 5, expiresDaysAfterGrant 30, requiresVerifiedPaymentMethod true; gpt-oss-120b and qwen-3.8-27b each RPM 5, uncached TPM 30000, total TPM 90000, TPH 1000000, TPD 1000000. The Free Trial table lists exactly these two models (none dropped or added). whatYouGet now states the 30-day expiry, 'all public models' scope and that access stops until credits are purchased; notes quote the page. kind (free_inference), cost (credits_not_free_forever), license (null), sourceUrl and jtbdIds unchanged. Developer (Pay as You Go) values still not stored. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: https://inference-docs.cerebras.ai/support/rate-limits (fetched 2026-10-24; Free Trial table and FAQ). Scores changed: no.

  24. 2026-10-24 · v0.12.98 · stale_limit_value · applied

    Before: Three free rows sourced from https://console.groq.com/docs/rate-limits carried asOf 2026-10-03. groq-free-plan-chat stored openai/gpt-oss-safeguard-20b at RPM 30, RPD 1000, TPM 8000, TPD 200000.

    After: All three rows re-checked against the 2026-10-24 freeRows payload and re-quoted, asOf 2026-10-24. groq-free-plan-chat openai/gpt-oss-safeguard-20b now RPM 3 and TPM 2000 (RPD 1000 and TPD 200000 unchanged); the other nine model ids across the three rows keep identical values. No model dropped or added (freeRows lists exactly the ten stored ids). kind, cost (free), whatYouGet, license (null), sourceUrl and jtbdIds unchanged; groq-docs row untouched. GET /api/actionable: 0 of 174 picks or terms values changed; only the 'free' source asOf for ultra-low-latency (groq, from groq-free-plan-chat) moves 2026-10-03 -> 2026-10-24.

    Source: https://console.groq.com/docs/rate-limits (fetched 2026-10-24; freeRows payload). Scores changed: no.

  25. 2026-10-24 · v0.12.97 · unsourced_wording_removed · applied

    Before: gemma-terms-of-use (open_weights, cost free, license 'Gemma Terms of Use') carried asOf 2026-10-03. whatYouGet said 'downloadable at no charge under that license. Not an OSI license.' (neither phrase is on the terms page); notes said only that 'Gemma 4 uses a different license'.

    After: Re-quoted from the 2026-10-24 fetch, asOf 2026-10-24. whatYouGet names models from the page's Appendix and the Section 3.2 use restrictions, and says Gemma 4 is not covered; the unsourced 'at no charge' and 'Not an OSI license' wording is removed. notes quote the scope sentence, the Gemma 4 pointer (link to https://ai.google.dev/gemma/apache_2, page titled 'Apache License 2.0'), Section 3.2, the page's new deprecation notice and the get_started download sentence. kind, cost, license, limits (null), sourceUrl and jtbdIds unchanged; Gemma 4 not indexed. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: https://ai.google.dev/gemma/terms (fetched 2026-10-24; 'Last updated 2026-04-01 UTC'); https://ai.google.dev/gemma/apache_2 (fetched 2026-10-24); https://ai.google.dev/gemma/docs/get_started (fetched 2026-10-24). Scores changed: no.

  26. 2026-10-24 · v0.12.96 · sku_not_on_source_page · applied

    Before: Five free rows sourced from https://ai.google.dev/gemini-api/docs/pricing carried asOf 2026-10-03 with notes from earlier fetches (one quoting a 2026-10-19 fetch). gemini-api-free-tier-standard whatYouGet listed gemini-3.7-flash and gemini-3.5-flash among the models with Free of charge standard cells.

    After: All five rows re-quoted from the 2026-10-24 fetch, asOf 2026-10-24. gemini-api-free-tier-standard whatYouGet drops gemini-3.7-flash and gemini-3.5-flash (neither appears on the page any more; the reason is in the row's notes) and keeps gemini-3.8-flash, gemini-3.6-flash, gemini-3.5-flash-lite, gemini-3.1-flash-lite, gemini-3-flash-preview, gemini-2.5-pro, gemini-2.5-flash and gemini-2.5-flash-lite, whose Standard Free Tier input and output cells read 'Free of charge'. The other four rows' whatYouGet is unchanged (still supported). kind, cost, limits (gemini-2.5-search-grounding-free: 500 requests per day shared by gemini-2.5-flash and gemini-2.5-flash-lite; others null), license, sourceUrl and jtbdIds unchanged. GET /api/actionable: 0 of 174 picks or terms values changed; only the 'free' source asOf for long-context-agents and multimodal (google-ai, from gemini-2.5-search-grounding-free) moves 2026-10-03 -> 2026-10-24.

    Source: https://ai.google.dev/gemini-api/docs/pricing (fetched 2026-10-24; page 'Last updated 2026-10-22 UTC'); https://ai.google.dev/gemini-api/docs/rate-limits (fetched 2026-10-24; 'Last updated 2026-10-15 UTC'). Scores changed: no.

  27. 2026-10-24 · v0.12.94 · mistagged_free_row · applied

    Before: kind free_docs (non-service, so it never fed google-ai's billing term 'free' after 0.12.93 and was listed as reference material); whatYouGet 'AI Studio usage is free of charge in available regions. This is the studio, not a published API quota.'; notes quoted a 2026-10-19 fetch; asOf 2026-10-03.

    After: kind free_tool (a FREE_SERVICE_KINDS kind); whatYouGet says using Google AI Studio is free of charge in all available regions and is not a published API quota; notes quote the 2026-10-24 fetch; asOf 2026-10-24; cost free, limits null (no numeric studio quota stated), license null, sourceUrl and jtbdIds unchanged. GET /api/actionable terms for google-ai picks are unchanged (['usage','free']; the 'free' source stays gemini-2.5-search-grounding-free, which precedes this row).

    Source: https://ai.google.dev/gemini-api/docs/pricing (fetched 2026-10-24; page 'Last updated 2026-10-22 UTC'). Scores changed: no.

  28. 2026-10-24 · v0.12.93 · wrong_billing_term · applied

    Before: termsFor() added billing term 'free' for any data/free-resources.json row with the provider's providerId and cost free, whatever its kind. Free docs/spec rows made picks look free: mcp-discovery (mcp-registry) terms ['free'] from mcp-spec-2026-07-28 (the MCP specification docs), which also suppressed cancellable_unknown; anthropic picks (frontier-chat, coding-agent, agent-tools, prompt-caching-optimization, diff-aware-pr-review) ['usage','free'] from anthropic-docs; synthetic-eval-data (openai) ['usage','free'] from openai-api-docs; google-ai's free source was the gemma-terms-of-use open-weights row.

    After: Only free rows whose kind describes the provider's own service (FREE_SERVICE_KINDS in src/lib/freeResources.ts: free_inference, free_embedding, free_speech, free_rerank, free_image, free_tool, free_ocr, free_browser, free_sandbox, free_vector, free_mcp, free_database, free_email, free_hosting, free_queue) feed 'free'. free_docs, open_weights, local_runtime, dev_tool and free_data never do. mcp-discovery now reports terms ['unknown'] with reasons billing_terms_unknown and cancellable_unknown; anthropic and openai picks report ['usage']; groq, google-ai and cohere keep 'free' from their own free-plan/free-request/trial rows.

    Source: data/free-resources.json rows mcp-spec-2026-07-28, anthropic-docs, openai-api-docs, groq-docs (whatYouGet/notes as stored); CHANGELOG.md 0.12.93. Scores changed: no.

  29. 2026-10-24 · v0.12.92 · mistagged_free_row · applied

    Before: cost free; whatYouGet 'Public metadata registry of MCP servers. Browsing and the published API are free of a Depot-listed price.'; sourceUrl https://registry.modelcontextprotocol.io/ (client-rendered UI, no price text); asOf 2026-10-03.

    After: cost oss (registry repo LICENSE, MIT to Apache-2.0 transition); whatYouGet says the registry provides an unauthenticated read-only REST API (GET /v0.1/servers) and that no price is published on the fetched docs; sourceUrl https://modelcontextprotocol.io/registry/registry-aggregators; notes quote the docs and LICENSE; asOf 2026-10-24.

    Source: https://modelcontextprotocol.io/registry/registry-aggregators; https://raw.githubusercontent.com/modelcontextprotocol/registry/main/docs/reference/api/official-registry-api.md; https://raw.githubusercontent.com/modelcontextprotocol/registry/main/LICENSE (all fetched 2026-10-24). Scores changed: no.

  30. 2026-10-24 · v0.12.89 · editorial_pick_replacement · applied

    Before: mcp-discovery Depot Pick: smithery (job-weighted 7.7), runners-up mcp-registry, glama, composio, pulse-mcp, aws-agent-registry, google-agent-registry. mcp-server-hosting Depot Pick: smithery (7.87), runners-up glama, composio, cloudflare-workers, fly-io.

    After: mcp-discovery Depot Pick: mcp-registry (8.19, the highest-scoring live runner-up); smithery moved to the last runner-up slot (directory only). mcp-server-hosting Depot Pick: cloudflare-workers (8.52, the highest-scoring live runner-up); smithery removed from the job and from its jtbdIds; cloudflare-workers jtbdIds gain mcp-server-hosting. Smithery record, status (active until 2026-10-31) and scores kept; tag retirement-announced added; pricingNotes re-sourced (PAYG and per-RPC prices dropped).

    Source: https://smithery.ai/future; https://smithery.ai/pricing (both fetched 2026-10-24). Scores changed: no.

  31. 2026-10-21 · v0.12.31 · claim_from_comparison_not_made · applied

    Before: /api/coverage (and /agents/coverage, MCP coverage tool) set pickIsPriceWinner with Boolean(quote.pickIsPriceWinner), so the 14 need jobs (16 class-need rows) whose job has exactly one candidate with a matching sourced price (quote: pickIsPriceWinner null, priceWinnerReason fewer_than_two_priced_candidates), e.g. content-moderation, document-parse, rag-rerank, production-stt, marketing-email, reported pickIsPriceWinner false ('not a price winner') although nothing was compared.

    After: Coverage copies the quote's verdict unchanged: null for those 14 jobs, with a new priceWinnerReason (fewer_than_two_priced_candidates, or no_matching_sourced_price when there is no matching price). true/false only appears where at least two candidates are priced, and always equals GET /api/quote.

    Source: Code audit against GET /api/quote on the :3060 preview, 2026-10-21 (Prepared Board feedback: pickIsPriceWinner must be null with fewer than 2 priced candidates). Scores changed: no.

  32. 2026-10-21 · v0.12.30 · overage_tiers_not_applied · applied

    Before: data/limits.json Clerk Pro and Business costed every MRU above 50,000 at a flat $0.02 ('Volume discounts exist and are not applied'), labelled exact (estimateIsUpperBound false), so /api/estimate auth overstated Clerk above 100,000 MRU (500k MRU: $9,025 instead of $8,225 on Pro). No SSO-connection meter.

    After: Graduated MRU bands encoded as overageTiers: 50,001-100,000 $0.02, 100,001-1,000,000 $0.018, 1,000,001-10,000,000 $0.015, 10,000,001+ $0.012 per MRU per month (exact at every volume). New separate meter clerk_sso_connections: 1 included on Pro/Business, $75 each for 2-15, $60 each for 16-100, 101+ contact us (not costed); not available on Hobby. Clerk pricingNotes say MRU, not MAU.

    Source: https://clerk.com/pricing (fetched 2026-10-21). Scores changed: no.

  33. 2026-10-21 · v0.12.28 · price_changed_on_source · applied

    Before: data/stack-plans.json Netlify Pro add-on credits $5 per 500 (asOf 2026-10-21, v0.12.10), the Personal rate.

    After: Netlify Pro add-on credits $10 per 1,500 (wholeUnits, auto recharge only). Personal stays $5 per 500.

    Source: https://www.netlify.com/pricing/; https://docs.netlify.com/manage/accounts-and-billing/billing/billing-for-credit-based-plans/credit-based-pricing-plans/ (both fetched 2026-10-21). Scores changed: no.

  34. 2026-10-21 · v0.12.27 · editorial_pick_replacement · applied

    Before: cost-monitoring Depot Pick: helicone (job-weighted 8.13), runners-up langfuse, openrouter, vantage, portkey. llm-rate-limit-shield Depot Pick: helicone (8.12), runners-up portkey, cloudflare-ai-gateway, vercel-ai-gateway, openrouter. Helicone also a runner-up for llm-tracing, agent-cloud-finops, llm-ai-gateway and llm-cost-anomaly-alerts (all six roles pending owner review since v0.12.23).

    After: cost-monitoring Depot Pick: langfuse (8.66, the highest-scoring live runner-up; cost tracking, spend-threshold alerts and Metrics API per https://langfuse.com/docs/observability/features/token-and-cost-tracking, re-checked 2026-10-21; repo pushed 2026-10-21). llm-rate-limit-shield Depot Pick: cloudflare-ai-gateway (8.42, the highest-scoring live runner-up; free rate limiting with 429 per https://developers.cloudflare.com/ai-gateway/features/rate-limiting/ (updated Sep 30, 2026) and /reference/pricing/ (updated Oct 15, 2026), per user/project/team rate and budget limits via Dynamic Routing; AI Gateway 'operational' on cloudflarestatus.com, all 2026-10-21). Helicone moved to the last runner-up slot in both jobs; its four other runner-up roles unchanged; all six carry the maintenance_mode flag. Helicone record, status (active) and scores kept; tag maintenance-mode added.

    Source: https://www.mintlify.com/blog/mintlify-acquires-helicone; https://www.helicone.ai/ (both re-fetched 2026-10-21). Scores changed: no.

  35. 2026-10-21 · v0.12.27 · price_changed_on_source · applied

    Before: browserbase-search-calls 'Search calls' $7 per 1,000 searches (asOf 2026-10-03), matching the docs plans table; the pricing page headline says '$5/1k searches by default'.

    After: Three rows in the same unit (usd_per_1k_searches, asOf 2026-10-21): browserbase-search-calls (default, Parallel Advanced) $5; browserbase-search-calls-parallel-fast $1; browserbase-search-calls-exa $7. Re-priced through node scripts/history.mjs --catalog run 2026-10-21.3 (amount_changed 7 -> 5 plus two first_seen events).

    Source: https://www.browserbase.com/pricing; https://docs.browserbase.com/platform/search/overview.md (both fetched 2026-10-21); data/price-reviews.json. Scores changed: no.

  36. 2026-10-21 · v0.12.24 · wrong_unit · applied

    Before: Per-size E2B rows (e.g. 2 vCPU $0.000028) labelled usd_per_vcpu_second / usd_per_gib_second, overstating the per-unit rate.

    After: vCPU rows relabelled usd_per_sandbox_second_vcpu_charge, RAM rows usd_per_sandbox_second_ram_charge. Amounts, SKU, ids, sourceUrl and asOf (2026-10-03) unchanged; recorded via history --catalog run 2026-10-21.2 as 7 unit_changed events.

    Source: https://e2b.dev/pricing (re-checked 2026-10-21); data/price-reviews.json. Scores changed: no.

  37. 2026-10-21 · v0.12.7 · editorial_pick_replacement · applied

    Before: enterprise-search Depot Pick: bing-search (job-weighted 8.06). bing-search also a runner-up for serp-scrape and agent-search.

    After: enterprise-search Depot Pick: brave-search (job-weighted 8.41, the highest-scoring live runner-up; pricing $5 per 1,000 requests and status 'All services are online' re-checked 2026-10-21 at brave.com/search/api and status.brave.com). bing-search removed from all runner-up lists and marked retired (status deprecated, tags sunset+retired); its record and history are kept.

    Source: https://learn.microsoft.com/en-us/lifecycle/announcements/bing-search-api-retirement. Scores changed: no.

  38. 2026-10-19 · v0.10.1 · mistagged_free_row · applied

    Before: 197 of 267 free tags were on jobs without a capability rule. Unsupported tags: cohere-trial-chat, openai-api-docs, anthropic-docs and google-ai-studio on coding-agent; jina-free-embeddings (an embedding API) on neural-search; mcp-python-sdk, chrome-devtools-mcp, github-mcp-server and playwright-mcp (an SDK and single servers) on mcp-discovery; github-mcp-server on mcp-server-hosting; toucan-1-5m (SFT training data) on evals. wildchat (instruction-finetuning conversations) on evals; it passed the old wording check only through the negated phrase 'not a scored leaderboard'.

    After: Every tag is covered by one of 50 rules (257/257 after the removals). Those 10 tags removed; google-ai-studio retagged coding-agent → frontier-chat; wildchat retagged evals → finetune. Sourced notes added to gemini-api-free-tier-standard, promptfoo, gsm8k, mind2web, browsergym and toucan-1-5m. One reviewed exception: groq-docs on ultra-low-latency.

    Source: CHANGELOG.md 0.10.1; research/FREE-TAG-AUDIT-2026-10-19.md. Scores changed: no.

  39. 2026-10-19 · v0.9.2 · price_changed_on_source · applied

    Before: Stored 2026-10-03: Qwen3.8-27B in $0.24, Qwen3.8-27B out $2.2, Qwen3.6-27B in $0.3, Kimi K2.6 in $0.5, Kimi K2.6 out $2.85, Kimi-K3 in $3.0, Kimi-K3 out $15.0 per 1M tokens.

    After: 2026-10-19 rendered https://chutes.ai/pricing model cards: Qwen3.8-27B in $0.039, Qwen3.8-27B out $1.25, Qwen3.6-27B in $0.25, Kimi K2.6 in $0.45, Kimi K2.6 out $1.95, Kimi-K3 in $1.85, Kimi-K3 out $9.5 per 1M tokens.

    Source: https://chutes.ai/pricing (headless render 2026-10-19); data/price-reviews.json. Scores changed: no.

  40. 2026-10-19 · v0.9.2 · sku_not_on_source_page · applied

    Before: 28 MiniMax-M2 / M2.1 / M2.5 / M2.7 (+highspeed) token rows from 2026-10-03, and 2 MiniMax-M3 rows marked ambiguous (list and discount shown together).

    After: The official pay-as-you-go page now lists only MiniMax-M3.1-Flash ($0.15 / $0.60 / $0.015 cache read) and MiniMax-M3 (standard <=512k $0.30 / $1.20 / $0.06; >512k $0.60 / $2.40; priority 1.5x). M2.x rows kept as sourceStatus unverified (never ranked); the 2 ambiguous M3 rows superseded by 10 new rows.

    Source: https://platform.minimax.io/docs/guides/pricing-paygo.md (official Markdown twin, 2026-10-19). Scores changed: no.

  41. 2026-10-19 · v0.9.2 · source_url_changed · applied

    Before: Resend rows cited https://resend.com/pricing, whose plan table is a client-side slider; 18 rows read not_found_on_page.

    After: All Resend rows cite the official Markdown twin https://resend.com/pricing.md (linked from the page); every amount reconfirmed, none changed.

    Source: https://resend.com/pricing.md. Scores changed: no.

  42. 2026-10-19 · v0.9.1 · expired_promo_price · applied

    Before: v4 $0.022 and v4 Turbo $0.011 per 1K characters (stored 2026-10-03: a 72%-off promo ending Oct 12, list $0.08 / $0.04 struck on the same card).

    After: v4 $0.08 and v4 Turbo $0.04 per 1K characters, asOf 2026-10-19, read from https://elevenlabs.io/pricing/api with a headless browser; the promo is no longer shown. The speech-synthesis quote now ranks the current list rates.

    Source: https://elevenlabs.io/pricing/api (rendered 2026-10-19); data/price-reviews.json. Scores changed: no.

  43. 2026-10-19 · v0.9.1 · price_changed_on_source · applied

    Before: @cf/cloudflare/clef-flash $0.09 per M input tokens (asOf 2026-10-03).

    After: $0.038 per M input tokens (3455 neurons per M input tokens), asOf 2026-10-19, from the 'Other model pricing' table at https://developers.cloudflare.com/workers-ai/platform/pricing/.

    Source: https://developers.cloudflare.com/workers-ai/platform/pricing/ (rendered 2026-10-19). Scores changed: no.

  44. 2026-10-19 · v0.9.1 · sku_not_on_source_page · applied

    Before: Six Claude 3.5 Sonnet / 3.5 Sonnet v2 rows ($6 in, $30 out, $7.50 cache write, $0.60 cache read), two of them 'reconfirmed' by the static check because the name and '$6.00' occur in page source.

    After: Marked sourceStatus 'unverified' (kept for history, never ranked): the rendered Anthropic table on 2026-10-19 lists Claude Haiku 5.5 through Sonnet 4, not 3.5 Sonnet. Added current rows Claude Sonnet 5.5 ($2/$10), Opus 5.5 ($4/$20), Haiku 5.5 ($0.10/$0.50) per 1M tokens from the same table.

    Source: https://aws.amazon.com/bedrock/pricing/ (rendered 2026-10-19). Scores changed: no.

  45. 2026-10-19 · v0.9.1 · sku_not_on_source_page · applied

    Before: 'Scribe entity detection' $0.07 per hour (amount found on the page, SKU name not).

    After: Marked 'unverified': the $0.070 column is now labelled 'Transcript editing (per hour)'; entity detection is not on the page.

    Source: https://elevenlabs.io/pricing/api (rendered 2026-10-19). Scores changed: no.

  46. 2026-10-19 · v0.4.0 · mistagged_free_row · applied

    Before: Row tagged speech-synthesis while its description was Whisper (speech-to-text) only.

    After: Whisper row lists speech-to-text only; TTS models from the same source page became a new row cloudflare-workers-ai-tts on speech-synthesis. Validator rejects a Whisper row on speech-synthesis.

    Source: CHANGELOG.md 0.4.0. Scores changed: no.

  47. 2026-10-19 · v0.4.0 · misleading_message · applied

    Before: pickIsPriceWinner:false and 'Pick is not a price winner' even when nothing was compared.

    After: pickIsPriceWinner:null with priceWinnerReason when no comparison happened.

    Source: CHANGELOG.md 0.4.0. Scores changed: no.

  48. 2026-10-03 · v0.2.27 · wrong_job_sku · applied

    Before: Marketing-email ranked a transactional-email SKU (Resend overage).

    After: Resend overage stays on transactional-email; marketing cheapest is null when no marketing per-1k SKU matches.

    Source: CHANGELOG.md 0.2.27. Scores changed: no.

  49. 2026-10-03 · v0.2.22 · wrong_unit · applied

    Before: Unit usd_per_hour.

    After: Unit usd_per_browser_hour at the same $0.02 (the pricing page calls it browser time). Amount unchanged.

    Source: CHANGELOG.md 0.2.22. Scores changed: no.

  50. 2026-10-03 · v0.2.9 · wrong_job_sku · applied

    Before: cheapestInput used a provider's cheapest chat input for every job.

    After: Each job compares only SKUs in its own unit; null when nothing matches or units differ.

    Source: CHANGELOG.md 0.2.9. Scores changed: no.

  51. 2026-10-25 · v0.12.122 · source_requoted · applied

    Before: 21 of the 52 refused entries dated from official pages fetched 2026-10-03 (gated model licenses, provider-page entries, signup credits and policy entries); 31 had been re-checked in v0.12.120/v0.12.121. Top-level source said the refused list dates from 2026-10-03 except the 31 entries marked 'Re-checked 2026-10-25'.

    After: 12 refused entries gain a dated 'Re-checked 2026-10-25 (v0.12.122)' sentence: 8 provider-page entries (OpenRouter RPM/RPD, Gemini API RPM/TPM/RPD, Mistral free-mode amount, Jina token balance, Groq devRows, Workers AI paid-billing models, Hugging Face PRO and Team credits, Cerebras always-free tier) naming each URL and quote, and 4 policy entries (pgvector/OpenRouter, EUR, CAPTCHA, picks) checked against Depot's own data; every verdict unchanged. Flag (pending review, verdict not changed): the OpenRouter limits page's inline script now defines FREE_MODEL_RATE_LIMIT_RPM=20, FREE_MODEL_NO_CREDITS_RPD=50, FREE_MODEL_HAS_CREDITS_RPD=1e3 and FREE_MODEL_CREDITS_THRESHOLD=10 while the rendered table cells stay empty; no value stored. Top-level source now names the 43-entry exception; 9 entries (Llama 3.1/3.2/4, Gemma 2/3/4, FLUX.1-dev, Qwen2.5-VL-3B, GPQA, signup credits) still date from 2026-10-03. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: The URLs and files quoted in the 12 refused entries' 'Re-checked 2026-10-25 (v0.12.122)' sentences (URLs fetched twice 2026-10-25). Scores changed: no.

  52. 2026-10-25 · v0.12.123 · source_requoted · applied

    Before: The 10 refused entries re-checked in v0.12.120 (nektos/act, Inngest server, Temporal server, Restate, Nango, NATS server, BullMQ, faster-whisper, Kokoro, garak) had only their LICENSE part re-fetched; each said the README was not re-fetched, and the Inngest entry said the inngest-js LICENSE 404 was not re-checked. Top-level source said the refused list dates from 2026-10-03 except the 43 entries marked 'Re-checked 2026-10-25'.

    After: 10 refused entries gain a dated 'Re-checked 2026-10-25 (v0.12.123)' sentence: README quotes re-confirmed for nektos/act, Temporal server (plus the LangGraph README the entry compares against), NATS server, BullMQ, faster-whisper, Kokoro and garak, with the absence checks the entries rely on; the inngest-js LICENSE and LICENSE.md paths re-confirmed 404 (the GitHub contents API lists no root LICENSE; repo metadata reports GPL-3.0, not used); Restate and Nango make no README claim (license-only verdicts). Every verdict unchanged, no flag. Top-level source now says the re-check sentences include the v0.12.123 README halves and the inngest-js 404; still 43 entries re-checked, 9 still date from 2026-10-03. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: The URLs quoted in the 10 refused entries' 'Re-checked 2026-10-25 (v0.12.123)' sentences (fetched twice 2026-10-25). Scores changed: no.

  53. 2026-10-25 · v0.12.124 · source_requoted · applied

    Before: 9 of the 52 refused entries still dated from official pages fetched 2026-10-03: Llama 4, Gemma 4 (Gemma Terms page), Llama 3.1/3.2, Gemma 2/3, FLUX.1-dev, Qwen2.5-VL-3B, GPQA, the Hugging Face free-account monthly credits entry (which quoted a 2026-10-25 fetch but carried no re-check marker) and the signup-credits entry. Top-level source said the refused list dates from 2026-10-03 except the 43 entries marked 'Re-checked 2026-10-25'.

    After: 8 refused entries gain a dated 'Re-checked 2026-10-25 (v0.12.124)' sentence naming each URL and quote: gated Hugging Face /raw/main/ license paths re-confirmed HTTP 401 (Llama 3.1, 3.2, 4, Gemma 2, 3, FLUX.1-dev, GPQA README and license.txt); HF API metadata license fields recorded (llama3.1, llama3.2, other/llama4, gemma, other/flux-1-dev-non-commercial-license, qwen-research, cc-by-4.0); llama.com license pages redirect to dev.meta.ai and answer 404 (3.1, 3.2) and 500 (4); Gemma Terms page still links Gemma 4 to /gemma/apache_2 ('Apache License 2.0'); Qwen2.5-VL-3B README/LICENSE (qwen-research) and 7B README (apache-2.0) confirmed; HF pricing page still says free users must purchase credits. Flag (pending review, verdict not changed) on 5 entries: the /resolve/main/ paths serve the Llama 3.1, 3.2 and 4 community license texts, the FLUX.1-dev Non-Commercial License and the GPQA card (license: cc-by-4.0) without login; the Gemma 2/3 repos ship no LICENSE file (resolve 404 'Entry not found') and the separate gemma-terms-of-use row already covers Gemma 2 and 3. The signup-credits entry names no source page, so it is marked 'Not re-fetched 2026-10-25 (v0.12.124)' and not counted as re-checked. Every verdict unchanged. Top-level source now says 51 of 52 entries are re-checked and the signup-credits entry still dates from 2026-10-03. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: The URLs quoted in the 8 refused entries' 'Re-checked 2026-10-25 (v0.12.124)' sentences (fetched twice 2026-10-25). Scores changed: no.

  54. 2026-10-25 · v0.12.125 · source_requoted · applied

    Before: The GlitchTip refused entry said 'the org README is a profile stub. glitchtip-backend LICENSE returned 404. Not indexed.' and carried a v0.12.121 'Flag: ... pending review' noting that glitchtip.com links gitlab.com/glitchtip and the GitLab backend LICENSE says 'MIT License' / 'Copyright (c) 2019 GlitchTip'.

    After: The GitHub 404 reason is withdrawn: the entry now says the GitHub paths returned 404 but the official GlitchTip repositories are on GitLab under the MIT License, and gains a dated 'Flag resolved 2026-10-25 (v0.12.125)' sentence quoting glitchtip.com (title, meta description, href 'https://gitlab.com/glitchtip'), the GitLab backend LICENSE ('MIT License' / 'Copyright (c) 2019 GlitchTip'), frontend LICENSE ('MIT License' / 'Copyright (c) 2020 GlitchTip'), backend README ('GlitchTip is an open source, Sentry API compatible error tracking platform.', 'With our MIT license, you can use it for anything you'd like and even sell it.') and meta README. GlitchTip stays not indexed with the reason replaced: a row would be a new index addition (kind, jtbdIds, whatYouGet), left for a separate reviewed addition; hosted glitchtip.com plans are not this entry. The v0.12.121 history in the entry is kept. Top-level source names the v0.12.125 resolution. No item added or changed (still 149). GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: The five URLs quoted in the GlitchTip refused entry's 'Flag resolved 2026-10-25 (v0.12.125)' sentence (fetched twice 2026-10-25). Scores changed: no.

  55. 2026-10-25 · v0.12.126 · source_requoted · applied

    Before: The Context7 refused entry said 'Hosted MCP that needs a key was not labeled free.' and carried a v0.12.121 'Flag: ... pending review' noting that the README now calls the key 'API Key Recommended' / 'for higher rate limits', not required.

    After: The 'needs a key' reason is withdrawn: the entry's lead now says the hosted MCP was not labeled free on the reading that it needs a key (replaced in v0.12.126), and it gains a dated 'Flag resolved 2026-10-25 (v0.12.126)' sentence quoting the README ('API Key Recommended', key 'for higher rate limits', Authorization Bearer header, private API backend), the LICENSE ('The MIT License (MIT)' / 'Copyright (c) 2021 Upstash, Inc.'), the plans page ('With a free account and an API key', '1,000 API calls each month for the MCP server'), the troubleshooting page and the all-clients page. The new reason: the key is recommended, not required, but the only stated free allowance is for a free account with an API key and no keyless limit is published. Context7 stays not indexed with the reason replaced: a row would be a new index addition (kind, jtbdIds, whatYouGet), left for a separate reviewed addition; the remote-filesystem MCP search hit was not re-checked. The v0.12.121 history in the entry is kept. Top-level source names the v0.12.126 resolution. No item added or changed (still 149). GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: The five URLs quoted in the Context7 refused entry's 'Flag resolved 2026-10-25 (v0.12.126)' sentence (fetched twice 2026-10-25). Scores changed: no.

  56. 2026-10-26 · v0.12.127 · source_requoted · applied

    Before: Five refused entries (Llama 4 weights, Llama 3.1 and Llama 3.2, Gemma 2 and Gemma 3, FLUX.1-dev, GPQA) carried a v0.12.124 'Flag: ... pending review': the /resolve/main/ paths serve the Llama 3.1, 3.2 and 4 community license texts, the FLUX.1-dev Non-Commercial License and the GPQA card (license: cc-by-4.0) without login, and the Gemma 2/3 repos ship no LICENSE file while the gemma-terms-of-use row already covers Gemma 2 and 3. Their reasons still said the license text was not fetched, LICENSE.md or the README returned 401, or LICENSE returned 401.

    After: Each of the 5 entries gains a dated 'Flag resolved 2026-10-26 (v0.12.127)' sentence; the v0.12.124 re-check and flag text is kept as history and each lead notes the change. Llama 4 and Llama 3.1/3.2: the 'license text was not fetched' reason is withdrawn (texts quoted, including the royalty-free limited license grant and the 700-million-monthly-active-users clause); still not indexed (model files gated, config.json HTTP 401; a row would be a new reviewed addition). FLUX.1-dev: the '401' reason is withdrawn and replaced by the license itself (non-commercial and non-production use only); still not indexed. GPQA: the 'README returned 401' reason is withdrawn; the card's CC BY 4.0 is not applied (the dataset's own license.txt is still gated, HTTP 401, and access requires accepting a no-reveal term); still not indexed. Gemma 2 and Gemma 3: superseded by the gemma-terms-of-use row (no LICENSE file; the cards link https://ai.google.dev/gemma/terms, whose Appendix lists Gemma 2 and Gemma 3); the entry is kept as history and no longer refuses them. Top-level source names the v0.12.127 resolutions. No item added or changed (still 149; gemma-terms-of-use unchanged), still 52 refused entries, 51 marked 'Re-checked 2026-10-25'. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: The URLs quoted in the 5 refused entries' 'Flag resolved 2026-10-26 (v0.12.127)' sentences (fetched twice 2026-10-26). Scores changed: no.

  57. 2026-10-26 · v0.12.128 · source_requoted · applied

    Before: The OpenRouter RPM/RPD refused entry said 'the official limits page rendered template placeholders, not numbers' and carried a v0.12.122 'Flag: ... pending review': an inline script on https://openrouter.ai/docs/api_reference/limits defines 'const FREE_MODEL_RATE_LIMIT_RPM=20;const FREE_MODEL_NO_CREDITS_RPD=50;const FREE_MODEL_HAS_CREDITS_RPD=1e3;const FREE_MODEL_CREDITS_THRESHOLD=10;' while the rendered cells stay empty; open question whether those page-source constants count as official numbers.

    After: Page-script constants alone are not treated as official and are not used as a source. The page's markdown view https://openrouter.ai/docs/api_reference/limits.md (official docs text) states the free usage table ('| Less than 10 | 20 | 50 |' / '| At least 10 | 20 | 1000 |' under '| Credits purchased (all time) | Requests per minute | Requests per day |'), which matches the limits the openrouter-free-variants row already stores (20 RPM; 50 / 1000 RPD by credits purchased; stored in v0.12.105 from the same markdown view). The entry's lead notes the 'placeholders, not numbers' reading was superseded, and it gains a dated 'Flag resolved 2026-10-26 (v0.12.128)' sentence; the v0.12.122 re-check and flag text is kept as history. Verdict: superseded by the openrouter-free-variants row's limits; the entry no longer refuses OpenRouter's free-model RPM/RPD and is kept as history. No new value stored: the openrouter-free-variants row (limits, asOf, notes) is unchanged; the one-credit grace placeholder is still not stored; third-party tables still not copied. Top-level source names the v0.12.128 resolution. No item added or changed (still 149), still 52 refused entries, 51 marked 'Re-checked 2026-10-25'. GET /api/actionable: 0 of 174 picks or terms values changed.

    Source: The URLs quoted in the OpenRouter RPM/RPD refused entry's 'Flag resolved 2026-10-26 (v0.12.128)' sentence (fetched twice 2026-10-26). Scores changed: no.

  58. 2026-10-26 · v0.12.133 · misleading_message · applied

    Before: The Context7 refused entry (lead 'Context7 and the remote-filesystem MCP search hit were not indexed.') said twice that 'the remote-filesystem MCP search hit was not re-checked' (v0.12.121 and v0.12.126 sentences), which reads as if a stored source could be re-checked. No URL, product name or source page was ever recorded for that search hit.

    After: The entry gains a dated 'Wording fix 2026-10-26 (v0.12.133)' sentence before its verdict: the search hit was added in 0.3.0 (commit 81eb2cd) with no URL, product name or source page, nothing in Depot's research, data or commits records one, so it cannot be re-checked as stored; it is kept only as history, makes no claim about any product or license, and needs a named official source before it could be re-checked or indexed; no URL is inferred. The older sentences are kept as history; the verdict, the Context7 reasoning and every quote are unchanged. Top-level source names the v0.12.133 wording fix. No item added or changed (still 150), still 52 refused entries, 51 marked 'Re-checked 2026-10-25'. GET /api/actionable: 0 of 174 picks or terms values changed (byte-identical sweep).

    Source: git history of data/free-resources.json (commits 81eb2cd, 1c110ca); research/ and data/ grep 2026-10-26. Scores changed: no.

  59. 2026-10-27 · v0.12.138 · wrong_unit · applied

    Before: 18 Hugging Face Inference Endpoints multi-GPU rows (SKUs ending x2, x4 or x8, e.g. gcp nvidia-h100 x8 $80) were labelled usd_per_gpu_hour, so an agent reading the unit saw $80 per GPU-hour for a rate that covers 8 GPUs (about 8x overstated per GPU). All 30 huggingface-inference rows carried asOf 2026-10-03. The v0.12.24 unit-label gate did not catch them: their SKUs name an instance size (xN), not a resource count, and the x4/x8 rates are not exact multiples of the x1 rate.

    After: The 18 multi-GPU rows are relabelled usd_per_instance_hour (normalizationReason unit_mismatch_per_instance_hour; qualifier names the instance size and says never divided). Amounts, SKUs, ids and sourceUrl unchanged; no row divided per GPU. The 10 single-GPU x1 rows stay usd_per_gpu_hour (one GPU: the instance hour is the GPU hour) and the 2 accelerator rows stay usd_per_hour. All 30 rows re-dated 2026-10-27 with a reconfirmed entry each in data/price-reviews.json and recorded via history --catalog. New gate multiGpuInstanceUnderPerGpuLabel (scripts/lib/unit-label.mjs) in validate-data and check:data: any usd_per_gpu_second|minute|hour row whose SKU names more than one GPU (xN suffix or Nx prefix) fails. huggingface-inference pricingNotes (data, seed, providers.ts) now say x1 rows are per GPU-hour and multi-GPU rows per instance-hour.

    Source: https://huggingface.co/docs/inference-endpoints/pricing (fetched twice 2026-10-27); data/price-reviews.json. Scores changed: no.

  60. 2026-10-27 · v0.12.141 · price_changed_on_source · applied

    Before: Stored: Kimi K2.6 input $0.45 and output $1.95 per 1M tokens (asOf 2026-10-19); GLM-5.1 input $0.98 and output $3.08 per 1M tokens (asOf 2026-10-03). The chutes pricingNotes quoted Kimi K2.6 $0.45/$1.95 as matching the page on 2026-10-21, and still listed Mistral-Nemo and Qwen3-32B and the Plus $10/Pro $20 plans as current. 16 other token rows and the deployment-fee row were asOf 2026-10-03 or 2026-10-19.

    After: Kimi K2.6 input $0.39, output $1.80; GLM-5.1 input $0.90, output $2.90 per 1M tokens (asOf 2026-10-27, unit unchanged, input and output still separate rows, normalizedUsdPerMillionTokens = amount). 16 matching token rows (gemma-4-31B-turbo, Qwen3.8-27B, Qwen3.6-27B, DeepSeek-V4-Flash-0731, Qwen 3.5, DeepSeek-V3.2, GLM-5.2, Kimi-K3) and the $5.40 deployment-fee row re-dated to 2026-10-27 with reconfirmed reviews. 8 token rows for models no longer on the page (Mistral-Nemo-Instruct-2407, Nemotron-3-Nano-Omni-30B, Qwen3-32B, Qwen3-235B-A22B-Thinking-2507) and the Plus/Pro plan rows (page FAQ: 'Monthly plans are no longer sold on chutes.ai') keep their amounts and asOf 2026-10-03, with a qualifier note; not marked unverified in this change (that would change price-sort eligibility). chutes pricingNotes (data, seed, providers.ts) rewritten to the 2026-10-27 page. All qualifiers note the page says rates are 'pulled live from our pricing API'.

    Source: https://chutes.ai/pricing (fetched twice 2026-10-27); data/price-reviews.json. Scores changed: no.

  61. 2026-10-27 · v0.12.142 · source_requoted · applied

    Before: Ten Chutes catalog rows kept at their 2026-10-03 amounts with a v0.12.141 qualifier note but no sourceStatus: Mistral-Nemo-Instruct-2407 $0.0245/$0.0978, Nemotron-3-Nano-Omni-30B $0.0245/$0.0978, Qwen3-32B $0.104/$0.416, Qwen3-235B-A22B-Thinking-2507 $0.2989/$1.1957 per 1M tokens (the four input rows were priceSortEligible true; Mistral-Nemo and Nemotron input $0.0245 were Chutes' cheapest sourced input SKU in /api/actionable and /api/quote) and the Plus $10 / Pro $20 usd_per_month plan rows.

    After: All ten rows marked sourceStatus: unverified, sourceStatusCheckedOn: 2026-10-27, priceSortEligible: false (8 token rows reason model_not_on_source_page, 2 plan rows reason plan_no_longer_sold), with matching 2026-10-27 static_fetch unverified reviews in data/price-reviews.json; amounts, units and asOf 2026-10-03 kept for history, never ranked. chutes pricingNotes (data, seed, providers.ts) now say these rows are marked unverified. Chutes keeps ranked token rows on the page (cheapest sourced input Qwen3.8-27B $0.039/1M). No score or pick changed.

    Source: https://chutes.ai/pricing (fetched twice 2026-10-27); data/price-reviews.json. Scores changed: no.

  62. 2026-10-27 · v0.12.143 · source_requoted · applied

    Before: Daytona's GPU prices were stored only as the 8 preemptible usd_per_gpu_hour rows; the page's 'On-demand ($/hour)' table was quoted in their qualifiers as 'not stored as a row (reviewed addition pending)' since v0.12.140.

    After: 8 new rows daytona-*-on-demand (usd_per_gpu_hour, asOf 2026-10-27, unit_mismatch, priceSortEligible false, same as the preemptible rows): B300 6.25, B200 6.25, MI355X 5.99, H200 4.54, H100 3.95, RTX PRO 6000 3.03, RTX 5090 1.29, RTX 4090 0.99. Preemptible rows unchanged except their qualifier now names the on-demand row. No score or pick changed.

    Source: https://www.daytona.io/pricing (fetched twice 2026-10-27); data/price-reviews.json. Scores changed: no.

  63. 2026-10-27 · v0.12.144 · price_changed_on_source · applied

    Before: Stored (asOf 2026-10-23, usd_per_gpu_hour, on-demand 1x GPU instance, USD view): B200 $8.355, H200 $5.888, H100 SXM5 $4.515, A100 SXM4 80GB $2.128, L40S $1.809. The pricing watch run 2026-10-27.7 listed all 5 as pending re-price (JSON-LD offers observed higher). verda pricingNotes still quoted 2026-09-14 figures (H100 $3.25, H200 $4.20, B200 $6.23, A100 80GB $1.74, L40S $1.40).

    After: B200 $8.608, H200 $6.066, H100 SXM5 $4.652, A100 SXM4 80GB $2.182, L40S $1.845 per GPU-hour (asOf 2026-10-27; unit, unit_mismatch status and priceSortEligible false unchanged; spot, serverless and multi-GPU prices not stored). 5 updated price-reviews; history --catalog recorded the amount_changed events and the rows left pending-reprice. verda pricingNotes (data, seed, providers.ts) rewritten to the 2026-10-27 page. No score or pick changed.

    Source: https://verda.com/pricing (fetched twice 2026-10-27); data/price-reviews.json; data/history/pending-reprice.json run 2026-10-27.7. Scores changed: no.