v2-refactor-temp/docs/breaking-changes/2026-05-20-knowledge-job-auto-recovery.md
Knowledge base indexing now persists every in-flight task to disk and resumes it automatically after a process restart or crash. Previously, indexing that was interrupted by quit/crash stayed stuck in "processing" forever and required the user to manually re-trigger reindex; that no longer happens.
prepare-root (directory/sitemap scan) job has a 10-minute wall-clock cap, and each index-leaf (single file/url/note embed) job has a 5-minute wall-clock cap. Very large single files served by a slow embedding endpoint may now hit the leaf timeout where before they would run indefinitely.processing status may briefly persist after force-quit; it self-heals once the recovery pass finishes after the next launch.Nothing — automatic. If a previously failed indexing item is still stuck after the next launch + ~1 minute, run "Reindex" from the item's context menu as before.
JobManager.onAllReady, which fires 60 s after the lifecycle reaches WhenReady. On a cold start this means indexing resumes ~60 s into the session, not at process start.defaultTimeoutMs on indexLeafJobHandler rather than rolling this back.idle / failed by KnowledgeMigrator (unchanged from prior v2 behavior). Users must manually reindex those — auto-recovery covers v2 → v2 restarts only.