fix(opencode): expose model-specific reasoning effort options (#1716)

* fix(cli): discover opencode thought_level via set_config_option on model switch

* fix(cli): apply and refresh opencode model switches so thought_level stays discoverable

* fix(web): track opencode effort options across model switches

* feat(cli,hub,web): dynamic opencode effort options in new-session form

* test(cli): avoid platform-specific process event narrowing

* fix(opencode): address variant discovery review findings

* fix(opencode): synchronize effort options with model targets

* fix(opencode): roll back rejected model targets

* fix(cli): guard opencode variant probe workspace paths

* fix(web): clear stale opencode effort on model switch

* fix(cli): clear stale opencode effort metadata

* fix(web): reset stale effort options on model switch

* fix(web): reset opencode effort poll budget

* test(web): enforce opencode effort poll budget
This commit is contained in:
Junmo Kim
2026-09-09 09:31:30 +08:00
committed by GitHub
parent 905d89e03a
commit 7031d60eb4
33 changed files with 1729 additions and 55 deletions
+11
View File
@@ -782,6 +782,13 @@ export type OpencodeModelsResponse = {
export type ListOpencodeModelsResponse = OpencodeModelsResponse
/** Variant values keyed by `providerId/modelId` from the OpenCode server catalog. */
export type OpencodeModelVariantsResponse = {
success: boolean
variants?: Record<string, string[]>
error?: string
}
export type GrokModelSummary = {
modelId: string
name?: string
@@ -833,6 +840,10 @@ export type OpencodeReasoningEffortResponse = {
success: boolean
options?: OpencodeReasoningEffortOption[]
currentValue?: string | null
/** Backend-side model the options belong to — lets clients detect a pending model switch. */
currentModelId?: string | null
/** Concrete backend model requested by the session, including a resolved Default selection. */
targetModelId?: string | null
error?: string
}