From dd705e3da1b5ad2b875baf6c252da260e47648e5 Mon Sep 17 00:00:00 2001 From: Derek Ross Date: Thu, 29 Jan 2026 21:59:56 -0500 Subject: [PATCH] fix(signal): add groups schema to Zod validation The TypeScript type was added but the Zod runtime schema was missing, causing config validation to reject the groups key. --- src/config/zod-schema.providers-core.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/config/zod-schema.providers-core.ts b/src/config/zod-schema.providers-core.ts index ed7dda22a..8d0f0b669 100644 --- a/src/config/zod-schema.providers-core.ts +++ b/src/config/zod-schema.providers-core.ts @@ -58,6 +58,17 @@ export const TelegramGroupSchema = z }) .strict(); +export const SignalGroupSchema = z + .object({ + requireMention: z.boolean().optional(), + tools: ToolPolicySchema, + toolsBySender: ToolPolicyBySenderSchema, + enabled: z.boolean().optional(), + allowFrom: z.array(z.union([z.string(), z.number()])).optional(), + systemPrompt: z.string().optional(), + }) + .strict(); + const TelegramCustomCommandSchema = z .object({ command: z.string().transform(normalizeTelegramCommandName), @@ -534,6 +545,7 @@ export const SignalAccountSchemaBase = z .optional(), reactionLevel: z.enum(["off", "ack", "minimal", "extensive"]).optional(), heartbeat: ChannelHeartbeatVisibilitySchema, + groups: z.record(z.string(), SignalGroupSchema.optional()).optional(), }) .strict();