@warmdrift/kgauto-check 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -48,7 +48,7 @@ npx -y @warmdrift/kgauto-check --extract-contract # extraction instructions +
48
48
  npx -y @warmdrift/kgauto-check --extract extract.json # prints the findings card, fully offline
49
49
 
50
50
  # Standing-value one-shots (also offline):
51
- npx -y @warmdrift/kgauto-check --model-facts claude-sonnet-5 # one model → status, verified prices, limits, cliffs
51
+ npx -y @warmdrift/kgauto-check --model-facts claude-sonnet-5 # one model → the provider's word, verified prices, limits, cliffs
52
52
  npx -y @warmdrift/kgauto-check --observe-plan # rung 2: the one-day observe run
53
53
  ```
54
54
 
@@ -65,12 +65,51 @@ npx -y @warmdrift/kgauto-check --observe-plan # rung 2: the one
65
65
  | `get_model_facts` | One model id → status, verified prices, limits, capabilities, known cliffs. Honest miss on unknown models. |
66
66
  | `get_observe_day_plan` | Rung 2: what a one-day observe-only run on real traffic would measure, and the two honesty requirements any setup must carry. |
67
67
 
68
+ ## An example card
69
+
70
+ This is the output of `kgauto-check 0.4.0` on a small illustrative extract (two call sites, one on the provider's own API and one on Vertex AI, and a model picker), printed by the real build — not a mock-up:
71
+
72
+ ````markdown
73
+ # Communicating Vessels — the check: example-app
74
+
75
+ 2 AI call site(s), 3 model id(s): `anthropic/claude-sonnet-4-20250514` (looked up as `claude-sonnet-4-20250514`), `gemini-2.5-flash`, `gpt-4o-mini` (3 flagged by its provider)
76
+
77
+ ## Certain — read from the providers’ pages and your code
78
+
79
+ - 🔴 **On Anthropic's own API, `anthropic/claude-sonnet-4-20250514` (looked up as `claude-sonnet-4-20250514`) was retired on 2026-06-15; its page names `claude-sonnet-5-5`** — Anthropic's deprecations page (https://platform.claude.com/docs/en/about-claude/model-deprecations.md): “The model is no longer available for use. Requests to retired models fail.” The catalog has no entry for it, so its limits and price were not checked.
80
+ <sub>app/api/chat/route.ts:41 · basis: Anthropic's page, read 2026-11-12: https://platform.claude.com/docs/en/about-claude/model-deprecations.md</sub>
81
+ - 🟡 **On OpenAI's own API, `gpt-4o-mini` is deprecated and shuts down on 2027-01-14; its page names `gpt-6-luna`** — The page's line: “| January 14, 2027 | GPT-4o mini (`gpt-4o-mini-2024-07-18`) | `gpt-6-luna` |”. The catalog has no entry for it, so its limits and price were not checked.
82
+ <sub>components/ModelPicker.tsx:12 · basis: OpenAI's page, read 2026-11-12: https://developers.openai.com/api/docs/deprecations.md (and https://developers.openai.com/api/docs/models/gpt-4o-mini.md)</sub>
83
+
84
+ ## Likely — priced from your estimates, or a catalog value no provider page is cited for
85
+
86
+ - 🟡 **On Google's own API, `gemini-2.5-flash` is deprecated; from 2026-12-01 its requests route to `gemini-3.5-flash-lite`** — The page's line: “`gemini-2.5-flash` | June 17, 2025 | December 1, 2026 | `gemini-3.5-flash-lite` (`gemini-2.5-flash` is no longer available in Google AI Studio; effective December 1, 2026, API requests to `gemini-2.5-flash` will automatically route to `gemi”. This site runs on Vertex AI, and Vertex AI runs its own schedule (its page: https://cloud.google.com/vertex-ai/generative-ai/docs/learn/model-versions).
87
+ <sub>lib/summarize.ts:18 · basis: Google's page, read 2026-11-12: https://aistudio.google.com/docs/deprecations; Vertex AI: https://cloud.google.com/vertex-ai/generative-ai/docs/learn/model-versions</sub>
88
+ - ℹ️ **~$0.0046/call on `gemini-2.5-flash`** — From your token estimates and doc-verified prices ($0.3/M in, $2.5/M out, verified 2026-08-14).
89
+ <sub>lib/summarize.ts:18 · basis: arithmetic on your estimates × verified catalog prices</sub>
90
+ - 🟡 **97% of this site's tokens are input** — Above ~85% input share, spend is dominated by context rather than answers — the single strongest signal of a leaking prompt. What's actually IN that context, and how much of it each call needed, is measurable, not guessable.
91
+ <sub>lib/summarize.ts:18 · basis: your token estimates; the >85% threshold is a measured portfolio heuristic</sub>
92
+
93
+ ## Only measurable — what the observe day answers
94
+
95
+ - ℹ️ **1 model(s) in the catalog price under half of `gemini-2.5-flash` on summarize work** — Cheapest: `claude-haiku-5-5` at ~$0.0014/call. The price is arithmetic; whether any of them holds YOUR quality bar on summarize work is exactly what a one-day observe run with a judged eval measures. The check never ranks a model on price alone.
96
+ <sub>lib/summarize.ts:18 · basis: verified catalog prices; quality deliberately unclaimed</sub>
97
+ - ℹ️ **what a code read cannot tell you (and a one-day observe run can)** — Your actual failure rate per model (walkaway failures look like green health checks); your actual input-waste ratio per call; which call sites dominate spend; whether a cheaper model holds quality on your real traffic. These need one day of observed calls — observe-only, your keys, no routing changes.
98
+ <sub>app/api/chat/route.ts:41, lib/summarize.ts:18, components/ModelPicker.tsx:12 · basis: the honest limit of static analysis</sub>
99
+
100
+ ---
101
+ *This check ran on your machine, against the catalog bundled with it and the providers’ deprecation pages it was built with. Nothing was uploaded; no rows were written anywhere.*
102
+ <sub>@warmdrift/kgauto-check 0.4.0 · catalog @warmdrift/kgauto-compiler 2.0.0-alpha.132 · deprecation pages read 2026-11-12</sub>
103
+ ````
104
+
68
105
  ## The confidence tiers (why the card is grouped)
69
106
 
70
- - **certain** — a catalog or code fact. Stated flatly.
71
- - **likely** — priced from your token estimates against verified prices.
107
+ - **certain** — the provider's own page (with its URL and the day it was read), or a fact from your code. Stated flatly.
108
+ - **likely** — priced from your token estimates against verified prices, or a catalog value no provider page is cited for.
72
109
  - **measurable-only** — honestly unknowable from a code read: actual failure rates, actual input-waste, spend distribution, quality-at-cheaper-price. Each of these is exactly what the one-day observe run answers.
73
110
 
111
+ **The provider's word first (0.4.0).** A model id is matched as you wrote it (`openai/gpt-5`, `openrouter/anthropic/…`, a dated snapshot, a Bedrock or Vertex form) and looked up in a lifecycle ledger read from the four providers' own deprecation pages (Anthropic, OpenAI, Google, DeepSeek) before the catalog. A retired, shut-down, deprecated or legacy id says so, with the date, the replacement the page names, and the page's URL.
112
+
74
113
  kgauto refuses to fabricate verdicts: unknown models get an honest "no measured evidence", and cheaper candidates are named with their price arithmetic only — never with an unmeasured quality claim.
75
114
 
76
115
  ## Client setup variants
package/dist/bin.js CHANGED
@@ -7,7 +7,7 @@ import {
7
7
  renderModelFacts,
8
8
  runCheck,
9
9
  startStdio
10
- } from "./chunk-BWPYT7JO.js";
10
+ } from "./chunk-XWIGHIJP.js";
11
11
 
12
12
  // src/bin.ts
13
13
  import { readFileSync } from "fs";