mirror of
https://github.com/openclaw/openclaw.git
synced 2026-06-26 04:39:31 +00:00
46 lines
2.0 KiB
TypeScript
46 lines
2.0 KiB
TypeScript
// Holds current plugin metadata snapshots for process-scoped consumers.
|
|
let currentPluginMetadataSnapshot: unknown;
|
|
let currentPluginMetadataSnapshotConfigFingerprint: string | undefined;
|
|
let currentPluginMetadataSnapshotCompatiblePolicyHashes: readonly string[] | undefined;
|
|
let currentPluginMetadataSnapshotCompatibleConfigFingerprints: readonly string[] | undefined;
|
|
|
|
/** Stores the process-current plugin metadata snapshot and compatible config fingerprints. */
|
|
export function setCurrentPluginMetadataSnapshotState(
|
|
snapshot: unknown,
|
|
configFingerprint: string | undefined,
|
|
compatiblePolicyHashes?: readonly string[],
|
|
compatibleConfigFingerprints?: readonly string[],
|
|
): void {
|
|
currentPluginMetadataSnapshot = snapshot;
|
|
currentPluginMetadataSnapshotConfigFingerprint = snapshot ? configFingerprint : undefined;
|
|
currentPluginMetadataSnapshotCompatiblePolicyHashes = snapshot
|
|
? compatiblePolicyHashes
|
|
: undefined;
|
|
currentPluginMetadataSnapshotCompatibleConfigFingerprints = snapshot
|
|
? compatibleConfigFingerprints
|
|
: undefined;
|
|
}
|
|
|
|
/** Clears the process-current plugin metadata snapshot. */
|
|
export function clearCurrentPluginMetadataSnapshotState(): void {
|
|
currentPluginMetadataSnapshot = undefined;
|
|
currentPluginMetadataSnapshotConfigFingerprint = undefined;
|
|
currentPluginMetadataSnapshotCompatiblePolicyHashes = undefined;
|
|
currentPluginMetadataSnapshotCompatibleConfigFingerprints = undefined;
|
|
}
|
|
|
|
/** Returns the process-current plugin metadata snapshot state. */
|
|
export function getCurrentPluginMetadataSnapshotState(): {
|
|
snapshot: unknown;
|
|
configFingerprint: string | undefined;
|
|
compatiblePolicyHashes: readonly string[] | undefined;
|
|
compatibleConfigFingerprints: readonly string[] | undefined;
|
|
} {
|
|
return {
|
|
snapshot: currentPluginMetadataSnapshot,
|
|
configFingerprint: currentPluginMetadataSnapshotConfigFingerprint,
|
|
compatiblePolicyHashes: currentPluginMetadataSnapshotCompatiblePolicyHashes,
|
|
compatibleConfigFingerprints: currentPluginMetadataSnapshotCompatibleConfigFingerprints,
|
|
};
|
|
}
|