Skip to content

Cron state silently wiped during SQLite migration on upgrade to 2026.6.1 #90072

@wlassalle724

Description

@wlassalle724

Summary

Upgrading from 2026.5.28 to 2026.6.1 silently wiped 44 of 45 cron jobs during the SQLite migration. Only 1 job (the memory core memory_dreaming_promotion) survived. All other cron state was lost with no warning or backup prompt.

Reproduction

  1. Run OpenClaw 2026.5.28 with 45+ cron jobs configured
  2. Upgrade to 2026.6.1 via npm update -g openclaw
  3. Restart gateway
  4. Run openclaw cron list — only 1 job remains

Expected behavior

  • All existing cron jobs should be migrated to the new SQLite store
  • If migration cannot preserve jobs, a clear warning should be displayed
  • A pre-migration backup of cron state should be created automatically

Actual behavior

  • 44 of 45 cron jobs silently disappeared
  • No warning during upgrade
  • No automatic backup created
  • The cron table in openclaw.sqlite had only 1 row after upgrade
  • The old JSON/file-based cron state was not preserved

Environment

  • OpenClaw 2026.5.28 → 2026.6.1
  • macOS Sequoia 15.5, Apple Silicon M2, 16GB
  • 45 cron jobs (mix of systemEvent and isolated/agentTurn, neurometric/clawpack and openai/gpt-5.4 models)

Workaround / Recovery

We recovered by reconstructing all 43 cron jobs from session backup data. This required:

  1. Backing up sessions.json before the upgrade (which we did manually)
  2. Cross-referencing cron session keys with job definitions
  3. Recreating each job via openclaw cron add with the correct schedule, model, thinking, and delivery config

This process took approximately 2 hours of manual reconstruction.

Suggested fix

  1. The upgrade migration should migrate all existing cron jobs from the legacy format to SQLite
  2. If migration is not possible, a pre-flight check should warn the user and create a backup
  3. openclaw doctor should detect and report missing cron jobs after upgrade
  4. The migration should be idempotent — running it twice should not cause data loss

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions