SQLite has no boolean type, so raw rows return explicit as 0/1. The podcast edit form round-trips whatever GET /api/podcasts/:id sends it, and the update schema requires z.boolean() — so saving any change without also touching the explicit checkbox failed validation with "Expected boolean, received number". Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>