Skip to main content

Crate chronon_core

Crate chronon_core 

Source
Expand description

Chronon core — portable types and the SchedulerStore persistence port.

This crate defines domain models, error types, script identity ports, and the async storage trait that backends implement. It has no runtime, scheduler, or HTTP dependencies.

§Goals

§Non-goals

  • Running tick loops or executing scripts (see chronon-runtime and chronon-executor)
  • Choosing a storage backend (hosts register implementations at boot)

§Modules

§Getting started

Implement SchedulerStore for your storage substrate, then register it on StoreRouter::register_global or pass the store directly to ChrononBuilder in chronon-runtime.

See also: DEFAULT_STORE_NAME, ScriptHandle.

Re-exports§

pub use actor_policy::default_http_enqueue_actor;
pub use actor_policy::is_system_shaped_actor;
pub use actor_policy::ActorJsonPolicy;
pub use actor_policy::EnqueueTrust;
pub use actor_policy::RejectExternalSystemActor;
pub use context::ContextFactory;
pub use context::IdentityError;
pub use context::JsonScriptContextFactory;
pub use context::NoOpContextFactory;
pub use context::NoOpScriptContext;
pub use context::ScriptContext;
pub use error::ChrononError;
pub use error::Result;
pub use handle::ScriptHandle;
pub use models::Job;
pub use models::JobRevision;
pub use models::Lease;
pub use models::MisfirePolicy;
pub use models::PartitionAssignment;
pub use models::RetryPolicy;
pub use models::Run;
pub use models::RunStatus;
pub use models::ScheduleKind;
pub use models::SchedulerLeader;
pub use models::Script;
pub use models::Worker;
pub use models::WorkerStatus;
pub use models::MAX_JOB_CONCURRENCY;
pub use models::MAX_LIST_LIMIT;
pub use models::MAX_RETRY_ATTEMPTS;
pub use models::MAX_RETRY_DELAY_MS;
pub use models::MAX_TIMEOUT_MS;
pub use redact::redact_credentials_in_text;
pub use redact::redact_endpoint;
pub use router::default_store_from_global;
pub use router::StoreRouter;
pub use router::DEFAULT_STORE_NAME;
pub use sanitize::sanitize_error_message;
pub use sanitize::MAX_ERROR_MESSAGE_CHARS;
pub use store::SchedulerStore;

Modules§

actor_policy
Optional policy for validating opaque actor_json at enqueue / upsert time.
context
Script execution context ports.
error
Error types for Chronon.
handle
Typed script handle for job scheduling.
models
Data models for Chronon entities.
redact
Redact credentials from connection endpoints and error text.
router
Named SchedulerStore registration at host boot.
sanitize
Sanitize operator-visible error strings (runs, HTTP envelopes).
store
Scheduler persistence port for jobs, runs, revisions, and coordinator metadata.