惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

云风的 BLOG
云风的 BLOG
M
MIT News - Artificial intelligence
博客园 - Franky
J
Java Code Geeks
V
Visual Studio Blog
G
Google Developers Blog
罗磊的独立博客
MongoDB | Blog
MongoDB | Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Recent Announcements
Recent Announcements
Last Week in AI
Last Week in AI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Stack Overflow Blog
Stack Overflow Blog
博客园 - 司徒正美
The GitHub Blog
The GitHub Blog
腾讯CDC
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
博客园 - 【当耐特】
IT之家
IT之家
I
InfoQ
U
Unit 42
C
Check Point Blog
Martin Fowler
Martin Fowler

Recent Commits to openclaw:main

test: merge chat side-result checks · openclaw/openclaw@ddd2c2a test: merge cron history checks · openclaw/openclaw@f7eb746 test: merge responsive navigation shell checks · openclaw/openclaw@c2e4b47 docs(changelog): add codex oauth fixes · openclaw/openclaw@628e6cd test: merge navigation routing cases · openclaw/openclaw@5d8cecb Tests: mock channel registry bundled fallback · openclaw/openclaw@2b08233 Secrets: avoid broad web search discovery for single plugin config · openclaw/openclaw@a464f59 test: merge config view browser checks · openclaw/openclaw@20cf511 fix(status): align oauth health with runtime · openclaw/openclaw@eed7116 feat: add macOS screen snapshots for monitor preview (#67954) thanks … · openclaw/openclaw@f377db1 fix: report shared auth scopes in hello-ok (#67810) thanks @BunsDev · openclaw/openclaw@0b6c39b Auto-reply: avoid eager bundled route fallback · openclaw/openclaw@3ea1bf4 Tests: narrow session binding contract setup · openclaw/openclaw@54e4e16 fix(macOS): enable undo/redo in webchat composer text input (#34962) · openclaw/openclaw@00951dc Tests: speed up channel setup promotion · openclaw/openclaw@82b529a Docs: refresh agent instructions · openclaw/openclaw@5775fe2 fix(auth): serialize OAuth refresh across agents to fix #26322 (#67876) · openclaw/openclaw@8e79080 test: allow ollama public surface boundary test · openclaw/openclaw@7d4f1a6 Docs: add test performance guardrails · openclaw/openclaw@89706d3 Tests: restore context-engine usage proof · openclaw/openclaw@e4c4f95 Tests: slim context engine runtime coverage · openclaw/openclaw@74c198f ci: retry failed custom checkouts · openclaw/openclaw@0ee5baf test: trim duplicate provider auth onboarding cases · openclaw/openclaw@1ffc02e matrix: fix sessions_spawn --thread subagent session spawning (#67643) · openclaw/openclaw@1ce2596 test: reduce auth choice fixture churn · openclaw/openclaw@857b9cd test: mock health status config boundaries · openclaw/openclaw@9d5ab4a test: mock onboard config io boundary · openclaw/openclaw@299694d test: mock legacy state plugin boundaries · openclaw/openclaw@2713089 test: mock channel install boundaries · openclaw/openclaw@b945248 test: mock doctor preview channel boundaries · openclaw/openclaw@b1a3ad4
test(discord): share empty config fixture · openclaw/open...
steipete · 2026-04-25 · via Recent Commits to openclaw:main

@@ -9,6 +9,7 @@ import {

99

type OpenClawConfig,

1010

} from "openclaw/plugin-sdk/runtime-config-snapshot";

1111

import { beforeEach, describe, expect, it, vi } from "vitest";

12+

import { EMPTY_DISCORD_TEST_CONFIG } from "../test-support/config.js";

12131314

const hoisted = vi.hoisted(() => {

1415

const sendMessageDiscord = vi.fn(async (_to: string, _text: string, _opts?: unknown) => ({}));

@@ -76,7 +77,7 @@ function createTestThreadBindingManager(

7677

},

7778

) {

7879

return createThreadBindingManager({

79-

cfg: {} as OpenClawConfig,

80+

cfg: EMPTY_DISCORD_TEST_CONFIG,

8081

...params,

8182

});

8283

}

@@ -270,7 +271,7 @@ describe("thread binding lifecycle", () => {

270271

try {

271272

const manager = createTestThreadBindingManager({

272273

accountId: "default",

273-

cfg: {} as OpenClawConfig,

274+

cfg: EMPTY_DISCORD_TEST_CONFIG,

274275

persist: false,

275276

enableSweeper: false,

276277

idleTimeoutMs: 60_000,

@@ -310,7 +311,7 @@ describe("thread binding lifecycle", () => {

310311

try {

311312

const manager = createTestThreadBindingManager({

312313

accountId: "default",

313-

cfg: {} as OpenClawConfig,

314+

cfg: EMPTY_DISCORD_TEST_CONFIG,

314315

persist: false,

315316

enableSweeper: false,

316317

idleTimeoutMs: 0,

@@ -786,7 +787,7 @@ describe("thread binding lifecycle", () => {

786787

hoisted.createThreadDiscord.mockResolvedValueOnce({ id: "thread-created-2" });

787788788789

const childBinding = await autoBindSpawnedDiscordSubagent({

789-

cfg: {} as OpenClawConfig,

790+

cfg: EMPTY_DISCORD_TEST_CONFIG,

790791

accountId: "default",

791792

channel: "discord",

792793

to: "channel:thread-1",

@@ -827,7 +828,7 @@ describe("thread binding lifecycle", () => {

827828

hoisted.createThreadDiscord.mockResolvedValueOnce({ id: "thread-created-lookup" });

828829829830

const childBinding = await autoBindSpawnedDiscordSubagent({

830-

cfg: {} as OpenClawConfig,

831+

cfg: EMPTY_DISCORD_TEST_CONFIG,

831832

accountId: "default",

832833

channel: "discord",

833834

to: "channel:thread-lookup",

@@ -1314,7 +1315,7 @@ describe("thread binding lifecycle", () => {

13141315

});

1315131613161317

const result = await reconcileAcpThreadBindingsOnStartup({

1317-

cfg: {} as OpenClawConfig,

1318+

cfg: EMPTY_DISCORD_TEST_CONFIG,

13181319

accountId: "default",

13191320

});

13201321

@@ -1358,15 +1359,15 @@ describe("thread binding lifecycle", () => {

13581359

hoisted.readAcpSessionEntry.mockReturnValue({

13591360

sessionKey: "agent:codex:acp:uncertain",

13601361

storeSessionKey: "agent:codex:acp:uncertain",

1361-

cfg: {} as OpenClawConfig,

1362+

cfg: EMPTY_DISCORD_TEST_CONFIG,

13621363

storePath: "/tmp/mock-sessions.json",

13631364

storeReadFailed: true,

13641365

entry: undefined,

13651366

acp: undefined,

13661367

});

1367136813681369

const result = await reconcileAcpThreadBindingsOnStartup({

1369-

cfg: {} as OpenClawConfig,

1370+

cfg: EMPTY_DISCORD_TEST_CONFIG,

13701371

accountId: "default",

13711372

});

13721373

@@ -1405,7 +1406,7 @@ describe("thread binding lifecycle", () => {

14051406

hoisted.readAcpSessionEntry.mockReturnValue(null);

1406140714071408

const result = await reconcileAcpThreadBindingsOnStartup({

1408-

cfg: {} as OpenClawConfig,

1409+

cfg: EMPTY_DISCORD_TEST_CONFIG,

14091410

accountId: "default",

14101411

});

14111412

@@ -1454,7 +1455,7 @@ describe("thread binding lifecycle", () => {

14541455

});

1455145614561457

const result = await reconcileAcpThreadBindingsOnStartup({

1457-

cfg: {} as OpenClawConfig,

1458+

cfg: EMPTY_DISCORD_TEST_CONFIG,

14581459

accountId: "default",

14591460

healthProbe: async () => ({ status: "stale", reason: "status-timeout-running-stale" }),

14601461

});

@@ -1498,7 +1499,7 @@ describe("thread binding lifecycle", () => {

14981499

});

1499150015001501

const result = await reconcileAcpThreadBindingsOnStartup({

1501-

cfg: {} as OpenClawConfig,

1502+

cfg: EMPTY_DISCORD_TEST_CONFIG,

15021503

accountId: "default",

15031504

healthProbe: async () => ({ status: "uncertain", reason: "status-timeout" }),

15041505

});

@@ -1546,7 +1547,7 @@ describe("thread binding lifecycle", () => {

15461547

});

1547154815481549

const result = await reconcileAcpThreadBindingsOnStartup({

1549-

cfg: {} as OpenClawConfig,

1550+

cfg: EMPTY_DISCORD_TEST_CONFIG,

15501551

accountId: "default",

15511552

});

15521553

@@ -1612,7 +1613,7 @@ describe("thread binding lifecycle", () => {

16121613

let secondProbeStartedBeforeFirstResolved = false;

1613161416141615

const reconcilePromise = reconcileAcpThreadBindingsOnStartup({

1615-

cfg: {} as OpenClawConfig,

1616+

cfg: EMPTY_DISCORD_TEST_CONFIG,

16161617

accountId: "default",

16171618

healthProbe: async () => {

16181619

probeCallCount += 1;

@@ -1684,7 +1685,7 @@ describe("thread binding lifecycle", () => {

16841685

});

1685168616861687

const reconcilePromise = reconcileAcpThreadBindingsOnStartup({

1687-

cfg: {} as OpenClawConfig,

1688+

cfg: EMPTY_DISCORD_TEST_CONFIG,

16881689

accountId: "default",

16891690

healthProbe: async () => {

16901691

probeCalls += 1;