feat(voice): add async selectable summaries

This commit is contained in:
zhangheng
2026-07-22 19:13:55 +08:00
parent 108e280b3f
commit 0a2509d923
17 changed files with 1530 additions and 159 deletions

View File

@@ -93,10 +93,30 @@ export interface FeedbackSession {
failedSegmentCount: number
needsGeneration: boolean
lessons: VoiceLesson[]
latestSummaryRun: FeedbackSummaryRun | null
createdAt: number
updatedAt: number
}
export type FeedbackSummaryStatus = 'queued' | 'processing' | 'ready' | 'failed' | 'applied'
export interface FeedbackSummaryRun {
id: string
feedbackSessionId: string
lessonIds: string[]
status: FeedbackSummaryStatus
content: string | null
method: string | null
model: string | null
promptVersion: string
characterCount: number | null
errorMessage: string | null
attempts: number
createdAt: number
completedAt: number | null
appliedAt: number | null
}
export interface VoiceLessonCreated {
id: string
sequence: number
@@ -114,5 +134,5 @@ export interface VoiceLessonFinished {
export interface GeneratedFeedback {
content: string
method: 'llm' | 'extractive'
method: 'llm' | 'llm_hierarchical' | 'extractive'
}