openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
27 lines (26 loc) • 1.33 kB
JavaScript
import { r as asOptionalObjectRecord } from "./record-coerce-DHZ4bFlT.js";
import { s as normalizePluginsConfig } from "./config-state-CikNNz7T.js";
import { i as passesManifestOwnerBasePolicy } from "./manifest-owner-policy-DxLYM2ma.js";
import { t as loadBundledPluginPublicArtifactModuleSync } from "./public-surface-loader-CqBVRQ-t.js";
import { a as registerHealthCheck } from "./health-check-registry-CGjpbWY5.js";
//#region src/flows/bundled-health-checks.ts
/** Registers bundled health checks that are explicitly enabled by config and owner policy. */
function registerBundledHealthChecks(params) {
if (!shouldRegisterPolicyHealth(params)) return;
loadBundledPluginPublicArtifactModuleSync({
dirName: "policy",
artifactBasename: "api.js"
}).registerPolicyDoctorChecks?.({ registerHealthCheck });
}
function shouldRegisterPolicyHealth(params) {
const entry = params.cfg.plugins?.entries?.policy;
const config = asOptionalObjectRecord(entry?.config) ?? {};
if (entry === void 0 || entry.enabled === false || config.enabled === false) return false;
if (!passesManifestOwnerBasePolicy({
plugin: { id: "policy" },
normalizedConfig: normalizePluginsConfig(params.cfg.plugins)
})) return false;
return entry.enabled === true || config.enabled === true;
}
//#endregion
export { registerBundledHealthChecks as t };