fix(config): allow timeout_seconds to be 0 to disable fallback

Previously, the Zod schema rejected timeout_seconds: 0 due to .min(1).
Now it accepts 0-integer values to allow disabling timeout-based fallback.

- Changed z.number().min(1) to z.number().min(0)
- Updated comment to clarify 0 disables timeout checks
- All tests pass (44 runtime-fallback + 46 schema tests)
- Build successful
This commit is contained in:
Youngbin Kim 2026-02-12 18:12:38 -05:00 committed by YeonGyu-Kim
parent 68f5d982fc
commit 349e820473

View File

@ -9,8 +9,8 @@ export const RuntimeFallbackConfigSchema = z.object({
max_fallback_attempts: z.number().min(1).max(20).optional(),
/** Cooldown in seconds before retrying a failed model (default: 60) */
cooldown_seconds: z.number().min(0).optional(),
/** Session-level timeout in seconds to advance fallback when provider hangs (default: 30) */
timeout_seconds: z.number().min(1).optional(),
/** Session-level timeout in seconds to advance fallback when provider hangs (default: 30, 0 to disable) */
timeout_seconds: z.number().min(0).optional(),
/** Show toast notification when switching to fallback model (default: true) */
notify_on_fallback: z.boolean().optional(),
})