fix(signal): add missing accountUuid to Zod config schema (#35578)

Merged via squash.

Prepared head SHA: 39e8e9ad62f65fa70e1a660e65f19d9452ae0412
Co-authored-by: ingyukoh <6015960+ingyukoh@users.noreply.github.com>
Co-authored-by: altaywtf <9790196+altaywtf@users.noreply.github.com>
Reviewed-by: @altaywtf
This commit is contained in:
ingyukoh
2026-03-12 02:57:07 +09:00
committed by GitHub
parent 8618a711ff
commit a84bcf734c
3 changed files with 14 additions and 0 deletions

View File

@@ -102,6 +102,7 @@ Docs: https://docs.openclaw.ai
- Security/session_status: enforce sandbox session-tree visibility and shared agent-to-agent access guards before reading or mutating target session state, so sandboxed subagents can no longer inspect parent session metadata or write parent model overrides via `session_status`.
- Security/nodes: treat the `nodes` agent tool as owner-only fallback policy so non-owner senders cannot reach paired-node approval or invoke paths through the shared tool set.
- Telegram/final preview cleanup follow-up: clear stale cleanup-retain state only for transient preview finals so archived-preview retains no longer leave a stale partial bubble beside a later fallback-sent final. (#41763) Thanks @obviyus.
- Signal/config schema: accept `channels.signal.accountUuid` in strict config validation so loop-protection configs no longer fail with an unrecognized-key error. (#35578) Thanks @ingyukoh.
## 2026.3.8

View File

@@ -184,4 +184,16 @@ describe("config schema regressions", () => {
expect(res.ok).toBe(false);
});
it("accepts signal accountUuid for loop protection", () => {
const res = validateConfigObject({
channels: {
signal: {
accountUuid: "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
},
},
});
expect(res.ok).toBe(true);
});
});

View File

@@ -977,6 +977,7 @@ export const SignalAccountSchemaBase = z
enabled: z.boolean().optional(),
configWrites: z.boolean().optional(),
account: z.string().optional(),
accountUuid: z.string().optional(),
httpUrl: z.string().optional(),
httpHost: z.string().optional(),
httpPort: z.number().int().positive().optional(),