✨ feat(vscode): 设置面板可配头脑风暴/实施/测试会话的默认 profile
三类会话的 profile 此前只有工单级字段,留空就硬编码落到 official, 想整体换模型只能一个工单一个工单改。 设置面板新增三个下拉,与冲突解决/提交/改动说明的 profile 选择同区。 解析链路变成:工单级字段 > 对应的全局默认设置 > getDefaultProfilePath(), 三类之间仍互不回退。新建工单的头脑风暴会话也走同一条链路。 Claude-Session: https://claude.ai/code/session_01REdhpbaNyqWASF2HWsnTFv
This commit is contained in:
1 parent
518d471b7a
commit
958c59e090
11 files changed
+196
-18
No files matched your search
@@ -1599,30 +1599,43 @@ export async function startConflictResolution(panel: KanbanWebviewPanel, opts: {
|
||||
* (handleImplement / handleResumeSession when sessionKind === 'implement')
|
||||
* should launch with. Priority:
|
||||
* 1. 工单级 `profilePath`(详情面板「实施配置文件」)
|
||||
* 2. getDefaultProfilePath()
|
||||
* 2. 设置里的「实施默认配置文件」
|
||||
* 3. getDefaultProfilePath()
|
||||
*
|
||||
* 冲突解决用全局 `settings.conflictResolutionProfilePath`。
|
||||
* 头脑风暴用 resolveBrainstormProfilePath;测试用 resolveTestProfilePath。
|
||||
* 三者互不回退。
|
||||
*/
|
||||
export function resolveImplementProfilePath(_panel: KanbanWebviewPanel, issueLevelProfilePath: string | undefined): string {
|
||||
return resolveProfilePath(issueLevelProfilePath?.trim() || undefined)
|
||||
export function resolveImplementProfilePath(panel: KanbanWebviewPanel, issueLevelProfilePath: string | undefined): string {
|
||||
return resolveProfilePath(
|
||||
issueLevelProfilePath?.trim()
|
||||
|| getSettings(panel.context).defaultImplementProfilePath.trim()
|
||||
|| undefined,
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* 头脑风暴会话 profile:工单级 `brainstormProfilePath` > DEFAULT。
|
||||
* 不回退实施 profile。
|
||||
* 头脑风暴会话 profile:工单级 `brainstormProfilePath` > 设置里的
|
||||
* 「头脑风暴默认配置文件」> DEFAULT。不回退实施 profile。
|
||||
*/
|
||||
export function resolveBrainstormProfilePath(_panel: KanbanWebviewPanel, brainstormProfilePath: string | undefined): string {
|
||||
return resolveProfilePath(brainstormProfilePath?.trim() || undefined)
|
||||
export function resolveBrainstormProfilePath(panel: KanbanWebviewPanel, brainstormProfilePath: string | undefined): string {
|
||||
return resolveProfilePath(
|
||||
brainstormProfilePath?.trim()
|
||||
|| getSettings(panel.context).defaultBrainstormProfilePath.trim()
|
||||
|| undefined,
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* 测试会话 profile:工单级 `testProfilePath` > DEFAULT。
|
||||
* 不回退实施 profile。
|
||||
* 测试会话 profile:工单级 `testProfilePath` > 设置里的「测试默认配置文件」
|
||||
* > DEFAULT。不回退实施 profile。
|
||||
*/
|
||||
export function resolveTestProfilePath(_panel: KanbanWebviewPanel, testProfilePath: string | undefined): string {
|
||||
return resolveProfilePath(testProfilePath?.trim() || undefined)
|
||||
export function resolveTestProfilePath(panel: KanbanWebviewPanel, testProfilePath: string | undefined): string {
|
||||
return resolveProfilePath(
|
||||
testProfilePath?.trim()
|
||||
|| getSettings(panel.context).defaultTestProfilePath.trim()
|
||||
|| undefined,
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in new issue
Block a user