Nick Nyanjui
122f23eebc
fix(cline,airforce): unwrap {success,data} envelope, add live catalog, and refresh airforce free models
...
Cline (api.cline.bot) wraps non-stream chat completions in
{"success":true,"data":{...choices...}}, which both the dashboard model-test
ping and the proxy non-stream path read at top level, producing "Provider
returned no completion choices for this model" (#3644 ). Unwrap the envelope
before usage extraction and response translation; the error envelope
({"success":false,...}) never matches and passes through untouched.
Scoped through `transport.quirks.clineEnvelope` so only cline/clinepass opt
in — no other provider's response body is ever rewritten.
Also adds a live Cline catalog: `fetchClineRawModels()` is shared between
`resolveClineModels()` (full catalog, including free-tier ids such as
z-ai/glm-5.3-flash) and `resolveClinepassModels()` (cline-pass/* only), wired
into /v1/models, the per-provider models route, and the combo selector's
model picker with the static catalog kept as fallback.
Refreshes the dead api-airforce free models (anthropic/claude-3.7-sonnet,
moonshot/kimi-k2.6, google/gemini-2.5-flash) with the live gpt-oss-120b,
gpt-oss-20b and kimi-k2.7-code, plus passthroughModels, forceStream and a
suggested-models filter.
2026-09-10 22:48:28 +07:00
..
2026-07-19 16:29:55 +07:00
2026-06-29 15:29:49 +07:00
2026-07-19 16:29:55 +07:00
2026-08-14 16:32:54 +07:00
2026-07-16 16:15:24 +07:00
2026-09-09 09:57:13 +07:00
2026-09-10 22:48:28 +07:00
2026-06-14 18:49:38 +07:00
2026-06-15 11:38:43 +07:00
2026-06-14 18:49:38 +07:00
2026-07-29 18:10:09 +07:00
2026-07-29 18:10:09 +07:00
2026-06-14 18:49:38 +07:00
2026-06-26 12:03:58 +07:00
2026-07-29 18:10:09 +07:00
2026-06-15 11:38:43 +07:00
2026-06-15 11:38:43 +07:00
2026-06-15 11:38:43 +07:00
2026-06-14 18:49:38 +07:00
2026-06-14 18:49:38 +07:00
2026-09-02 20:42:53 +07:00
2026-09-10 22:48:28 +07:00
2026-09-10 22:48:28 +07:00
2026-08-05 13:13:54 +07:00
2026-09-10 21:57:49 +07:00
2026-08-05 10:52:03 +07:00
2026-09-10 22:06:48 +07:00
2026-06-14 18:49:38 +07:00
2026-06-14 18:49:38 +07:00
2026-06-14 18:49:38 +07:00
2026-06-15 11:38:43 +07:00
2026-07-20 15:39:55 +07:00
2026-06-14 18:49:38 +07:00
2026-09-10 22:26:44 +07:00
2026-07-30 09:43:55 +07:00
2026-06-15 11:38:43 +07:00
2026-06-15 11:38:43 +07:00
2026-06-15 11:38:43 +07:00
2026-06-14 18:49:38 +07:00
2026-07-10 11:29:48 +07:00
2026-06-15 11:38:43 +07:00
2026-06-14 18:49:38 +07:00
2026-08-14 16:21:11 +07:00
2026-06-16 23:32:28 +07:00
2026-09-03 09:13:45 +07:00
2026-07-15 17:34:08 +07:00
2026-06-15 11:38:43 +07:00
2026-09-05 21:03:02 +07:00
2026-09-05 21:03:02 +07:00
2026-06-15 11:38:43 +07:00
2026-06-15 11:38:43 +07:00
2026-07-16 15:33:19 +07:00
2026-06-14 18:49:38 +07:00
2026-09-02 20:04:35 +07:00
2026-06-14 18:49:38 +07:00
2026-06-14 18:49:38 +07:00
2026-06-15 18:18:04 +07:00
2026-09-10 18:53:50 +07:00
2026-06-15 11:38:43 +07:00
2026-06-15 11:38:43 +07:00
2026-06-15 11:38:43 +07:00
2026-07-29 18:10:09 +07:00
2026-06-29 15:12:18 +07:00
2026-08-13 17:53:44 +07:00
2026-07-29 18:09:35 +07:00
2026-07-29 19:34:14 +07:00
2026-06-15 11:38:43 +07:00
2026-07-29 18:10:09 +07:00
2026-06-15 11:38:43 +07:00
2026-07-29 18:10:09 +07:00
2026-06-20 10:09:50 +07:00
2026-06-20 10:09:50 +07:00
2026-06-14 18:49:38 +07:00
2026-06-15 11:38:43 +07:00
2026-07-29 18:10:09 +07:00
2026-06-15 11:38:43 +07:00
2026-06-14 18:49:38 +07:00
2026-07-29 20:21:27 +07:00
2026-06-14 18:49:38 +07:00
2026-08-28 16:04:45 +07:00
2026-09-03 10:13:15 +07:00
2026-09-10 22:06:48 +07:00
2026-09-10 21:08:32 +07:00
2026-09-03 09:24:18 +07:00
2026-09-10 22:05:22 +07:00
2026-07-10 11:57:15 +07:00
2026-06-14 18:49:38 +07:00
2026-06-14 18:49:38 +07:00
2026-06-15 11:38:43 +07:00
2026-07-30 09:43:55 +07:00
2026-09-03 23:02:52 +07:00
2026-09-10 18:53:50 +07:00
2026-06-14 18:49:38 +07:00
2026-06-14 18:49:38 +07:00
2026-07-29 18:10:09 +07:00
2026-06-14 18:49:38 +07:00
2026-06-15 11:38:43 +07:00
2026-07-10 11:29:06 +07:00
2026-08-05 13:38:13 +07:00
2026-08-05 13:38:13 +07:00
2026-08-05 13:38:13 +07:00
2026-06-15 11:38:43 +07:00
2026-06-15 18:18:04 +07:00
2026-06-14 18:49:38 +07:00
2026-06-15 11:38:43 +07:00
2026-07-29 18:10:09 +07:00
2026-06-14 18:49:38 +07:00
2026-09-03 09:59:30 +07:00
2026-06-15 11:38:43 +07:00
2026-06-15 11:38:43 +07:00
2026-07-25 17:25:19 +07:00
2026-06-26 11:37:44 +07:00
2026-06-15 18:18:04 +07:00
2026-06-14 18:49:38 +07:00
2026-09-10 22:05:22 +07:00
2026-06-14 18:49:38 +07:00
2026-06-14 18:49:38 +07:00
2026-07-25 17:25:19 +07:00
2026-08-27 17:52:01 +07:00
2026-08-05 11:46:23 +07:00
2026-07-03 11:03:18 +07:00
2026-08-27 16:10:00 +07:00
2026-06-15 11:38:43 +07:00
2026-07-29 21:05:23 +07:00