When upgrading, if jobs.json exists at the old global path and not yet
at the workspace path, move it automatically. Prevents silent loss of
existing cron jobs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace `get_cron_dir()` with `config.workspace_path / "cron"` so each
workspace keeps its own `jobs.json`. This lets users run multiple
nanobot instances with independent cron schedules without cross-talk.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>