refactor: drop private channel sdk facades

This commit is contained in:
Peter Steinberger
2026-04-18 19:35:41 +01:00
parent 858a3f72fa
commit d3eeadba94
4 changed files with 1 additions and 90 deletions

View File

@@ -1,16 +0,0 @@
// Manual facade. Keep loader boundary explicit.
type FacadeModule = typeof import("@openclaw/discord/contract-api.js");
import { loadBundledPluginPublicSurfaceModuleSync } from "./facade-loader.js";
function loadFacadeModule(): FacadeModule {
return loadBundledPluginPublicSurfaceModuleSync<FacadeModule>({
dirName: "discord",
artifactBasename: "contract-api.js",
});
}
export const collectDiscordSecurityAuditFindings: FacadeModule["collectDiscordSecurityAuditFindings"] =
((...args) =>
loadFacadeModule().collectDiscordSecurityAuditFindings(
...args,
)) as FacadeModule["collectDiscordSecurityAuditFindings"];

View File

@@ -1,30 +0,0 @@
// Manual facade. Keep loader boundary explicit.
type InteractiveRepliesSurface = typeof import("@openclaw/slack/interactive-replies-api.js");
type SecuritySurface = typeof import("@openclaw/slack/security-contract-api.js");
import { loadBundledPluginPublicSurfaceModuleSync } from "./facade-loader.js";
function loadInteractiveRepliesSurface(): InteractiveRepliesSurface {
return loadBundledPluginPublicSurfaceModuleSync<InteractiveRepliesSurface>({
dirName: "slack",
artifactBasename: "interactive-replies-api.js",
});
}
function loadSecuritySurface(): SecuritySurface {
return loadBundledPluginPublicSurfaceModuleSync<SecuritySurface>({
dirName: "slack",
artifactBasename: "security-contract-api.js",
});
}
export const compileSlackInteractiveReplies: InteractiveRepliesSurface["compileSlackInteractiveReplies"] =
((...args) =>
loadInteractiveRepliesSurface().compileSlackInteractiveReplies(
...args,
)) as InteractiveRepliesSurface["compileSlackInteractiveReplies"];
export const collectSlackSecurityAuditFindings: SecuritySurface["collectSlackSecurityAuditFindings"] =
((...args) =>
loadSecuritySurface().collectSlackSecurityAuditFindings(
...args,
)) as SecuritySurface["collectSlackSecurityAuditFindings"];

View File

@@ -1,43 +0,0 @@
// Manual facade. Keep loader boundary explicit.
type FacadeModule = typeof import("@openclaw/telegram/contract-api.js");
type SecurityAuditFacadeModule = typeof import("@openclaw/telegram/security-audit-contract-api.js");
import {
createLazyFacadeArrayValue,
loadBundledPluginPublicSurfaceModule,
loadBundledPluginPublicSurfaceModuleSync,
} from "./facade-loader.js";
function loadFacadeModule(): FacadeModule {
return loadBundledPluginPublicSurfaceModuleSync<FacadeModule>({
dirName: "telegram",
artifactBasename: "contract-api.js",
});
}
async function loadSecurityAuditFacadeModule(): Promise<SecurityAuditFacadeModule> {
return await loadBundledPluginPublicSurfaceModule<SecurityAuditFacadeModule>({
dirName: "telegram",
artifactBasename: "security-audit-contract-api.js",
});
}
export const parseTelegramTopicConversation: FacadeModule["parseTelegramTopicConversation"] = ((
...args
) =>
loadFacadeModule().parseTelegramTopicConversation(
...args,
)) as FacadeModule["parseTelegramTopicConversation"];
export const singleAccountKeysToMove: FacadeModule["singleAccountKeysToMove"] =
createLazyFacadeArrayValue(() => loadFacadeModule().singleAccountKeysToMove);
export const collectTelegramSecurityAuditFindings: FacadeModule["collectTelegramSecurityAuditFindings"] =
(async (...args) =>
(await loadSecurityAuditFacadeModule()).collectTelegramSecurityAuditFindings(
...args,
)) as FacadeModule["collectTelegramSecurityAuditFindings"];
export const mergeTelegramAccountConfig: FacadeModule["mergeTelegramAccountConfig"] = ((...args) =>
loadFacadeModule().mergeTelegramAccountConfig(
...args,
)) as FacadeModule["mergeTelegramAccountConfig"];

View File

@@ -1,6 +1,6 @@
import { describe, expect, it, vi } from "vitest";
import { collectTelegramSecurityAuditFindings } from "../../test/helpers/channels/security-audit-contract.js";
import type { OpenClawConfig } from "../config/config.js";
import { collectTelegramSecurityAuditFindings } from "../plugin-sdk/telegram.js";
import { withChannelSecurityStateDir } from "./audit-channel-security.test-helpers.js";
type TelegramAuditParams = Parameters<typeof collectTelegramSecurityAuditFindings>[0];