openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
20 lines (19 loc) • 821 B
JavaScript
import { D as hashCronJobDefinition } from "./openclaw-state-db-legacy-backfills-D9u-q2VB.mjs";
import { c as projectCronJobThroughStorageCodec } from "./row-codec-CXnIpQeG.mjs";
//#region src/cron/config-revision.ts
/** Opaque revision token for cron configuration, excluding scheduler-maintained state. */
function configRevisionDefinition(projected) {
const { updatedAtMs: _updatedAtMs, state: _state, ...definition } = projected;
return definition;
}
/** Hashes the job definition while preserving meaningful own-undefined config fields. */
function resolveCronJobConfigRevision(job) {
const projected = projectCronJobThroughStorageCodec({
...job,
updatedAtMs: 0,
state: {}
});
return hashCronJobDefinition(configRevisionDefinition(projected));
}
//#endregion
export { resolveCronJobConfigRevision as t };