Austin Pickett
86df3224e2
fix(pricing): wire kilocode into the pricing dispatcher
...
Kilo Gateway models showed no prices and no Free badge because
_PRICING_FETCHERS had no kilocode branch, so get_pricing_for_provider
returned {} and _apply_pricing skipped the provider row entirely.
Add _fetch_kilocode_pricing, which reads the public OpenRouter-shaped
catalog at {kilocode profile base_url}/models (KILOCODE_BASE_URL
overrides it — the same endpoint the doctor probe uses, no second
hardcode). The Kilo catalog's explicit isFree flag is authoritative
over the rates (a free router can carry non-zero underlying pricing),
and its -1 rate sentinel (auto-router models, 'rate varies') is
skipped rather than shown as a fabricated price.
Fixes #68838
2026-10-06 17:22:46 -04:00
..
2026-10-06 11:17:11 -04:00
2026-10-06 16:08:23 -04:00
2026-10-07 01:01:14 +05:30
2026-10-06 14:23:00 -04:00
2026-10-06 17:22:18 -04:00
2026-10-06 16:08:23 -04:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:21:57 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 03:44:49 -07:00
2026-10-06 12:31:21 -07:00
2026-10-06 23:14:10 +05:30
2026-10-06 23:14:10 +05:30
2026-10-06 23:14:10 +05:30
2026-10-06 14:22:13 -07:00
2026-10-06 14:22:13 -07:00
2026-10-06 15:15:06 -04:00
2026-10-06 15:15:06 -04:00
2026-10-06 14:22:13 -07:00
2026-10-06 14:22:13 -07:00
2026-10-06 14:22:13 -07:00
2026-10-06 12:50:31 -07:00
2026-10-06 14:22:13 -07:00
2026-10-06 14:22:13 -07:00
2026-10-06 14:57:23 -05:00
2026-10-06 14:22:13 -07:00
2026-10-06 06:22:28 -07:00
2026-10-06 05:50:08 -07:00
2026-10-06 15:00:21 -05:00
2026-10-06 14:23:00 -04:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 12:28:00 -04:00
2026-10-06 15:15:06 -04:00
2026-10-06 04:36:02 -07:00
2026-10-06 14:23:00 -04:00
2026-10-06 05:44:21 -07:00
2026-10-06 06:22:27 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 12:31:21 -07:00
2026-10-06 11:10:43 -07:00
2026-10-06 11:10:43 -07:00
2026-10-06 14:57:23 -05:00
2026-10-06 08:13:51 -04:00
2026-10-06 17:22:46 -04:00
2026-10-06 23:14:10 +05:30
2026-10-06 15:15:06 -04:00
2026-10-07 01:01:14 +05:30
2026-10-06 14:23:00 -04:00
2026-10-06 11:10:43 -07:00
2026-10-06 11:10:43 -07:00
2026-10-06 17:22:18 -04:00
2026-10-06 17:22:18 -04:00
2026-10-06 17:22:18 -04:00
2026-10-06 17:22:18 -04:00
2026-10-06 11:10:43 -07:00
2026-10-06 14:22:13 -07:00
2026-10-06 12:46:06 -04:00
2026-10-06 08:13:51 -04:00
2026-10-06 11:10:43 -07:00
2026-10-06 11:10:43 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 12:08:49 -07:00
2026-10-06 12:08:49 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 03:44:49 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 06:21:10 -07:00
2026-10-06 03:44:49 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:22:27 -07:00
2026-10-06 03:44:49 -07:00
2026-10-06 06:27:57 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:27:57 -07:00
2026-10-06 06:20:29 -07:00
2026-10-06 06:22:28 -07:00
2026-10-06 04:36:02 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:22:29 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 06:18:39 -07:00
2026-10-06 03:44:49 -07:00
2026-10-06 14:23:00 -04:00
2026-10-06 04:36:02 -07:00
2026-10-06 12:50:31 -07:00
2026-10-06 11:15:27 -04:00
2026-10-06 12:59:08 -05:00
2026-10-06 12:27:22 -04:00
2026-10-06 12:50:31 -07:00
2026-10-06 12:27:22 -04:00
2026-10-06 11:15:27 -04:00
2026-10-06 12:30:01 -04:00
2026-10-06 17:22:39 -04:00
2026-10-06 14:23:00 -04:00
2026-10-06 04:36:02 -07:00
2026-10-06 14:23:00 -04:00