3.1 KiB
3.1 KiB
Pack Run Execution Engine
Module
TaskRunner
Status
IMPLEMENTED
Description
Full execution engine with graph-based execution planning, step state machine, and processor for running task packs.
Implementation Details
- Processor:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/PackRunProcessor.cs-- main execution engine processor - Processor result:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/PackRunProcessorResult.cs-- execution result model - Execution graph:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/PackRunExecutionGraph.cs-- DAG-based execution planning - Graph builder:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/PackRunExecutionGraphBuilder.cs-- builds execution graphs from manifests - Step state machine:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/PackRunStepStateMachine.cs-- state transitions for individual steps - Step executor interface:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/IPackRunStepExecutor.cs-- step execution contract - Execution context:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/PackRunExecutionContext.cs-- runtime context for execution - State management:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/PackRunState.cs,PackRunStateFactory.cs-- execution state tracking - Job dispatcher:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/IPackRunJobDispatcher.cs,IPackRunJobScheduler.cs-- job scheduling and dispatch - Simulation engine:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/Simulation/PackRunSimulationEngine.cs,PackRunSimulationModels.cs-- dry-run simulation - Telemetry:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Core/Execution/TaskRunnerTelemetry.cs-- execution metrics - Worker service:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Worker/Services/PackRunWorkerService.cs-- background worker - Infrastructure: file-based and no-op step executors, dispatchers, artifact uploaders under
StellaOps.TaskRunner.Infrastructure/Execution/ - Postgres state store:
src/TaskRunner/__Libraries/StellaOps.TaskRunner.Persistence/Postgres/Repositories/PostgresPackRunStateStore.cs,PostgresPackRunLogStore.cs - Tests:
src/TaskRunner/StellaOps.TaskRunner/StellaOps.TaskRunner.Tests/PackRunProcessorTests.cs,PackRunExecutionGraphBuilderTests.cs,PackRunStepStateMachineTests.cs,PackRunStateFactoryTests.cs,PackRunSimulationEngineTests.cs - Source: Feature matrix scan
E2E Test Plan
- Verify execution graph correctly orders steps based on dependencies
- Test step state machine transitions (pending -> running -> completed/failed)
- Verify processor handles step failures with configured retry/abort behavior
- Test simulation engine produces accurate dry-run results
- Verify execution state persists across service restarts