Skip to main content

Module dispatch

Module dispatch 

Source
Expand description

Resource-aware indexing scheduler (RFC-036 §5–§16).

The Scheduler is the single entry point for all background indexing work. It:

  • routes jobs into typed bounded queues;
  • enforces backpressure when queues are full;
  • tracks resource mode (Normal / UserActive / Paused);
  • dispatches one job per tick() call, skipping embedding in UserActive mode (RFC-036 §9.2);
  • emits SchedulerEvents the app layer uses to update the UI;
  • persists job state to the catalog for crash recovery (RFC-036 §16).

Execution model: synchronous, single-threaded. This matches the existing run_pending model and the snora/iced GUI thread contract. Async dispatch can be layered on top in a future RFC.

Structs§

Scheduler
The resource-aware scheduler (RFC-036 §5–§16).