diff options
| author | Aiden Cline <[email protected]> | 2026-04-17 16:27:32 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-04-17 16:27:32 -0500 |
| commit | 0068ccec35493e2657678a4ab0654a278bd14685 (patch) | |
| tree | dce1fcd0d9c14470f6dfa1eb97adad6a22f56091 | |
| parent | 89e8994fd15c4ac1235930a07e0b6e37254df22b (diff) | |
| download | opencode-0068ccec35493e2657678a4ab0654a278bd14685.tar.gz opencode-0068ccec35493e2657678a4ab0654a278bd14685.zip | |
fix: ensure copilot model list filters out disabled models (#23176)
| -rw-r--r-- | packages/opencode/src/plugin/github-copilot/copilot.ts | 1 | ||||
| -rw-r--r-- | packages/opencode/src/plugin/github-copilot/models.ts | 9 |
2 files changed, 8 insertions, 2 deletions
diff --git a/packages/opencode/src/plugin/github-copilot/copilot.ts b/packages/opencode/src/plugin/github-copilot/copilot.ts index c9b7e3c1c..c018f72bd 100644 --- a/packages/opencode/src/plugin/github-copilot/copilot.ts +++ b/packages/opencode/src/plugin/github-copilot/copilot.ts @@ -1,6 +1,5 @@ import type { Hooks, PluginInput } from "@opencode-ai/plugin" import type { Model } from "@opencode-ai/sdk/v2" -import { Installation } from "@/installation" import { InstallationVersion } from "@/installation/version" import { iife } from "@/util/iife" import { Log } from "../../util" diff --git a/packages/opencode/src/plugin/github-copilot/models.ts b/packages/opencode/src/plugin/github-copilot/models.ts index 71d21afbe..0aac0d3f5 100644 --- a/packages/opencode/src/plugin/github-copilot/models.ts +++ b/packages/opencode/src/plugin/github-copilot/models.ts @@ -10,6 +10,11 @@ export const schema = z.object({ // every version looks like: `{model.id}-YYYY-MM-DD` version: z.string(), supported_endpoints: z.array(z.string()).optional(), + policy: z + .object({ + state: z.string().optional(), + }) + .optional(), capabilities: z.object({ family: z.string(), limits: z.object({ @@ -122,7 +127,9 @@ export async function get( }) const result = { ...existing } - const remote = new Map(data.data.filter((m) => m.model_picker_enabled).map((m) => [m.id, m] as const)) + const remote = new Map( + data.data.filter((m) => m.model_picker_enabled && m.policy?.state !== "disabled").map((m) => [m.id, m] as const), + ) // prune existing models whose api.id isn't in the endpoint response for (const [key, model] of Object.entries(result)) { |
