fix: harden Discord subagent thread config (#70945)

This commit is contained in:
Peter Steinberger
2026-04-24 23:46:28 +01:00
parent 84571e45ce
commit 21162233d5
3 changed files with 4 additions and 1 deletions

View File

@@ -10,6 +10,7 @@ Docs: https://docs.openclaw.ai
### Fixes
- Discord/subagents: pass runtime config into thread-bound native subagent binding and require it at the helper boundary so Discord channel resolution keeps account-aware config. Fixes #71054. (#70945) Thanks @jai.
- Agents/failover: stop body-less HTTP 400/422 proxy failures from defaulting to `"format"` classification, so embedded retries surface the opaque provider failure instead of falling into a compaction loop. Fixes #66462. (#67024) Thanks @altaywtf and @HongzhuLiu.
- Plugins/loader: use cached discovery-mode snapshot loads for read-only plugin capability lookups, keep snapshot caches isolated from active Gateway registries, and make same-plugin channel/HTTP route re-registration idempotent so repeated snapshot or hot-reload paths no longer rerun full plugin side effects or accumulate duplicate surfaces. Fixes #51781, #52031, #54181, and #57514. Thanks @livingghost, @okuyam2y, @ShionEria, and @bbshih.
## 2026.4.24

View File

@@ -775,6 +775,7 @@ describe("thread binding lifecycle", () => {
hoisted.createThreadDiscord.mockResolvedValueOnce({ id: "thread-created-2" });
const childBinding = await autoBindSpawnedDiscordSubagent({
cfg: {} as OpenClawConfig,
accountId: "default",
channel: "discord",
to: "channel:thread-1",
@@ -815,6 +816,7 @@ describe("thread binding lifecycle", () => {
hoisted.createThreadDiscord.mockResolvedValueOnce({ id: "thread-created-lookup" });
const childBinding = await autoBindSpawnedDiscordSubagent({
cfg: {} as OpenClawConfig,
accountId: "default",
channel: "discord",
to: "channel:thread-lookup",

View File

@@ -98,7 +98,7 @@ export function listThreadBindingsBySessionKey(params: {
}
export async function autoBindSpawnedDiscordSubagent(params: {
cfg?: OpenClawConfig;
cfg: OpenClawConfig;
accountId?: string;
channel?: string;
to?: string;