feat: layer runtime and model selection across conversation, project and global
- Store runtime selection as { provider?, model? } layers and resolve them per
field (conversation -> project -> global); drop the legacy auto provider.
- Migrate stored selections (database v49) and clear deleted profile ids.
- Re-resolve selections in Main per request and at queue dispatch.
- Add ProjectRuntimeSelector and a two-column RuntimeModelPicker; manage
link opens model connections; restore per-runtime default model tabs.
- Stop duplicating trusted instructions and history across OpenCode,
Continue and DeepSeek Harness runtimes.
- Document the layered design, global provider removal plan and planned
purpose-specific models.
This commit is contained in:
@@ -4,7 +4,7 @@ import {
|
||||
REMOTE_WORKSPACE_LIMITS,
|
||||
remoteAbsolutePathSchema
|
||||
} from './remote-agent-contracts'
|
||||
import { agentRuntimeSelectionSchema } from './runtime-selection-contracts'
|
||||
import { runtimeSelectionLayerSchema } from './runtime-selection-contracts'
|
||||
import { sshHostIdSchema } from './ssh-host-contracts'
|
||||
|
||||
export const REMOTE_PROJECT_SAVE_LIMITS = {
|
||||
@@ -30,7 +30,7 @@ const commonDraftFields = {
|
||||
name: projectCreateSchema.shape.name,
|
||||
description: projectCreateSchema.shape.description,
|
||||
defaultWorkMode: projectCreateSchema.shape.defaultWorkMode,
|
||||
runtimeSelection: agentRuntimeSelectionSchema,
|
||||
runtimeSelection: runtimeSelectionLayerSchema.optional(),
|
||||
hostId: sshHostIdSchema,
|
||||
remoteRootPath: remoteProjectRootPathSchema
|
||||
} as const
|
||||
|
||||
Reference in New Issue
Block a user