feat(ai): issue verified application preview decisions

This commit is contained in:
caoxiaozhu
2026-07-14 14:37:53 +08:00
parent a662cfe6c3
commit 5b24630710
32 changed files with 1976 additions and 217 deletions

View File

@@ -101,3 +101,45 @@ test('AI workbench conversation store preserves stewardRemainingTasks on message
const persistedMessage = conversation.messages.find((m) => m.id === 'a1')
assert.deepEqual(persistedMessage.stewardRemainingTasks, remainingTasks)
})
test('AI workbench conversation store preserves preview decision and retry context', () => {
installLocalStorageMock()
const user = { username: 'preview-user' }
const applicationPreview = {
decisionId: 'decision-preview-1',
decisionActionRequestId: 'action-preview-1',
fields: { reason: '客户现场实施' },
aiDecisionFeedback: {
schemaVersion: 1,
revision: 1,
changedFields: [
{ fieldKey: 'reason', suggestedValue: '客户拜访', finalValue: '客户现场实施' }
]
}
}
saveAiWorkbenchConversation(user, {
id: 'conv-preview-decision',
updatedAt: Date.now(),
messages: [
{ id: 'u1', role: 'user', content: '发起出差申请' },
{
id: 'a1',
role: 'assistant',
content: '申请核对表',
text: '申请核对表',
applicationPreview,
draftPayload: { claim_id: 'claim-preview-1' },
requestedSubmit: true,
submitRequiresConfirmation: true
}
]
})
const history = loadAiWorkbenchConversationHistory(user)
const restored = history[0].messages.find((message) => message.id === 'a1')
assert.deepEqual(restored.applicationPreview, applicationPreview)
assert.equal(restored.draftPayload.claim_id, 'claim-preview-1')
assert.equal(restored.requestedSubmit, true)
assert.equal(restored.submitRequiresConfirmation, true)
})