From 9eb91ab631f471e598f14ab9e7d720d38ecde2ba Mon Sep 17 00:00:00 2001 From: ismeth Date: Mon, 2 Mar 2026 00:20:12 +0100 Subject: [PATCH] fix(athena): use constants.ts as single source of truth for council defaults Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode) Co-authored-by: Sisyphus --- src/config/schema/athena.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/config/schema/athena.ts b/src/config/schema/athena.ts index 2b87201ce..db5e7e57a 100644 --- a/src/config/schema/athena.ts +++ b/src/config/schema/athena.ts @@ -1,4 +1,5 @@ import { z } from "zod" +import { COUNCIL_DEFAULTS } from "../../agents/athena/constants" import { parseModelString } from "../../tools/delegate-task/model-string-parser" /** Validates model string format: "provider/model-id" (e.g., "openai/gpt-5.3-codex"). */ @@ -24,8 +25,8 @@ export const CouncilConfigSchema = z.object({ retry_on_fail: z.number().min(0).max(5).default(0), retry_failed_if_others_finished: z.boolean().default(false), cancel_retrying_on_quorum: z.boolean().default(true), - stuck_threshold_seconds: z.number().min(30).default(120), - member_max_running_seconds: z.number().min(60).default(1800), + stuck_threshold_seconds: z.number().min(30).default(COUNCIL_DEFAULTS.STUCK_THRESHOLD_SECONDS), + member_max_running_seconds: z.number().min(60).default(COUNCIL_DEFAULTS.MEMBER_MAX_RUNNING_SECONDS), }).strict() export type CouncilMemberConfig = z.infer