generator client { provider = "prisma-client-js" } datasource db { provider = "sqlite" url = "file:./dev.db" } model Episode { id String @id @default(cuid()) title String originalContent String scriptContent String? mode String @default("VERBATIM") // VERBATIM | FEYNMAN | DUAL_HOST status String @default("PENDING") // PENDING | PROCESSING | READY | FAILED errorMessage String? durationSeconds Float? audioUrl String? timingsJson String? // Serialized array of cues / timestamps [{text, startTime, endTime, speaker}] stages StageItem[] createdAt DateTime @default(now()) updatedAt DateTime @updatedAt } model StageItem { id String @id @default(cuid()) episodeId String timestampSeconds Float type String // IMAGE | CODE | CALLOUT title String? content String // Image URL, Code snippet, or Callout text caption String? episode Episode @relation(fields: [episodeId], references: [id], onDelete: Cascade) createdAt DateTime @default(now()) }