Files
spacedrive/crates/task-system
Jamie PineandClaude Fable 5 c1a6bbfa22 Make the job system tell the truth
Resume never worked: the registry was populated by a derive only three
of eleven job types used, so most interrupted jobs failed to
deserialize and their rows sat at Running forever. Every job type now
registers, and startup reconciles every leftover row: resumable jobs
resume, everything else (unknown type, not resumable, unreadable state,
failed dispatch) is marked failed with the reason. Queued rows are
included, since a queue does not survive its process.

Dispatch dedupes on (job name, dedup key): re-tracking a root while its
walk or hashing runs returns the live job's handle instead of stacking
a duplicate. The indexing jobs key on their root, and their progress
now names the source it belongs to.

The task system's panic-on-drop assert became a release-mode log; it
was aborting the whole process during ordinary shutdown.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-09-14 00:00:42 -07:00
..
2026-09-14 00:00:42 -07:00