From 81d4e6a3cc809c089584b0e4d0e509d47a2820b8 Mon Sep 17 00:00:00 2001 From: michael Date: Sun, 11 Jan 2026 08:49:29 -0600 Subject: [PATCH] fix: convert datetime fields to ISO strings in edit state response The AccessibleVideoEditStateResponse schema expects string timestamps but the API was passing raw datetime objects from MongoDB. Now converts last_render_at and requested_at to ISO format strings. Co-Authored-By: Claude Opus 4.5 --- backend/app/api/v1/routes_jobs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/app/api/v1/routes_jobs.py b/backend/app/api/v1/routes_jobs.py index e55f397..3339be2 100644 --- a/backend/app/api/v1/routes_jobs.py +++ b/backend/app/api/v1/routes_jobs.py @@ -1550,14 +1550,14 @@ async def get_accessible_video_edit_state( tts_regeneration_queue=[ TTSRegenerationItem( cue_index=req.get("cue_index"), - requested_at=req.get("requested_at"), + requested_at=req.get("requested_at").isoformat() if hasattr(req.get("requested_at"), "isoformat") else req.get("requested_at"), new_text=req.get("new_text"), status=req.get("status", "pending"), error_message=req.get("error_message") ) for req in edit_state.get("tts_regeneration_queue", []) ], - last_render_at=edit_state.get("last_render_at"), + last_render_at=edit_state.get("last_render_at").isoformat() if edit_state.get("last_render_at") else None, total_duration_ms=total_duration_ms, accessible_video_url=accessible_video_url )