Spracherkennung für: .ts vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
import type { OpenClawConfig } from "../config/types.js";
import { hasConfiguredChannelsForReadOnlyScope } from "../plugins/channel-plugin-ids.js";
import type { RuntimeEnv } from "../runtime.js";
import { executeStatusScanFromOverview } from "./status.scan-execute.ts";
import {
resolveDefaultMemoryStorePath,
resolveStatusMemoryStatusSnapshot,
} from "./status.scan-memory.ts";
import { collectStatusScanOverview } from "./status.scan-overview.ts";
import type { StatusScanResult } from "./status.scan-result.ts";
type StatusJsonScanPolicy = {
commandName: string;
allowMissingConfigFastPath?: boolean;
includeChannelSummary?: boolean;
resolveHasConfiguredChannels: (cfg: OpenClawConfig, sourceConfig: OpenClawConfig) => boolean;
resolveMemory: Parameters<typeof executeStatusScanFromOverview>[0]["resolveMemory"];
};
export async function scanStatusJsonWithPolicy(
opts: {
timeoutMs?: number;
all?: boolean;
},
runtime: RuntimeEnv,
policy: StatusJsonScanPolicy,
): Promise<StatusScanResult> {
const overview = await collectStatusScanOverview({
commandName: policy.commandName,
opts,
showSecrets: false,
runtime,
allowMissingConfigFastPath: policy.allowMissingConfigFastPath,
resolveHasConfiguredChannels: policy.resolveHasConfiguredChannels,
includeChannelsData: false,
});
return await executeStatusScanFromOverview({
overview,
runtime,
summary: {
includeChannelSummary: policy.includeChannelSummary,
},
resolveMemory: policy.resolveMemory,
channelIssues: [],
channels: { rows: [], details: [] },
pluginCompatibility: [],
});
}
export async function scanStatusJsonFast(
opts: {
timeoutMs?: number;
all?: boolean;
},
runtime: RuntimeEnv,
): Promise<StatusScanResult> {
return await scanStatusJsonWithPolicy(opts, runtime, {
commandName: "status --json",
allowMissingConfigFastPath: true,
includeChannelSummary: false,
resolveHasConfiguredChannels: (cfg, sourceConfig) =>
hasConfiguredChannelsForReadOnlyScope({
config: cfg,
activationSourceConfig: sourceConfig,
env: process.env,
includePersistedAuthState: false,
}),
resolveMemory: async ({ cfg, agentStatus, memoryPlugin }) =>
opts.all
? await resolveStatusMemoryStatusSnapshot({
cfg,
agentStatus,
memoryPlugin,
requireDefaultStore: resolveDefaultMemoryStorePath,
})
: null,
});
}
¤ Dauer der Verarbeitung: 0.17 Sekunden
(vorverarbeitet am 2026-04-27)
¤
*© Formatika GbR, Deutschland