Overview
Role in the Commands Architecture
Within the CSP.LMC commands architecture, a client-issued
Long Running Command (LRC) is represented by a MainTask and
decomposed into a task tree composed of Task and LeafTask
instances.
These tasks may be executed across multiple CSP subsystems and may follow parallel or sequential execution patterns depending on the command semantics.
The Task Tracker operates as an observer and aggregator within this architecture, alongside the following components:
MainTask Composer, which constructs the task tree and defines execution structure and dependencies;
MainTask Executor, which drives the execution of tasks and leaf tasks.
While the Composer determines what is executed and the Executor controls when execution occurs, the Task Tracker is responsible for tracking how execution progresses and how it completes, independently of execution control.
Core Responsibilities
The Task Tracker provides a centralized view of LRC execution by:
collecting execution updates from tasks and subtasks;
tracking the lifecycle of a command from acceptance to termination;
aggregating task statuses and result codes into a single outcome;
computing and publishing overall command progress;
emitting exactly one authoritative completion notification;
enriching the completion outcome with execution context, such as:
failed devices,
aggregated health state,
normalized failure causes.
By separating execution control from execution observation, the Task Tracker ensures consistent, deterministic reporting of command outcomes, even in the presence of partial failures or subsystem-specific error conditions.