feat: refine UI, improve UX, optimize the analysis pipeline, and add character standing positions

This commit is contained in:
saturn
2026-04-02 17:39:16 +08:00
parent c3e74c228a
commit 9703714b69
153 changed files with 4472 additions and 1088 deletions

View File

@@ -52,7 +52,7 @@ describe('worker shot-ai-prompt-location behavior', () => {
vi.clearAllMocks()
persistMock.resolveAnalysisModel.mockResolvedValue({ id: 'np-1', analysisModel: 'llm::analysis' })
persistMock.requireProjectLocation.mockResolvedValue({ id: 'location-1', name: 'Old Town' })
runtimeMock.runShotPromptCompletion.mockResolvedValue('{"prompt":"updated location description"}')
runtimeMock.runShotPromptCompletion.mockResolvedValue('{"prompt":"updated location description","available_slots":["街道左侧靠墙的留白位置"]}')
persistMock.persistLocationDescription.mockResolvedValue({ id: 'location-1', images: [] })
})
@@ -85,10 +85,12 @@ describe('worker shot-ai-prompt-location behavior', () => {
locationId: 'location-1',
imageIndex: 2,
modifiedDescription: 'updated location description',
availableSlots: ['街道左侧靠墙的留白位置'],
})
expect(result).toEqual(expect.objectContaining({
success: true,
modifiedDescription: 'updated location description',
availableSlots: ['街道左侧靠墙的留白位置'],
location: { id: 'location-1', images: [] },
}))
})