fix(web): 多 task 草稿自动保存后继续推进下一 task

useWorkbenchAiApplicationPreviewFlow 在自动保存草稿分支透传 onApplicationActionCompleted,
确保草稿/提交完成后仍能按 remaining tasks 推进,修复多 task 报销场景后续步骤不启动。
更新 application-context-submit/intent-planner-model 测试,补充 bug 日志与开发日志。
This commit is contained in:
caoxiaozhu
2026-06-29 20:17:36 +08:00
parent 6bdaeed6d4
commit 08f023243e
6 changed files with 120 additions and 6 deletions

View File

@@ -463,9 +463,12 @@ export function useWorkbenchAiApplicationPreviewFlow({
targetMessage.suggestedActions = []
const detailActions = buildInlineApplicationDetailAction(draftPayload)
const nextTaskAction = buildApplicationPreviewNextTaskAction(targetMessage)
const actionCompletedHandler = typeof options.onApplicationActionCompleted === 'function'
? options.onApplicationActionCompleted
: onApplicationActionCompleted
const shouldAutoContinueNextTask = Boolean(
nextTaskAction &&
typeof onApplicationActionCompleted === 'function' &&
typeof actionCompletedHandler === 'function' &&
Array.isArray(targetMessage.stewardRemainingTasks) &&
targetMessage.stewardRemainingTasks.length
)
@@ -485,7 +488,7 @@ export function useWorkbenchAiApplicationPreviewFlow({
persistCurrentConversation()
scrollInlineConversationToBottom({ force: inlineConversationAutoScrollPinned.value })
if (shouldAutoContinueNextTask) {
onApplicationActionCompleted(targetMessage.stewardRemainingTasks, targetMessage)
actionCompletedHandler(targetMessage.stewardRemainingTasks, targetMessage)
}
return true
} catch (error) {
@@ -613,7 +616,8 @@ export function useWorkbenchAiApplicationPreviewFlow({
if (options.autoSaveDraft) {
await executeInlineApplicationPreviewAction(AI_APPLICATION_ACTION_SAVE_DRAFT, previewMessage, {
skipUserMessage: true,
userText: options.userMessage || '保存草稿'
userText: options.userMessage || '保存草稿',
onApplicationActionCompleted: options.onApplicationActionCompleted
})
} else if (
typeof options.onPreviewReadyForNextTask === 'function' &&