Skip to main content

Module catalog

Module catalog 

Source
Expand description

Catalog-backed startup API for keeping handlers, job definitions, schedules, and workflow steps aligned.

JobCatalog is the primary facade. Applications register handlers once, sync the catalog’s definition defaults to PostgreSQL, and use the catalog helpers to build enqueue, schedule, and workflow inputs with job-type validation at the call site.

Catalog defaults apply to every registered entry unless a job is registered with job-specific definition overrides.

§Schedule APIs

Choose a schedule API by who owns the schedule definition:

JobCatalog::schedule_sync_scope derives an exact-sync scope from schedules registered on the catalog, so startup code does not need to repeat those names. If a deployment needs both registered schedules and dynamic startup specs in one exact source-of-truth set, build one explicit spec list and scope for JobCatalog::sync_schedules_exact_with; Runledger does not provide an implicit union helper because that can hide ownership mistakes.

Structs§

CatalogJobEnqueueInput
Input for building a JobEnqueue from a catalog-backed job type.
CatalogJobScheduleInput
Input for building a one-off JobScheduleUpsert from a catalog-backed job type.
CatalogJobScheduleSpec
Catalog-owned cron schedule definition synced to job_schedules at startup.
CatalogWorkflowDagBuilder
Workflow DAG builder that validates job types against a JobCatalog.
JobCatalog
Single-source registry of job handlers, definition defaults, schedules, and enqueue helpers.
JobCatalogDefaults
Default values applied when syncing catalog jobs to job_definitions.
JobCatalogDefinitionOverrides
Per-job definition values that override JobCatalogDefaults.
JobCatalogExactSyncReport
Result returned by JobCatalog::sync_definitions_exact.
JobCatalogScheduleSyncReport
Result returned by catalog schedule sync methods.
JobCatalogScheduleSyncScope
Explicit owned schedule-name scope used by exact catalog schedule sync.
JobCatalogSyncReport
Result returned by JobCatalog::sync_definitions.
JobCatalogSyncScope
Explicit owned job-type scope used by JobCatalog::sync_definitions_exact.

Enums§

CatalogError
Error returned by super::JobCatalog validation, sync, and helper methods.