mirror of
https://github.com/spacedriveapp/spacedrive.git
synced 2025-12-11 20:15:30 +01:00
1019 B
1019 B
id, title, status, assignee, parent, priority, tags, whitepaper
| id | title | status | assignee | parent | priority | tags | whitepaper | ||
|---|---|---|---|---|---|---|---|---|---|
| JOB-001 | Job Manager for Task Scheduling | Done | james | JOB-000 | High |
|
Section 4.4 |
Description
A JobManager will be implemented for each library to schedule, execute, and monitor background tasks. It will be built on top of a generic TaskSystem for concurrency management.
Implementation Notes
- The
JobManagerwill be defined insrc/infrastructure/jobs/manager.rs. - It maintains its own private database (
jobs.db) for storing job state, history, and checkpoints. - It is responsible for resuming interrupted jobs on startup.
- It provides APIs to
dispatch,pause, andresumejobs.
Acceptance Criteria
- Each library has its own
JobManagerinstance. - The manager can dispatch a new job and return a
JobHandle. - The manager can list jobs by status by querying both memory and its database.
- Interrupted jobs (e.g., from a crash) are correctly paused and can be resumed on next startup.