Ethan
1497ba14fe
refactor: type computer use provider as an enum ( #27086 )
...
The deployment-wide computer use provider was passed around as a bare `string` on the `codersdk` wire structs, in `chattool`, and in the generated TypeScript, and its valid values (`anthropic`, `openai`) were never exposed as a `codersdk` enum. That's out of step with our other chat settings (`ChatDebugRunKind`, `ChatUsageLimitPeriod`), which already define enums with `Valid()` and an `All<Name>s` slice, and it left the allowed values duplicated as literals with no typed contract for clients.
This adds `codersdk.ChatComputerUseProvider` as the single source of truth and routes the API boundary, `chattool`, `chatd`, and the generated TypeScript through it. The DB layer and chattool's internal model-provider routing stay `string` on purpose, since they handle untrusted or fantasy-model values that just happen to share the names.
2026-07-13 18:37:48 +10:00
..
2026-07-06 11:57:12 +01:00
2026-03-23 17:34:43 +00:00
2026-07-06 11:57:12 +01:00
2026-07-06 11:57:12 +01:00
2026-07-07 12:22:59 +02:00
2026-07-09 23:35:12 +01:00
2026-07-08 21:37:30 +02:00
2026-07-09 23:35:12 +01:00
2026-06-16 12:35:40 +00:00
2026-06-16 12:35:40 +00:00
2026-07-09 23:35:12 +01:00
2026-07-06 11:57:12 +01:00
2026-07-13 18:37:48 +10:00
2026-07-02 11:22:56 +01:00
2026-03-30 11:43:59 +00:00
2026-06-19 19:59:54 +01:00
2026-06-18 22:45:01 +02:00
2026-06-12 13:33:12 +02:00
2026-06-12 13:33:12 +02:00
2026-07-09 23:35:12 +01:00
2026-07-13 16:50:19 +10:00
2026-05-22 20:24:38 +10:00
2026-05-18 12:30:30 -04:00
2026-07-06 11:57:12 +01:00
2026-07-06 16:37:45 +00:00
2026-07-06 16:37:45 +00:00
2026-07-01 20:15:03 +01:00
2026-07-06 11:57:12 +01:00
2026-07-13 18:37:48 +10:00
2026-07-06 11:57:12 +01:00
2026-07-13 18:37:48 +10:00
2026-07-13 16:50:19 +10:00
2026-05-08 02:07:33 +10:00
2026-07-09 23:35:12 +01:00
2026-07-13 18:37:48 +10:00
2026-07-07 00:20:54 +10:00
2026-05-22 09:50:01 +02:00
2026-06-22 19:26:34 -06:00
2026-06-22 19:26:34 -06:00
2026-06-30 12:17:42 +01:00
2026-06-22 19:26:34 -06:00
2026-07-06 11:57:12 +01:00
2026-06-17 00:10:07 -07:00
2026-06-11 16:08:32 +10:00
2026-06-11 16:08:32 +10:00
2026-05-20 01:37:38 +02:00
2026-04-08 11:54:44 -04:00
2026-04-08 11:54:44 -04:00
2026-07-06 16:37:45 +00:00
2026-07-09 23:35:12 +01:00
2026-07-09 23:35:12 +01:00
2026-06-17 10:20:47 +00:00
2026-07-06 16:37:45 +00:00
2026-07-06 16:37:45 +00:00
2026-06-26 13:41:43 +03:00
2026-06-22 19:26:34 -06:00
2026-07-06 11:57:12 +01:00
2026-07-01 15:59:55 +03:00
2026-06-16 12:35:40 +00:00
2026-07-06 11:57:12 +01:00
2026-07-06 11:57:12 +01:00
2026-07-02 11:22:56 +01:00
2026-07-13 18:37:48 +10:00
2026-07-02 11:22:56 +01:00
2026-06-12 13:33:12 +02:00
2026-07-09 23:35:12 +01:00
2026-07-09 23:35:12 +01:00
2026-06-26 13:41:43 +03:00
2026-06-29 11:49:10 +01:00
2026-06-29 11:49:10 +01:00
2026-07-13 16:50:19 +10:00
2026-07-13 16:50:19 +10:00
2026-06-26 13:41:43 +03:00
2026-04-22 20:11:53 +10:00
2026-06-12 13:33:12 +02:00
2026-06-17 10:20:47 +00:00
2026-07-06 12:45:16 +02:00
2026-03-25 14:09:24 +00:00
2026-03-25 14:09:24 +00:00
2026-06-25 00:51:13 +10:00
2026-04-22 20:11:53 +10:00
2026-06-12 13:33:12 +02:00
2026-06-12 13:33:12 +02:00
2026-06-12 13:33:12 +02:00
2026-06-16 12:35:40 +00:00
2026-06-18 08:28:17 +00:00
2026-06-12 13:33:12 +02:00
2026-06-12 13:33:12 +02:00
2026-06-12 13:33:12 +02:00
2026-06-12 13:33:12 +02:00
2026-06-12 13:33:12 +02:00
2026-06-12 13:33:12 +02:00
2026-07-13 18:37:48 +10:00
2026-06-30 21:57:40 +01:00
2026-07-13 18:37:48 +10:00
2026-06-12 13:33:12 +02:00
2026-07-09 23:35:12 +01:00
2026-07-06 16:37:45 +00:00
2026-07-06 16:37:45 +00:00
2026-06-17 18:29:43 +02:00
2026-07-13 16:50:19 +10:00
2026-07-09 23:35:12 +01:00
2026-07-01 15:59:55 +03:00
2026-05-22 20:24:38 +10:00
2026-04-14 16:56:17 +01:00
2026-07-06 16:37:45 +00:00
2026-07-06 16:37:45 +00:00