diff --git a/src/art/mcp/generate_scenarios.py b/src/art/mcp/generate_scenarios.py index 6932d9c2e..f86a34078 100644 --- a/src/art/mcp/generate_scenarios.py +++ b/src/art/mcp/generate_scenarios.py @@ -201,9 +201,14 @@ async def generate_scenarios( scenarios = result if isinstance(result, list) else list(result.values())[0] # Validate count - if len(scenarios) != num_scenarios: + if len(scenarios) < num_scenarios: err(f"Expected {num_scenarios} scenarios, got {len(scenarios)}.") raise ValueError(f"Expected {num_scenarios} scenarios, got {len(scenarios)}") + elif len(scenarios) > num_scenarios: + ok( + f"Expected {num_scenarios} scenarios, got {len(scenarios)}. Truncating to {num_scenarios}." + ) + scenarios = scenarios[:num_scenarios] ok(f"Parsed {len(scenarios)} scenario(s) successfully.")