fix(start-work): prevent overwriting session agent if already set; inherit parent model for subagent types (#1201)

* fix(start-work): prevent overwriting session agent if already set; inherit parent model for subagent types

* fix(model): include variant in StoredMessage model structure for better context propagation

* fix(injector): include variant in model structure for hook message injection
This commit is contained in:
Mike
2026-01-29 08:30:37 +08:00
committed by GitHub
parent 0c3fbd724b
commit faca80caa9
7 changed files with 40 additions and 9 deletions
@@ -55,7 +55,6 @@ ${REFACTOR_TEMPLATE}
},
"start-work": {
description: "(builtin) Start Sisyphus work session from Prometheus plan",
agent: "atlas",
template: `<command-instruction>
${START_WORK_TEMPLATE}
</command-instruction>
+11 -3
View File
@@ -5,7 +5,7 @@ import type { MessageMeta, OriginalMessageContext, TextPart, ToolPermission } fr
export interface StoredMessage {
agent?: string
model?: { providerID?: string; modelID?: string }
model?: { providerID?: string; modelID?: string; variant?: string }
tools?: Record<string, ToolPermission>
}
@@ -141,9 +141,17 @@ export function injectHookMessage(
const resolvedAgent = originalMessage.agent ?? fallback?.agent ?? "general"
const resolvedModel =
originalMessage.model?.providerID && originalMessage.model?.modelID
? { providerID: originalMessage.model.providerID, modelID: originalMessage.model.modelID }
? {
providerID: originalMessage.model.providerID,
modelID: originalMessage.model.modelID,
...(originalMessage.model.variant ? { variant: originalMessage.model.variant } : {})
}
: fallback?.model?.providerID && fallback?.model?.modelID
? { providerID: fallback.model.providerID, modelID: fallback.model.modelID }
? {
providerID: fallback.model.providerID,
modelID: fallback.model.modelID,
...(fallback.model.variant ? { variant: fallback.model.variant } : {})
}
: undefined
const resolvedTools = originalMessage.tools ?? fallback?.tools
@@ -12,6 +12,7 @@ export interface MessageMeta {
model?: {
providerID: string
modelID: string
variant?: string
}
path?: {
cwd: string
@@ -25,6 +26,7 @@ export interface OriginalMessageContext {
model?: {
providerID?: string
modelID?: string
variant?: string
}
path?: {
cwd?: string