From 14e73b793ac47f6e19bf75c972c667543d41bf4e Mon Sep 17 00:00:00 2001 From: Nicholas Tindle Date: Wed, 4 Feb 2026 22:49:13 -0600 Subject: [PATCH] fix(blocks): add limits to loop block to prevent disk exhaustion - n_loops: max 10 loops - duration: max 1 hour (3600s) Prevents DoS via unbounded video generation. Co-Authored-By: Claude Opus 4.5 --- autogpt_platform/backend/backend/blocks/video/loop.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/autogpt_platform/backend/backend/blocks/video/loop.py b/autogpt_platform/backend/backend/blocks/video/loop.py index d80695bb1e..9c27dacdad 100644 --- a/autogpt_platform/backend/backend/blocks/video/loop.py +++ b/autogpt_platform/backend/backend/blocks/video/loop.py @@ -29,11 +29,13 @@ class LoopVideoBlock(Block): description="Target duration (in seconds) to loop the video to. If omitted, defaults to no looping.", default=None, ge=0.0, + le=3600.0, # Max 1 hour to prevent disk exhaustion ) n_loops: Optional[int] = SchemaField( description="Number of times to repeat the video. If omitted, defaults to 1 (no repeat).", default=None, ge=1, + le=10, # Max 10 loops to prevent disk exhaustion ) class Output(BlockSchemaOutput):