Stabilize line regression checks

This commit is contained in:
sunke 2026-03-21 01:00:46 +08:00
parent 236aefa06c
commit 2e603e15b6
4 changed files with 168 additions and 2 deletions

View File

@ -141,7 +141,8 @@ describe("resolveGraphChatId", () => {
}),
);
// Should filter by user AAD object ID
const callUrl = (fetchFn.mock.calls[0] as [string, unknown])[0];
const firstCall = fetchFn.mock.calls[0] as unknown[] | undefined;
const callUrl = firstCall?.[0];
expect(callUrl).toContain("user-aad-object-id-123");
expect(result).toBe("19:dm-chat-id@unq.gbl.spaces");
});

View File

@ -53,6 +53,8 @@ const runtimeStub: PluginRuntime = createPluginRuntimeMock({
const createNoopAdapter = (): MSTeamsAdapter => ({
continueConversation: async () => {},
process: async () => {},
updateActivity: async () => {},
deleteActivity: async () => {},
});
const createRecordedSendActivity = (
@ -81,6 +83,8 @@ const createFallbackAdapter = (proactiveSent: string[]): MSTeamsAdapter => ({
});
},
process: async () => {},
updateActivity: async () => {},
deleteActivity: async () => {},
});
describe("msteams messenger", () => {
@ -195,6 +199,8 @@ describe("msteams messenger", () => {
});
},
process: async () => {},
updateActivity: async () => {},
deleteActivity: async () => {},
};
const ids = await sendMSTeamsMessages({
@ -366,6 +372,8 @@ describe("msteams messenger", () => {
await logic({ sendActivity: createRecordedSendActivity(attempts, 503) });
},
process: async () => {},
updateActivity: async () => {},
deleteActivity: async () => {},
};
const ids = await sendMSTeamsMessages({

View File

@ -42,6 +42,8 @@ function createDeps(): MSTeamsMessageHandlerDeps {
const adapter: MSTeamsAdapter = {
continueConversation: async () => {},
process: async () => {},
updateActivity: async () => {},
deleteActivity: async () => {},
};
const conversationStore: MSTeamsConversationStore = {
upsert: async () => {},
@ -82,6 +84,8 @@ function createActivityHandler(): MSTeamsActivityHandler {
handler = {
onMessage: () => handler,
onMembersAdded: () => handler,
onReactionsAdded: () => handler,
onReactionsRemoved: () => handler,
run: async () => {},
};
return handler;

View File

@ -1 +1,154 @@
[]
[
{
"file": "extensions/acpx/runtime-api.ts",
"line": 1,
"kind": "export",
"specifier": "../../src/plugin-sdk/acpx.js",
"resolvedPath": "src/plugin-sdk/acpx.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/feishu/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/feishu.js",
"resolvedPath": "src/plugin-sdk/feishu.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/google/runtime-api.ts",
"line": 1,
"kind": "export",
"specifier": "../../src/plugin-sdk/google.js",
"resolvedPath": "src/plugin-sdk/google.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/googlechat/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/googlechat.js",
"resolvedPath": "src/plugin-sdk/googlechat.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/irc/src/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../../src/plugin-sdk/irc.js",
"resolvedPath": "src/plugin-sdk/irc.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/line/runtime-api.ts",
"line": 22,
"kind": "export",
"specifier": "../../src/plugin-sdk/line-core.js",
"resolvedPath": "src/plugin-sdk/line-core.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/line/runtime-api.ts",
"line": 44,
"kind": "export",
"specifier": "../../src/plugin-sdk/line-core.js",
"resolvedPath": "src/plugin-sdk/line-core.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/lobster/runtime-api.ts",
"line": 1,
"kind": "export",
"specifier": "../../src/plugin-sdk/lobster.js",
"resolvedPath": "src/plugin-sdk/lobster.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/mattermost/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/mattermost.js",
"resolvedPath": "src/plugin-sdk/mattermost.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/msteams/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/msteams.js",
"resolvedPath": "src/plugin-sdk/msteams.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/nextcloud-talk/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/nextcloud-talk.js",
"resolvedPath": "src/plugin-sdk/nextcloud-talk.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/nostr/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/nostr.js",
"resolvedPath": "src/plugin-sdk/nostr.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/signal/src/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../../src/plugin-sdk/signal.js",
"resolvedPath": "src/plugin-sdk/signal.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/tlon/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/tlon.js",
"resolvedPath": "src/plugin-sdk/tlon.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/twitch/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/twitch.js",
"resolvedPath": "src/plugin-sdk/twitch.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/voice-call/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/voice-call.js",
"resolvedPath": "src/plugin-sdk/voice-call.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/zai/runtime-api.ts",
"line": 1,
"kind": "export",
"specifier": "../../src/plugin-sdk/zai.js",
"resolvedPath": "src/plugin-sdk/zai.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/zalo/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/zalo.js",
"resolvedPath": "src/plugin-sdk/zalo.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
},
{
"file": "extensions/zalouser/runtime-api.ts",
"line": 4,
"kind": "export",
"specifier": "../../src/plugin-sdk/zalouser.js",
"resolvedPath": "src/plugin-sdk/zalouser.js",
"reason": "re-exports plugin-sdk via relative path; use openclaw/plugin-sdk/<subpath>"
}
]