octomy::trove::TroveSupervisor

Assembles one project's Trove engine into a single running unit (§OR-1).

Declared in src/libs/libtrove/trove/TroveSupervisor.hpp
Inherits QObject
Group libtrove

Detailed description

The constructor builds a BatchQueue, optionally durable through an IBatchStore (§BP), and a BatchDispatcher that runs the TroveSessionWorker. The worker starts sessions through a SessionManager and parks rate-limited jobs on the Scheduler, which resumes them after the reset (§OR-5). start() enables dispatch, the idle-session reaper and the scheduler tick; stop() halts all three and shuts every live session down.

TroveProjectManager creates one supervisor per project and holds it in a QSharedPointer. The class does not depend on a Node, so tests construct it headless. Operator work enters through enqueuePlan() and dispatchWorkUnit(); cancel(), intervene() and the other operator actions reach a running job through the SessionManager.