Scheduled Jobs
The background jobs this installation declares, their schedules, which are switched off, and how to inspect and run them.
On this page
TL;DR: Jobs are declared in services/scheduler/config.yaml. Each entry
names the job, the extension that defines it (core or web), an owner:
(the user recorded as the actor in audit rows, admin here) and enabled.
A schedule: in the file overrides the job's built-in schedule. Schedules are
six-field cron, seconds first.
Inspecting and running
systemprompt infra jobs list
systemprompt infra jobs show <name>
systemprompt infra jobs history
systemprompt infra jobs run <name>
systemprompt infra jobs enable <name>
systemprompt infra jobs disable <name>
infra jobs list is the authority for the schedule a core job runs on; the
tables below give the schedule only where the config file or this repo's code
sets it.
Schedules set in this repo
| Job | Schedule | Does |
|---|---|---|
workflow_tick |
*/5 * * * * * |
Advances workflow runs. |
audit_chain_seal |
*/30 * * * * * (file override) |
Seals the audit hash chain. |
audit_chain_verify |
0 45 4 * * * |
Verifies the chain. |
trace_facts_rollup |
*/30 * * * * * (file override) |
Trace fact rollup. |
conversation_rollup |
30 * * * * * |
Conversation facts. |
activity_facts |
45 * * * * * |
Activity facts. |
brain_dense_index |
0 */5 * * * * |
Dense index for brain recall. |
clickhouse_sync |
0 */15 * * * * |
Exports datasets to ClickHouse; no-op without clickhouse_url. |
content_analytics_aggregation |
0 */15 * * * * |
Content analytics. |
publish_pipeline |
0 0 * * * * (file override) |
Bundles and copies web assets and prerenders. |
usage_daily_rollup, access_expiry |
0 5 * * * * |
Usage rollup; expires time-bound access grants. |
scope_defaults_recompute |
0 15 * * * * |
Recomputes scope defaults. |
secret_migration |
0 0 * * * * |
Secret migration. |
cleanup_empty_contexts, cleanup_inactive_sessions |
0 0 * * * * (file override) |
Session and context cleanup. |
cleanup_anonymous_users |
0 0 3 * * * (file override, retention_days: 7) |
Removes anonymous fingerprint users. |
plugin_usage_retention |
0 20 3 * * * |
Plugin usage retention. |
database_cleanup |
0 0 4 * * * (file override) |
Retention deletes. |
retention_daily_report |
0 30 4 * * * |
Retention measurements. |
retention_export_weekly |
0 0 2 * * 0 |
Weekly archive. |
retention_export_monthly |
0 30 2 1 * * |
Monthly archive. |
Core jobs on their built-in schedule
managed_inventory_refresh, config_reconcile, oauth_cleanup,
user_rate_limit_prune, no_js_cleanup, ghost_session_cleanup,
mcp_session_cleanup, file_ingestion, behavioral_analysis,
malicious_ip_blacklist, usage_anomaly_scan, thought_signature_cleanup,
tool_row_facts_rollup, outbox_backlog_rollup,
user_context_counters_rollup, log_summary_rollup, backfill_rollups,
ai_request_tool_flag_rollup, session_bot_type_rollup,
analytics_event_link_facts_rollup, vertex_discovery, otlp_export,
issue_report_retention, notification_retention, agent_run_dirs_cleanup;
the brain jobs brain_review, brain_retention, brain_analysis,
brain_usage, brain_consolidate (each returns at once while the brain is
off in the profile); and the Drive jobs document_collab_reaper,
document_presence_sweep, document_collab_update_sweep,
document_node_ids_backfill, document_upload_expiry,
document_agent_read_retention, document_blob_gc, document_trash_purge.
clickhouse_purge (web) also runs on its built-in schedule.
Switched off
blog_content_ingestion, bundle_admin_css, copy_extension_assets,
site_content_prerender, content_prerender, page_prerender,
sitemap_generation, llms_txt_generation and robots_txt_generation are
declared with enabled: false; publish_pipeline covers the asset steps.