semi implemented and features implemented save checkpoint

This commit is contained in:
master
2026-02-08 18:00:49 +02:00
parent 04360dff63
commit 1bf6bbf395
20895 changed files with 716795 additions and 64 deletions

View File

@@ -0,0 +1,27 @@
# A/B Release Manager (Traffic Splitting Between Versions)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
A/B release management for running parallel control/treatment versions with configurable traffic weight distribution, experiment metrics tracking, and promote/rollback based on results.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/AbRelease/`
- **Key Classes**:
- `AbReleaseManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/AbRelease/AbReleaseManager.cs`) - manages A/B release lifecycle with traffic weight distribution
- `InMemoryAbReleaseStore` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/AbRelease/InMemoryAbReleaseStore.cs`) - in-memory store for A/B release state
- `TrafficRouterRegistry` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Routing/TrafficRouterRegistry.cs`) - registry of traffic routers for A/B splits
- `InMemoryTrafficRouter` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Routing/InMemoryTrafficRouter.cs`) - in-memory traffic routing implementation
- **Interfaces**: `IAbReleaseManager`, `IAbReleaseStore`, `ITrafficRouter`
- **Source**: SPRINT_20260110_110_001_PROGDL_ab_release_manager.md
## E2E Test Plan
- [ ] Create an A/B release with 80/20 traffic split and verify both versions receive traffic at configured weights
- [ ] Verify promote: promote the treatment version and confirm all traffic shifts to it
- [ ] Verify rollback: rollback the A/B release and confirm all traffic returns to control version
- [ ] Verify `AbReleaseManager` tracks experiment metrics during the A/B test period
- [ ] Verify invalid state transitions are rejected (e.g., promoting an already-concluded experiment)

View File

@@ -0,0 +1,26 @@
# A/B Testing Experiment Engine
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
A/B testing experiment engine with deterministic variant assignment, p-value statistical analysis, and experiment lifecycle management for controlled rollouts.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/`
- **Key Classes**:
- `AbReleaseManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/AbRelease/AbReleaseManager.cs`) - experiment lifecycle management with variant assignment
- `CanaryController` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/CanaryController.cs`) - statistical analysis and auto-advance logic for experiments
- `TrafficManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/TrafficManager.cs`) - manages traffic distribution between experiment variants
- `FeatureFlagBridge` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/FeatureFlags/FeatureFlagBridge.cs`) - bridges feature flags with experiment variants
- **Source**: SPRINT_20260117_035
## E2E Test Plan
- [ ] Create an experiment with control and treatment variants and verify deterministic variant assignment
- [ ] Verify statistical analysis: collect metrics during experiment and verify p-value calculation
- [ ] Verify experiment lifecycle: create, start, observe, conclude experiment through full lifecycle
- [ ] Verify early stopping: trigger statistical significance threshold and verify auto-conclusion
- [ ] Verify `FeatureFlagBridge` maps experiment variants to feature flag states

View File

@@ -0,0 +1,27 @@
# Agent Cluster Manager with HA Topologies
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Agent clustering with support for multiple HA topologies (ActivePassive, ActiveActive, Sharded), leader election, health monitoring, and automatic failover for release orchestrator agents.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/`
- **Key Classes**:
- `AgentClusterManager` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/AgentClusterManager.cs`) - manages agent clusters with configurable HA topologies
- `LeaderElection` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/LeaderElection.cs`) - leader election for ActivePassive topology
- `FailoverManager` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/FailoverManager.cs`) - automatic failover when leader becomes unhealthy
- `HealthMonitor` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/HealthMonitor.cs`) - monitors cluster member health
- `StateSync` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/StateSync.cs`) - state synchronization between cluster members
- **Source**: SPRINT_20260117_034
## E2E Test Plan
- [ ] Configure a 3-node ActivePassive cluster and verify leader election produces a single leader
- [ ] Verify failover: stop the leader node and confirm a new leader is elected within the timeout
- [ ] Verify ActiveActive topology: configure two active nodes and confirm both accept tasks
- [ ] Verify health monitoring: unhealthy node is detected and removed from the active set
- [ ] Verify state synchronization: cluster state converges after a node rejoins

View File

@@ -0,0 +1,30 @@
# Agent Core Runtime with gRPC Communication
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Foundational agent host process with gRPC server for task reception, heartbeat service for health reporting, credential resolution at runtime, log streaming to orchestrator, and capability registration system.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/`
- **Key Classes**:
- `AgentHost` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Hosting/AgentHost.cs`) - main agent host process lifecycle
- `HeartbeatService` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Services/HeartbeatService.cs`) - periodic health heartbeat reporting
- `LogStreamer` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Services/LogStreamer.cs`) - streams agent logs to orchestrator
- `CapabilityRegistry` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Capability/CapabilityRegistry.cs`) - registers agent capabilities (Docker, Compose, ECS, etc.)
- `CredentialResolver` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Credentials/CredentialResolver.cs`) - resolves credentials at runtime
- `TaskExecutor` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Execution/TaskExecutor.cs`) - executes tasks received via gRPC
- `AgentConfiguration` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Configuration/AgentConfiguration.cs`) - agent configuration management
- **Interfaces**: `IAgentCapability`, `IOrchestratorClient`, `ICredentialProvider`, `IAgentServer`
- **Source**: SPRINT_20260110_108_001_AGENTS_core_runtime.md
## E2E Test Plan
- [ ] Start an agent host and verify it registers capabilities via `CapabilityRegistry`
- [ ] Verify heartbeat: agent sends periodic heartbeats and orchestrator receives them
- [ ] Verify task reception: send a task via gRPC and confirm `TaskExecutor` processes it
- [ ] Verify log streaming: agent logs are streamed to orchestrator via `LogStreamer`
- [ ] Verify credential resolution: task requiring credentials resolves them via `CredentialResolver`

View File

@@ -0,0 +1,32 @@
# Agent Lifecycle Operations (Auto-Update, Certificate Management, Configuration, Bootstrap, Doctor, Remediation)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Comprehensive agent lifecycle system: auto-update with staged rollouts and DSSE-signed bundles, mTLS certificate provisioning and renewal, configuration management with server-side push and drift detection, zero-touch bootstrap with time-limited tokens, 11 diagnostic health checks (Doctor), and guided remediation engine with pattern-based auto-fix and dry-run support.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/`
- **Key Classes**:
- `AgentUpdateManager` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Updates/AgentUpdateManager.cs`) - auto-update with staged rollouts and DSSE-signed bundles
- `AgentCertificateManager` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Certificates/AgentCertificateManager.cs`) - mTLS certificate provisioning and renewal
- `AgentConfigManager` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Configuration/AgentConfigManager.cs`) - configuration management with drift detection
- `BootstrapService` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Bootstrap/BootstrapService.cs`) - zero-touch bootstrap with time-limited tokens
- `BootstrapTokenService` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Bootstrap/BootstrapTokenService.cs`) - token generation for bootstrap
- `AgentDoctor` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Doctor/AgentDoctor.cs`) - diagnostic health checks
- `RemediationEngine` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Doctor/RemediationEngine.cs`) - pattern-based auto-fix with dry-run support
- `RemediationPatterns` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Doctor/Patterns/RemediationPatterns.cs`) - remediation pattern definitions
- `AgentHealthChecks` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Doctor/Checks/AgentHealthChecks.cs`) - 11 diagnostic health check implementations
- **Source**: SPRINT_20260117_041_ReleaseOrchestrator_agent_operations.md
## E2E Test Plan
- [ ] Bootstrap an agent with a time-limited token and verify it registers and obtains certificates
- [ ] Verify auto-update: deploy a new agent version and confirm staged rollout to registered agents
- [ ] Verify certificate renewal: agent with expiring certificate automatically renews before expiry
- [ ] Verify `AgentDoctor` runs all 11 health checks and produces a diagnostic report
- [ ] Verify remediation: trigger a known failure pattern and confirm `RemediationEngine` applies the auto-fix
- [ ] Verify dry-run: run remediation in dry-run mode and confirm no changes are applied

View File

@@ -0,0 +1,30 @@
# Agent Manager with Certificate-Based Registration and Heartbeat
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Agent registration system with one-time token generation, certificate issuance, heartbeat processing, capability registration, and agent lifecycle management (active/inactive/revoked). Manages secure deployment executors on target hosts.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Agent/`
- **Key Classes**:
- `AgentManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Agent/Manager/AgentManager.cs`) - server-side agent lifecycle management (register, deactivate, revoke)
- `HeartbeatProcessor` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Agent/Heartbeat/HeartbeatProcessor.cs`) - processes agent heartbeats and updates status
- `HeartbeatTimeoutMonitor` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Agent/Heartbeat/HeartbeatTimeoutMonitor.cs`) - detects agents that miss heartbeat deadlines
- `RegistrationTokenService` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Agent/Registration/RegistrationTokenService.cs`) - generates one-time registration tokens
- `StubAgentCertificateService` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Agent/Certificate/StubAgentCertificateService.cs`) - certificate issuance for agent registration
- `InMemoryAgentStore` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Agent/Store/InMemoryAgentStore.cs`) - in-memory agent state store
- **Models**: `Agent`, `AgentHeartbeat`, `AgentCertificate`, `AgentTask`, `RegistrationToken` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Agent/Models/`)
- **Interfaces**: `IAgentManager`, `IHeartbeatProcessor`, `IAgentCertificateService`, `IAgentStore`
- **Source**: SPRINT_20260110_103_003_ENVMGR_agent_manager.md
## E2E Test Plan
- [ ] Generate a registration token and use it to register a new agent, verifying certificate is issued
- [ ] Verify heartbeat processing: agent sends heartbeat and `HeartbeatProcessor` updates agent status to active
- [ ] Verify timeout detection: stop sending heartbeats and confirm `HeartbeatTimeoutMonitor` marks agent as inactive
- [ ] Verify lifecycle transitions: register, deactivate, and revoke an agent through the full lifecycle
- [ ] Verify one-time token: attempt to reuse a registration token and confirm it is rejected

View File

@@ -0,0 +1,28 @@
# Agent Self-Healing and Auto-Scaling with Infrastructure Health Monitoring
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Self-healing engine that monitors health, orchestrates multi-step recovery from failures, auto-scales agent instances based on load metrics/queue depth/latency, anomaly detection with threshold alerting, and state synchronization via vector clocks and gossip protocol.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.SelfHealing/`
- **Key Classes**:
- `SelfHealer` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/SelfHealer.cs`) - self-healing engine with multi-step recovery orchestration
- `HealthMonitor` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/HealthMonitor.cs`) - infrastructure health monitoring with anomaly detection
- `FailoverManager` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/FailoverManager.cs`) - automatic failover management
- `StateSync` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/StateSync.cs`) - state synchronization via vector clocks and gossip protocol
- `DurableTaskQueue` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Core/Resilience/DurableTaskQueue.cs`) - durable task queue surviving agent restarts
- **Interfaces**: `ISelfHealer`
- **Source**: SPRINT_20260117_034, SPRINT_20260117_040_ReleaseOrchestrator_self_healing.md
## E2E Test Plan
- [ ] Simulate a health failure and verify `SelfHealer` executes multi-step recovery
- [ ] Verify auto-scaling: increase queue depth beyond threshold and confirm new agent instances are requested
- [ ] Verify anomaly detection: inject latency spikes and confirm threshold alerting triggers
- [ ] Verify state synchronization: restart an agent node and confirm it synchronizes state via gossip protocol
- [ ] Verify durable task queue: restart an agent during task execution and confirm pending tasks survive

View File

@@ -0,0 +1,25 @@
# Approval Gateway with Multi-Approver and Separation of Duties
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Approval workflow engine enforcing separation of duties (requester != approver), multi-approver requirements (N of M), group-based eligibility checking, approval history tracking, notification integration, and governance controls for release promotions.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Approval/`
- **Key Classes**:
- `ApprovalGateway` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Approval/ApprovalGateway.cs`) - approval workflow engine with multi-approver and group eligibility
- `SeparationOfDutiesEnforcer` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Approval/SeparationOfDutiesEnforcer.cs`) - enforces requester != approver constraint
- **Interfaces**: `IApprovalGateway`, `ISeparationOfDutiesEnforcer`
- **Source**: SPRINT_20260110_106_002_PROMOT_approval_gateway.md
## E2E Test Plan
- [ ] Submit an approval request and verify `SeparationOfDutiesEnforcer` rejects the requester from self-approving
- [ ] Verify multi-approver: configure N of M requirement and verify approval is granted only after N approvals
- [ ] Verify group eligibility: configure group-based approval and verify only group members can approve
- [ ] Verify approval history: approve a request and confirm the approval record is persisted with timestamps
- [ ] Verify rejection: deny an approval and confirm the promotion is blocked

View File

@@ -0,0 +1,24 @@
# Audit Exporter (Multi-Format Compliance Reports)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Audit export system generating compliance reports from signed evidence packets in multiple formats: JSON (machine processing), PDF (human-readable), CSV (spreadsheet), and SLSA provenance format. Supports batch export for audit periods.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Evidence/Export/`
- **Key Classes**:
- `AuditExporter` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Evidence/Export/AuditExporter.cs`) - multi-format audit export (JSON, PDF, CSV, SLSA provenance)
- **Interfaces**: `IAuditExporter`
- **Source**: SPRINT_20260110_109_004_RELEVI_audit_exporter.md
## E2E Test Plan
- [ ] Export audit records in JSON format and verify the output contains signed evidence packets
- [ ] Export audit records in CSV format and verify spreadsheet-compatible output
- [ ] Verify SLSA provenance format export produces valid SLSA provenance documents
- [ ] Verify batch export: specify an audit period and confirm all records within the range are included
- [ ] Verify empty period: export for a period with no records and confirm empty but valid output

View File

@@ -0,0 +1,27 @@
# Audit Query Engine with Scheduled Reporting and Evidence Visualization
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Query engine for audit evidence with time-range filtering, framework scoping, aggregation capabilities, cron-based scheduled compliance report generation and distribution, evidence chain visualization (Graph/DOT/Mermaid/CSV formats), and automated control validation against requirements.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/`
- **Key Classes**:
- `AuditQueryEngine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/AuditQueryEngine.cs`) - query engine with time-range filtering and framework scoping
- `ScheduledReportService` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/ScheduledReportService.cs`) - cron-based scheduled report generation and distribution
- `EvidenceChainVisualizer` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/EvidenceChainVisualizer.cs`) - evidence chain visualization in Graph/DOT/Mermaid/CSV formats
- `ControlValidator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/ControlValidator.cs`) - automated control validation against compliance requirements
- `ReportGenerator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/ReportGenerator.cs`) - multi-format report generation
- **Source**: SPRINT_20260117_039_ReleaseOrchestrator_compliance.md
## E2E Test Plan
- [ ] Query audit evidence with a time-range filter and verify only records within the range are returned
- [ ] Verify framework scoping: query with SOC2 framework filter and confirm only SOC2-relevant controls are returned
- [ ] Verify scheduled reporting: configure a cron schedule and confirm reports are generated automatically
- [ ] Verify evidence visualization: generate a Mermaid diagram of the evidence chain and verify it renders correctly
- [ ] Verify control validation: run `ControlValidator` against a set of controls and confirm gap analysis output

View File

@@ -0,0 +1,26 @@
# Automated Drift Remediation Engine
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Automated drift remediation engine with severity scoring, rate limiting, circuit breaker patterns, and reconciliation scheduling that can automatically apply fixes for configuration drift detected between environments.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Inventory/Remediation/`
- **Key Classes**:
- `RemediationEngine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Inventory/Remediation/RemediationEngine.cs`) - automated drift remediation with severity scoring and circuit breaker patterns
- `DriftDetector` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Inventory/DriftDetector.cs`) - detects configuration drift between expected and actual state
- `InventorySyncService` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Inventory/InventorySyncService.cs`) - synchronizes inventory state with target environments
- **Interfaces**: `IDriftDetector`, `IInventorySyncService`
- **Source**: SPRINT_20260117_031
## E2E Test Plan
- [ ] Detect a configuration drift and verify `RemediationEngine` generates a remediation plan with severity scores
- [ ] Verify auto-fix: apply the remediation plan and confirm the drift is resolved
- [ ] Verify rate limiting: trigger multiple remediations in rapid succession and confirm rate limiting kicks in
- [ ] Verify circuit breaker: simulate repeated remediation failures and confirm the circuit breaker opens
- [ ] Verify reconciliation scheduling: configure a schedule and confirm drift checks run automatically

View File

@@ -0,0 +1,32 @@
# AWS ECS Deployment Agent
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
ECS agent capability for AWS Elastic Container Service deployments: service create/update/delete, task execution, task definition registration, service scaling, deployment health monitoring, and CloudWatch log streaming. Supports Fargate and EC2 launch types.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Ecs/`
- **Key Classes**:
- `EcsCapability` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Ecs/EcsCapability.cs`) - `IAgentCapability` implementation for ECS deployments
- `EcsDeployServiceTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Ecs/Tasks/EcsDeployServiceTask.cs`) - deploys/updates ECS services
- `EcsRegisterTaskDefinitionTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Ecs/Tasks/EcsRegisterTaskDefinitionTask.cs`) - registers ECS task definitions
- `EcsScaleServiceTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Ecs/Tasks/EcsScaleServiceTask.cs`) - scales ECS services
- `EcsHealthCheckTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Ecs/Tasks/EcsHealthCheckTask.cs`) - deployment health monitoring
- `EcsRunTaskTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Ecs/Tasks/EcsRunTaskTask.cs`) - runs one-off ECS tasks
- `EcsStopTaskTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Ecs/Tasks/EcsStopTaskTask.cs`) - stops ECS tasks
- `EcsDescribeServiceTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Ecs/Tasks/EcsDescribeServiceTask.cs`) - describes ECS service status
- `CloudWatchLogStreamer` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Ecs/CloudWatchLogStreamer.cs`) - streams CloudWatch logs to orchestrator
- **Interfaces**: `IEcsTask`, `IAgentCapability`
- **Source**: SPRINT_20260110_108_006_AGENTS_ecs.md
## E2E Test Plan
- [ ] Register an ECS task definition via `EcsRegisterTaskDefinitionTask` and verify it is created in AWS
- [ ] Deploy an ECS service via `EcsDeployServiceTask` and verify the service is running
- [ ] Scale the service via `EcsScaleServiceTask` and verify desired count changes
- [ ] Verify health check: `EcsHealthCheckTask` reports service health status
- [ ] Verify CloudWatch log streaming: deployment logs are streamed to the orchestrator

View File

@@ -0,0 +1,28 @@
# Built-in Workflow Steps (Script, Approval, Notify, Wait, Security Gate, Deploy, Rollback)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Seven core built-in workflow step types for v1: script (shell execution), approval (manual gates), notify (notifications), wait (time delays), security-gate (vulnerability checks), deploy (trigger deployments), and rollback (revert releases).
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Steps.BuiltIn/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/`
- **Key Classes**:
- `SecurityGateStepProvider` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Steps.BuiltIn/SecurityGateStepProvider.cs`) - built-in security gate workflow step
- `StepExecutor` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Executor/StepExecutor.cs`) - executes workflow steps
- `SecurityGate` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/Security/SecurityGate.cs`) - `IGateProvider` for vulnerability checks
- `PolicyGate` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/BuiltIn/PolicyGate.cs`) - `IGateProvider` for policy checks
- **Interfaces**: `IStepExecutor`, `IGateProvider`
- **Source**: SPRINT_20260110_105_005_WORKFL_builtin_steps.md
## E2E Test Plan
- [ ] Execute a script step and verify shell command output is captured
- [ ] Execute an approval step and verify the workflow pauses until approval is granted
- [ ] Execute a security-gate step and verify vulnerability check results are evaluated
- [ ] Execute a wait step with a 5-second delay and verify the workflow resumes after the delay
- [ ] Execute a deploy step and verify it triggers a deployment to the target environment
- [ ] Execute a rollback step and verify the previous version is restored

View File

@@ -0,0 +1,27 @@
# Canary Deployment Controller with Auto-Advance, Statistical Analysis, and Auto-Rollback
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Canary controller for gradual traffic promotion through configurable steps (e.g., 5% -> 10% -> 25% -> 50% -> 100%) with multiple progression strategies (linear, exponential, fibonacci). Auto-advances based on statistical metrics analysis, auto-rolls back on metric threshold breaches, supports manual intervention and configurable promotion schedules.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Canary/`
- **Key Classes**:
- `CanaryController` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/CanaryController.cs`) - canary controller with statistical analysis and auto-advance/rollback
- `CanaryController` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Canary/CanaryController.cs`) - canary controller implementation
- `TrafficManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/TrafficManager.cs`) - manages traffic distribution during canary phases
- `CanaryDeploymentStrategy` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Orchestrator/RollingDeploymentStrategy.cs`) - canary deployment strategy implementation
- **Interfaces**: `ICanaryController`, `ITrafficManager`, `IDeploymentStrategy`
- **Source**: SPRINT_20260110_110_003_PROGDL_canary_controller.md
## E2E Test Plan
- [ ] Start a canary deployment with 5% initial traffic and verify only 5% of traffic goes to the canary
- [ ] Verify auto-advance: metrics remain healthy and traffic automatically advances to the next step (10%)
- [ ] Verify auto-rollback: inject a metric threshold breach and confirm traffic rolls back to 0% canary
- [ ] Verify progression strategies: configure fibonacci progression and verify steps follow 5%, 8%, 13%, 21%, ...
- [ ] Verify manual intervention: pause auto-advance and manually promote the canary

View File

@@ -0,0 +1,29 @@
# Centralized Release Control Plane for Non-K8s
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
The pivot from vulnerability scanning platform to release control plane is reflected in the implemented ReleaseOrchestrator module with promotions, deployments, and environment management.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/`
- **Key Classes**:
- `ReleaseCatalog` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Catalog/ReleaseCatalog.cs`) - release catalog with status lifecycle
- `ReleaseStatusMachine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Catalog/ReleaseStatusMachine.cs`) - state machine for release lifecycle
- `DecisionEngine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Decision/DecisionEngine.cs`) - promotion decision engine
- `DeployOrchestrator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Orchestrator/DeployOrchestrator.cs`) - deployment orchestration
- `TargetRegistry` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Target/TargetRegistry.cs`) - registry of deployment targets
- `ReleaseStatusService` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Core/Services/ReleaseStatusService.cs`) - release status queries
- **Interfaces**: `IReleaseCatalog`, `IDecisionEngine`, `IDeployOrchestrator`, `ITargetRegistry`, `IReleaseStatusService`
- **Source**: Feature matrix scan
## E2E Test Plan
- [ ] Create a release in the catalog and verify it progresses through the lifecycle (created -> promoted -> deployed)
- [ ] Verify promotion decision: submit a release for promotion and verify `DecisionEngine` evaluates all gates
- [ ] Verify deployment: trigger deployment via `DeployOrchestrator` to a registered target
- [ ] Verify target registry: register a non-K8s target (Docker, Compose, ECS) and confirm it appears in the registry
- [ ] Verify release status: query `ReleaseStatusService` and confirm current status matches the lifecycle stage

View File

@@ -0,0 +1,27 @@
# Compliance Engine (SOC2/ISO27001/PCI-DSS/HIPAA/FedRAMP/GDPR with Framework Mapping and Reporting)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Multi-framework compliance engine that maps release controls to regulatory requirements across SOC2, ISO 27001, PCI-DSS, HIPAA, FedRAMP, and GDPR. Includes framework mapper for automated control alignment and gap analysis, multi-format report generation with evidence linking, and control implementation status tracking per framework.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/`
- **Key Classes**:
- `ComplianceEngine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/ComplianceEngine.cs`) - multi-framework compliance evaluation engine
- `FrameworkMapper` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/FrameworkMapper.cs`) - maps release controls to regulatory framework requirements
- `ControlValidator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/ControlValidator.cs`) - validates control implementation status
- `ReportGenerator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Compliance/ReportGenerator.cs`) - multi-format compliance report generation
- `ComplianceController` (`src/ReleaseOrchestrator/StellaOps.ReleaseOrchestrator.Api/Controllers/ComplianceController.cs`) - REST API for compliance queries
- **Source**: SPRINT_20260117_039_ReleaseOrchestrator_compliance.md
## E2E Test Plan
- [ ] Run compliance evaluation against SOC2 framework and verify control mapping output
- [ ] Verify gap analysis: identify unimplemented controls via `FrameworkMapper` for PCI-DSS
- [ ] Verify multi-framework: evaluate a release against both ISO 27001 and HIPAA simultaneously
- [ ] Verify report generation: generate a compliance report and verify evidence linking
- [ ] Verify API: call `ComplianceController` endpoint and verify compliance status response

View File

@@ -0,0 +1,24 @@
# Component Registry for Container Image Tracking
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Registry for tracking container images as deployable components with registry/repository metadata, component discovery from connected registries, label management, and component lifecycle (active/deprecated).
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Component/`
- **Key Classes**:
- `ComponentRegistry` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Component/ComponentRegistry.cs`) - registry for container image components with lifecycle management
- **Interfaces**: `IComponentRegistry`
- **Source**: SPRINT_20260110_104_001_RELMAN_component_registry.md
## E2E Test Plan
- [ ] Register a container image component and verify it appears in the registry
- [ ] Verify component discovery: connect a registry and verify components are auto-discovered
- [ ] Verify label management: add and remove labels on a component
- [ ] Verify lifecycle: deprecate a component and confirm it is marked as deprecated
- [ ] Verify metadata: query a component and confirm registry/repository metadata is returned

View File

@@ -0,0 +1,27 @@
# DAG-Based Workflow Engine with Parallel Execution
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
DAG executor for orchestrating workflow step execution with parallel and sequential support. Includes start/pause/resume/cancel operations, step retry/skip, workflow run state tracking, and checkpoint persistence.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/`
- **Key Classes**:
- `WorkflowEngine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Engine/WorkflowEngine.cs`) - DAG-based workflow engine with parallel execution support
- `StepExecutor` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Executor/StepExecutor.cs`) - executes individual workflow steps
- `NullStepExecutor` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Engine/NullStepExecutor.cs`) - no-op step executor for testing
- **Interfaces**: `IWorkflowEngine`, `IStepExecutor`
- **Source**: SPRINT_20260110_105_003_WORKFL_dag_executor.md
## E2E Test Plan
- [ ] Define a DAG workflow with parallel branches and verify steps execute concurrently
- [ ] Verify sequential execution: steps with dependencies execute in correct order
- [ ] Verify pause/resume: pause a running workflow and resume it, confirming state is preserved
- [ ] Verify cancel: cancel a workflow mid-execution and confirm all pending steps are cancelled
- [ ] Verify step retry: configure a step with retry policy and confirm it retries on failure
- [ ] Verify checkpoint persistence: restart the engine and confirm workflow resumes from the last checkpoint

View File

@@ -0,0 +1,28 @@
# Deployment Artifact Generator (Digest-Locked Compose Files and Version Stickers)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Generates immutable deployment artifacts for each deployment: digest-locked compose files (compose.stella.lock.yml with image@digest pinning and stella labels), version sticker files (stella.version.json with release metadata), and full deployment manifests. All artifacts are deterministic and stored for audit.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Artifact/`
- **Key Classes**:
- `ArtifactGenerator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Artifact/ArtifactGenerator.cs`) - generates immutable deployment artifacts
- `ComposeLockGenerator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Artifact/ComposeLockGenerator.cs`) - generates digest-locked compose files (compose.stella.lock.yml)
- `DeploymentManifestGenerator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Artifact/DeploymentManifestGenerator.cs`) - generates full deployment manifests
- `VersionStickerGenerator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Artifact/VersionStickerGenerator.cs`) - generates version sticker files (stella.version.json)
- **Models**: `DeploymentManifest`, `VersionSticker`, `VersionStickerRelease`, `VersionStickerDeployment`, `VersionStickerComponent` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Artifact/Models/`)
- **Interfaces**: `IArtifactGenerator`
- **Source**: SPRINT_20260110_107_003_DEPLOY_artifact_generator.md
## E2E Test Plan
- [ ] Generate a compose lock file and verify all image references are pinned to digests (image@sha256:...)
- [ ] Generate a version sticker and verify it contains release metadata, deployment info, and component versions
- [ ] Generate a deployment manifest and verify it combines compose lock and version sticker
- [ ] Verify determinism: generate artifacts twice with same input and confirm identical output
- [ ] Verify audit storage: confirm generated artifacts are persisted for audit retrieval

View File

@@ -0,0 +1,30 @@
# Deployment Execution to Non-K8s Targets
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Deployment orchestration with manifest generation and artifact creation for non-Kubernetes targets is implemented.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/`, `src/ReleaseOrchestrator/__Agents/`
- **Key Classes**:
- `DeployOrchestrator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Orchestrator/DeployOrchestrator.cs`) - deployment orchestration to non-K8s targets
- `AgentDispatcher` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Executor/AgentDispatcher.cs`) - dispatches deployment tasks to agents
- `TargetExecutor` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Executor/TargetExecutor.cs`) - executes deployments on specific targets
- `TaskResultCollector` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Executor/TaskResultCollector.cs`) - collects deployment task results
- `RollingDeploymentStrategy` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Orchestrator/RollingDeploymentStrategy.cs`) - rolling deployment strategy
- `CanaryDeploymentStrategy` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Orchestrator/RollingDeploymentStrategy.cs`) - canary deployment strategy
- **Agents**: Docker, Compose, ECS, Nomad, SSH, WinRM (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.*/`)
- **Interfaces**: `IDeployOrchestrator`, `IDeploymentStrategy`, `ITargetExecutor`
- **Source**: Feature matrix scan
## E2E Test Plan
- [ ] Deploy to a Docker target via `DeployOrchestrator` and verify containers are running
- [ ] Deploy to a Compose target and verify the stack is up
- [ ] Verify rolling deployment: deploy with rolling strategy and confirm batch progression
- [ ] Verify `AgentDispatcher` dispatches tasks to the correct agent based on target type
- [ ] Verify `TaskResultCollector` aggregates results from multiple deployment tasks

View File

@@ -0,0 +1,30 @@
# Deployment Rollback Manager with Automated Failure Recovery
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Automated deployment rollback system that plans rollback strategies for failed deployments, executes rollback to previous releases across multiple targets, tracks rollback progress, and generates rollback evidence. Supports RedeployPrevious, RestoreSnapshot, and Manual strategies.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/`
- **Key Classes**:
- `RollbackManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/RollbackManager.cs`) - orchestrates rollback execution across targets
- `RollbackPlanner` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/RollbackPlanner.cs`) - plans rollback strategy (RedeployPrevious, RestoreSnapshot, Manual)
- `PartialRollbackPlanner` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/PartialRollbackPlanner.cs`) - plans partial rollbacks for subset of targets
- `RollbackEvidenceGenerator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/RollbackEvidenceGenerator.cs`) - generates audit evidence for rollback actions
- `HealthAnalyzer` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/HealthAnalyzer.cs`) - analyzes deployment health to trigger rollback
- `ImpactAnalyzer` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/ImpactAnalyzer.cs`) - analyzes rollback impact before execution
- **Interfaces**: `IRollbackManager`, `IPartialRollbackPlanner`, `IHealthAnalyzer`, `IImpactAnalyzer`
- **Source**: SPRINT_20260110_107_004_DEPLOY_rollback_manager.md
## E2E Test Plan
- [ ] Trigger a rollback via `RollbackManager` and verify the previous release is restored
- [ ] Verify `RollbackPlanner` selects RedeployPrevious strategy when previous release is available
- [ ] Verify partial rollback: roll back only a subset of targets using `PartialRollbackPlanner`
- [ ] Verify `HealthAnalyzer` detects unhealthy deployment and triggers automatic rollback
- [ ] Verify `ImpactAnalyzer` estimates rollback impact before execution
- [ ] Verify `RollbackEvidenceGenerator` produces audit evidence for the rollback action

View File

@@ -0,0 +1,26 @@
# Digest-First Version Manager for Container Images
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Version management system with digest-first identity: resolves tags to immutable digests, tracks component versions with metadata, watches for new versions from registries, and supports semantic versioning extraction.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Component/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Artifact/`
- **Key Classes**:
- `ComponentRegistry` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Component/ComponentRegistry.cs`) - tracks component versions with digest-first identity
- `VersionStickerGenerator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Artifact/VersionStickerGenerator.cs`) - generates version stickers with digest metadata
- `ComposeLockGenerator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Artifact/ComposeLockGenerator.cs`) - pins image tags to digests in compose files
- **Interfaces**: `IComponentRegistry`
- **Source**: SPRINT_20260110_104_002_RELMAN_version_manager.md
## E2E Test Plan
- [ ] Register a container image by tag and verify the system resolves it to an immutable digest
- [ ] Verify version tracking: register multiple versions and verify version history is maintained
- [ ] Verify semantic versioning: register an image with semver tag (v1.2.3) and verify version metadata extraction
- [ ] Verify new version detection: push a new tag to the registry and verify the system detects it
- [ ] Verify digest immutability: all references use sha256 digests, not mutable tags

View File

@@ -0,0 +1,32 @@
# Docker Compose Deployment Agent
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Compose agent capability for docker-compose stack management: pull, up, down, scale, health-check operations. Includes compose file management with digest-locked image references.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Compose/`
- **Key Classes**:
- `ComposeCapability` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Compose/ComposeCapability.cs`) - `IAgentCapability` implementation for Compose stack management
- `ComposeExecutor` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Compose/ComposeExecutor.cs`) - executes docker-compose commands
- `ComposeFileManager` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Compose/ComposeFileManager.cs`) - manages compose files with digest-locked references
- `ComposePullTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Compose/Tasks/ComposePullTask.cs`) - pulls images for compose stack
- `ComposeUpTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Compose/Tasks/ComposeUpTask.cs`) - brings up compose stack
- `ComposeDownTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Compose/Tasks/ComposeDownTask.cs`) - tears down compose stack
- `ComposeScaleTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Compose/Tasks/ComposeScaleTask.cs`) - scales compose services
- `ComposeHealthCheckTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Compose/Tasks/ComposeHealthCheckTask.cs`) - health check for compose services
- `ComposePsTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Compose/Tasks/ComposePsTask.cs`) - lists compose service status
- **Interfaces**: `IComposeTask`, `IAgentCapability`
- **Source**: SPRINT_20260110_108_003_AGENTS_compose.md
## E2E Test Plan
- [ ] Pull images via `ComposePullTask` and verify all images are pulled
- [ ] Bring up a compose stack via `ComposeUpTask` and verify all services are running
- [ ] Scale a service via `ComposeScaleTask` and verify the desired replica count
- [ ] Health check via `ComposeHealthCheckTask` and verify service health status
- [ ] Tear down via `ComposeDownTask` and verify all services are stopped

View File

@@ -0,0 +1,32 @@
# Docker Deployment Agent
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Docker agent capability for standalone container management: pull, run, stop, remove, health-check, and log streaming operations on target hosts with registry authentication.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Docker/`
- **Key Classes**:
- `DockerCapability` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Docker/DockerCapability.cs`) - `IAgentCapability` implementation for Docker container management
- `DockerClientFactory` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Docker/DockerClientFactory.cs`) - creates Docker API clients with registry auth
- `DockerPullTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Docker/Tasks/DockerPullTask.cs`) - pulls container images
- `DockerRunTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Docker/Tasks/DockerRunTask.cs`) - runs containers
- `DockerStopTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Docker/Tasks/DockerStopTask.cs`) - stops containers
- `DockerRemoveTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Docker/Tasks/DockerRemoveTask.cs`) - removes containers
- `DockerHealthCheckTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Docker/Tasks/DockerHealthCheckTask.cs`) - health checks
- `DockerLogsTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Docker/Tasks/DockerLogsTask.cs`) - streams container logs
- `ContainerLogStreamer` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Docker/ContainerLogStreamer.cs`) - real-time container log streaming
- **Interfaces**: `IDockerTask`, `IAgentCapability`
- **Source**: SPRINT_20260110_108_002_AGENTS_docker.md
## E2E Test Plan
- [ ] Pull a container image via `DockerPullTask` and verify the image is available locally
- [ ] Run a container via `DockerRunTask` and verify it starts successfully
- [ ] Health check via `DockerHealthCheckTask` and verify container health status
- [ ] Stream logs via `DockerLogsTask` and verify log output is captured
- [ ] Stop and remove the container via `DockerStopTask` and `DockerRemoveTask`

View File

@@ -0,0 +1,24 @@
# Feature Flag Bridge (Multi-Provider)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Feature flag bridge integrating with external providers (LaunchDarkly, Split, Unleash, Flagsmith, ConfigCat) for progressive delivery flag-based rollouts coordinated with the release orchestrator.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/FeatureFlags/`
- **Key Classes**:
- `FeatureFlagBridge` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/FeatureFlags/FeatureFlagBridge.cs`) - coordinates flag-based rollouts with external providers
- **Interfaces**: `IFeatureFlagProvider` (provider abstraction for LaunchDarkly, Split, Unleash, Flagsmith, ConfigCat)
- **Source**: SPRINT_20260117_035
## E2E Test Plan
- [ ] Register an `IFeatureFlagProvider` and verify `FeatureFlagBridge` discovers and connects to it
- [ ] Create a flag-based rollout via the bridge and verify the provider receives the flag configuration
- [ ] Toggle a feature flag and verify the bridge propagates the state change to the progressive delivery pipeline
- [ ] Verify multi-provider scenario: register multiple providers and confirm the bridge routes flag operations correctly
- [ ] Verify error handling when a provider is unreachable or returns an error

View File

@@ -0,0 +1,32 @@
# HashiCorp Nomad Deployment Agent
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Nomad agent capability for HashiCorp Nomad job deployments: register/run/stop jobs, scaling, deployment monitoring, allocation tracking, log streaming. Supports multiple task drivers (docker, raw_exec, java).
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Nomad/`
- **Key Classes**:
- `NomadCapability` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Nomad/NomadCapability.cs`) - `IAgentCapability` implementation for Nomad job management
- `NomadClient` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Nomad/Client/NomadClient.cs`) - HTTP client for Nomad API communication
- `NomadDeployJobTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Nomad/Tasks/NomadDeployJobTask.cs`) - registers and deploys Nomad jobs
- `NomadDispatchJobTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Nomad/Tasks/NomadDispatchJobTask.cs`) - dispatches parameterized batch jobs
- `NomadStopJobTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Nomad/Tasks/NomadStopJobTask.cs`) - stops running jobs
- `NomadScaleJobTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Nomad/Tasks/NomadScaleJobTask.cs`) - scales job task groups
- `NomadHealthCheckTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Nomad/Tasks/NomadHealthCheckTask.cs`) - checks job/allocation health
- `NomadJobStatusTask` (`src/ReleaseOrchestrator/__Agents/StellaOps.Agent.Nomad/Tasks/NomadJobStatusTask.cs`) - queries job and deployment status
- **Interfaces**: `INomadTask`, `INomadClient`, `IAgentCapability`
- **Source**: SPRINT_20260110_108_007_AGENTS_nomad.md
## E2E Test Plan
- [ ] Deploy a Nomad job via `NomadDeployJobTask` and verify it registers with the Nomad cluster
- [ ] Query job status via `NomadJobStatusTask` and verify allocation state
- [ ] Scale a job task group via `NomadScaleJobTask` and verify the desired count changes
- [ ] Health check via `NomadHealthCheckTask` and verify healthy allocation status
- [ ] Stop a job via `NomadStopJobTask` and verify all allocations are terminated
- [ ] Dispatch a parameterized job via `NomadDispatchJobTask` and verify execution

View File

@@ -0,0 +1,29 @@
# Intelligent Rollback System (Predictive + Metric-Driven)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Predictive rollback engine that forecasts deployment health trajectory using metrics from Prometheus/Datadog/CloudWatch, detects anomalies (Z-score, isolation forest), plans partial component-level rollbacks, and makes automated rollback decisions based on health analysis with baseline comparison.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/Intelligence/`, `src/ReleaseOrchestrator/__Apps/StellaOps.ReleaseOrchestrator.WebApi/Controllers/`
- **Key Classes**:
- `PredictiveEngine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/PredictiveEngine.cs`) - forecasts deployment health trajectory from metric streams
- `RollbackDecider` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/Intelligence/RollbackDecider.cs`) - automated rollback decision-making based on health analysis
- `AnomalyDetector` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/Intelligence/AnomalyDetector.cs`) - detects anomalies using Z-score and isolation forest algorithms
- `BaselineManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Rollback/Intelligence/BaselineManager.cs`) - manages metric baselines for comparison
- `RollbackIntelligenceController` (`src/ReleaseOrchestrator/__Apps/StellaOps.ReleaseOrchestrator.WebApi/Controllers/RollbackIntelligenceController.cs`) - REST API for rollback intelligence operations
- **Interfaces**: `IPredictiveEngine`
- **Source**: SPRINT_20260117_033
## E2E Test Plan
- [ ] Submit deployment metrics to `PredictiveEngine` and verify health trajectory forecast output
- [ ] Establish a baseline via `BaselineManager` and verify it stores baseline metric profiles
- [ ] Inject anomalous metrics and verify `AnomalyDetector` detects them with Z-score/isolation forest
- [ ] Verify `RollbackDecider` triggers automatic rollback when anomaly thresholds are exceeded
- [ ] Verify partial component-level rollback: only affected components are rolled back
- [ ] Call the `RollbackIntelligenceController` API and verify rollback recommendations are returned

View File

@@ -0,0 +1,25 @@
# Inventory Sync with Container Drift Detection
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Inventory synchronization service that pulls current container state from targets, creates inventory snapshots (containers, networks, volumes), and detects drift from expected deployment state. Supports scheduled and on-demand sync.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Inventory/`
- **Key Classes**:
- `InventorySyncService` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Inventory/InventorySyncService.cs`) - pulls current container state from targets and creates inventory snapshots
- `DriftDetector` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Inventory/DriftDetector.cs`) - compares actual state against expected deployment state to detect drift
- **Interfaces**: `IInventorySyncService`
- **Source**: SPRINT_20260110_103_004_ENVMGR_inventory_sync.md
## E2E Test Plan
- [ ] Trigger an inventory sync via `InventorySyncService` and verify a snapshot is created with containers, networks, and volumes
- [ ] Deploy a known configuration, then modify the target state and verify `DriftDetector` detects the drift
- [ ] Verify scheduled sync: configure a sync schedule and verify it runs automatically
- [ ] Verify on-demand sync: trigger a manual sync and verify it completes immediately
- [ ] Verify drift report includes details of what changed (added/removed/modified containers)

View File

@@ -0,0 +1,29 @@
# Multi-Language Script Engine (6 Languages with Monaco Editor, Sandbox, Library Management, and Policy Evaluation)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Polyglot script execution engine supporting C#, Python, Java, Go, Bash, and TypeScript with containerized isolation, resource limits, timeout enforcement, Monaco-based editor with language server protocol IntelliSense, security sandbox with network/filesystem/resource policies, dependency resolution with version pinning, policy-based script approval and signing, and runtime image management per language.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Scripts/`
- **Key Classes**:
- `ScriptExecutor` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Scripts/Execution/ScriptExecutor.cs`) - executes scripts in containerized sandboxes with resource limits and timeout enforcement
- `ScriptLibraryManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Scripts/Library/ScriptLibraryManager.cs`) - manages script libraries with dependency resolution and version pinning
- `RuntimeImageManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Scripts/Runtime/RuntimeImageManager.cs`) - manages per-language runtime container images
- `ScriptPolicyEvaluator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Scripts/Policies/ScriptPolicyEvaluator.cs`) - evaluates policy-based script approval and signing rules
- **Interfaces**: `IScriptExecutor`, `IScriptLibraryManager`, `IRuntimeImageManager`, `IScriptPolicyEvaluator`
- **Source**: SPRINT_20260117_040_ReleaseOrchestrator_multi_language_scripts.md
## E2E Test Plan
- [ ] Execute a script in each supported language (C#, Python, Java, Go, Bash, TypeScript) via `ScriptExecutor` and verify output
- [ ] Verify containerized isolation: run a script that attempts filesystem access and verify it is blocked by the sandbox
- [ ] Verify resource limits: run a script that exceeds memory/CPU limits and verify it is terminated
- [ ] Verify timeout enforcement: run a long-running script and verify it is killed after timeout
- [ ] Add a library dependency via `ScriptLibraryManager` and verify version pinning in execution
- [ ] Verify `ScriptPolicyEvaluator` rejects an unapproved/unsigned script
- [ ] Verify `RuntimeImageManager` manages and pulls per-language container images

View File

@@ -0,0 +1,28 @@
# Multi-Region Federation System (Sync, Replication, Routing, Dashboard)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Federation hub for geographically distributed deployments: cross-region data sync with vector clock-based conflict resolution (KeepLocal/KeepRemote/Merge/LastWriteWins), global promotion orchestration (Sequential/Canary/Parallel/BlueGreen strategies), evidence replication with data residency compliance (GDPR/sovereignty), latency-based region routing with automatic probing, and global dashboard with cross-region visibility, alert management, and sync status.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Federation/`
- **Key Classes**:
- `FederationHub` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Federation/FederationHub.cs`) - background service coordinating cross-region federation
- `CrossRegionSync` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Federation/CrossRegionSync.cs`) - data synchronization across regions with vector clock conflict resolution
- `RegionCoordinator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Federation/RegionCoordinator.cs`) - orchestrates global promotions (Sequential/Canary/Parallel/BlueGreen strategies)
- `GlobalDashboard` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Federation/GlobalDashboard.cs`) - cross-region visibility, alert management, and sync status
- **Interfaces**: `ICrossRegionSync`, `IRegionCoordinator`, `IGlobalDashboard`
- **Source**: SPRINT_20260117_036
## E2E Test Plan
- [ ] Start `FederationHub` and verify it discovers and connects to remote regions
- [ ] Sync data across two regions via `CrossRegionSync` and verify conflict resolution (KeepLocal, LastWriteWins)
- [ ] Trigger a global promotion via `RegionCoordinator` with Sequential strategy and verify region-by-region rollout
- [ ] Verify data residency: sync evidence and confirm GDPR-compliant data stays within designated regions
- [ ] Query `GlobalDashboard` for cross-region sync status and verify visibility across all regions
- [ ] Verify latency-based routing: probe regions and confirm routing decisions match latency measurements

View File

@@ -0,0 +1,28 @@
# Progressive Delivery REST API
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
REST API endpoints for managing progressive delivery rollouts, canary deployments, feature flag operations, traffic splitting, and A/B experiments.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/Api/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/`
- **Key Classes**:
- `ProgressiveDeliveryController` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/Api/ProgressiveDeliveryController.cs`) - REST API controller for progressive delivery operations
- `CanaryController` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/CanaryController.cs`) - canary deployment management
- `TrafficManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/TrafficManager.cs`) - traffic splitting and routing
- `AbReleaseManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/AbRelease/AbReleaseManager.cs`) - A/B experiment management
- `FeatureFlagBridge` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/FeatureFlags/FeatureFlagBridge.cs`) - feature flag operations
- **Interfaces**: `ICanaryController`, `ITrafficManager`, `IAbReleaseManager`
- **Source**: SPRINT_20260117_035
## E2E Test Plan
- [ ] Call the progressive delivery API to create a canary rollout and verify it starts successfully
- [ ] Call the API to set traffic split percentages and verify `TrafficManager` applies them
- [ ] Call the API to create an A/B experiment and verify `AbReleaseManager` tracks it
- [ ] Call the API to toggle a feature flag and verify `FeatureFlagBridge` propagates the change
- [ ] Verify API returns rollout status with metrics for an active canary deployment

View File

@@ -0,0 +1,27 @@
# Promotion Decision Engine (Gate + Approval Combination)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Decision engine combining gate evaluation results and approval status into final promotion decisions. Generates decision records with evidence, supports configurable decision rules, and maintains decision history.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Decision/`
- **Key Classes**:
- `DecisionEngine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Decision/DecisionEngine.cs`) - combines gate evaluation results and approval status into promotion decisions
- `DecisionRecorder` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Decision/DecisionRecorder.cs`) - records decision outcomes with evidence for auditability
- `DecisionRules` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Decision/DecisionRules.cs`) - configurable rules for combining gate and approval results
- **Interfaces**: `IDecisionEngine`
- **Source**: SPRINT_20260110_106_005_PROMOT_decision_engine.md
## E2E Test Plan
- [ ] Submit gate results and approval status to `DecisionEngine` and verify a promotion decision is produced
- [ ] Verify decision with all gates passing and approval granted results in "Approved" decision
- [ ] Verify decision with a failing gate results in "Rejected" decision regardless of approval status
- [ ] Verify `DecisionRecorder` persists decision records with evidence references
- [ ] Configure custom `DecisionRules` and verify the engine applies them correctly
- [ ] Query decision history and verify past decisions are retrievable

View File

@@ -0,0 +1,34 @@
# Promotion Gate Registry with Built-in Gates (Freeze Window, Manual, Policy, Approval, Schedule, Dependency)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Gate registry managing 8 built-in promotion gate types. This sprint implements 6: freeze-window-gate, manual-gate, policy-gate (OPA/Rego), approval-gate (N of M), schedule-gate (deployment windows), and dependency-gate (upstream health checks). Supports plugin gates via IGateProviderCapability.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/`
- **Key Classes**:
- `GateRegistry` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/GateRegistry.cs`) - manages gate provider registration and lookup
- `FreezeWindowGate` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/BuiltIn/FreezeWindowGate.cs`) - blocks promotions during freeze windows
- `ManualGate` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/BuiltIn/ManualGate.cs`) - requires manual human approval
- `PolicyGate` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/BuiltIn/PolicyGate.cs`) - OPA/Rego policy evaluation
- `ApprovalGate` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/BuiltIn/ApprovalGate.cs`) - N-of-M approval requirements
- `ScheduleGate` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/BuiltIn/ScheduleGate.cs`) - deployment window scheduling
- `DependencyGate` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/BuiltIn/DependencyGate.cs`) - upstream health check dependencies
- `SecurityGate` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/Security/SecurityGate.cs`) - security scan gate
- **Interfaces**: `IGateProvider`, `IGateRegistry`, `IGateProviderCapability` (plugin extension)
- **Source**: SPRINT_20260110_106_003_PROMOT_gate_registry.md
## E2E Test Plan
- [ ] Register all built-in gates with `GateRegistry` and verify they are discoverable
- [ ] Evaluate `FreezeWindowGate` during a freeze window and verify it blocks the promotion
- [ ] Evaluate `ManualGate` and verify it requires human interaction to proceed
- [ ] Evaluate `PolicyGate` with a passing and failing OPA/Rego policy
- [ ] Evaluate `ApprovalGate` with N-of-M approvers and verify threshold enforcement
- [ ] Evaluate `ScheduleGate` inside and outside a deployment window
- [ ] Evaluate `DependencyGate` with healthy and unhealthy upstream dependencies
- [ ] Register a plugin gate via `IGateProviderCapability` and verify it integrates with the registry

View File

@@ -0,0 +1,25 @@
# Release Bundle Manager (Multi-Component Release Creation)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Release bundle management for creating releases containing multiple component versions. Supports add/remove components from draft releases, finalization to lock versions, and release manifest generation.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Manager/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Component/`
- **Key Classes**:
- `ReleaseManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Manager/ReleaseManager.cs`) - manages release bundles with add/remove components, finalization, and manifest generation
- `ComponentRegistry` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Component/ComponentRegistry.cs`) - tracks component versions available for inclusion in releases
- **Interfaces**: `IReleaseManager`, `IComponentRegistry`
- **Source**: SPRINT_20260110_104_003_RELMAN_release_manager.md
## E2E Test Plan
- [ ] Create a draft release via `ReleaseManager` and verify it is in draft state
- [ ] Add multiple component versions to the draft and verify they are tracked
- [ ] Remove a component from the draft and verify it is no longer included
- [ ] Finalize the release and verify all component versions are locked (immutable)
- [ ] Generate a release manifest and verify it lists all components with their digest-pinned versions

View File

@@ -0,0 +1,26 @@
# Release Catalog with Status Lifecycle and Deployment History
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Release catalog with status lifecycle (draft -> ready -> promoting -> deployed/deprecated), deployment history tracking per environment, release comparison, and paginated query support.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Catalog/`
- **Key Classes**:
- `ReleaseCatalog` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Catalog/ReleaseCatalog.cs`) - manages releases with lifecycle states, deployment history, comparison, and paginated queries
- `ReleaseStatusMachine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Release/Catalog/ReleaseStatusMachine.cs`) - enforces valid status transitions (draft -> ready -> promoting -> deployed/deprecated)
- **Interfaces**: `IReleaseCatalog`
- **Source**: SPRINT_20260110_104_004_RELMAN_release_catalog.md
## E2E Test Plan
- [ ] Create a release in `ReleaseCatalog` and verify it starts in draft state
- [ ] Transition the release through the lifecycle (draft -> ready -> promoting -> deployed) and verify each state via `ReleaseStatusMachine`
- [ ] Verify invalid transitions are rejected (e.g., draft -> deployed directly)
- [ ] Deploy the release to an environment and verify deployment history is recorded
- [ ] Compare two releases and verify the diff includes component version changes
- [ ] Query releases with pagination and verify correct page results

View File

@@ -0,0 +1,26 @@
# Release Orchestration (Environment Promotions)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Promotion management with manager interface and tests is implemented for environment-based release promotions.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Manager/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Decision/`
- **Key Classes**:
- `PromotionManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Manager/PromotionManager.cs`) - orchestrates environment promotions combining gates, approvals, and decisions
- `GateRegistry` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Gate/GateRegistry.cs`) - gate evaluation for promotion prerequisites
- `DecisionEngine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Promotion/Decision/DecisionEngine.cs`) - combines gate and approval results into promotion decisions
- **Interfaces**: `IPromotionManager`, `IGateRegistry`, `IDecisionEngine`
- **Source**: Feature matrix scan
## E2E Test Plan
- [ ] Promote a release from Dev to Stage via `PromotionManager` and verify it transitions environments
- [ ] Verify promotion evaluates all registered gates before proceeding
- [ ] Verify promotion is blocked when a gate fails
- [ ] Verify promotion produces a decision record with evidence via `DecisionEngine`
- [ ] Verify multi-environment promotion chain (Dev -> Stage -> Prod) with gate re-evaluation at each step

View File

@@ -0,0 +1,26 @@
# Release Orchestrator Observability Hub (Metrics, Traces, Logs)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Centralized observability for release orchestrator: dual-format metric export (Prometheus/OTLP) for gate latency, promotion throughput, and agent health; W3C-standard trace correlation linking spans across orchestrator, agents, gates, and external CI/CD systems; and unified log aggregation for release workflows.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Observability/`
- **Key Classes**:
- `ObservabilityHub` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Observability/ObservabilityHub.cs`) - background service coordinating metric, trace, and log collection
- `LogAggregator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Observability/LogAggregator.cs`) - unified log aggregation for release workflows
- `TraceCorrelator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Observability/TraceCorrelator.cs`) - W3C trace correlation linking spans across orchestrator, agents, gates, and external CI/CD
- **Interfaces**: `ILogExporter`, `ITraceExporter`
- **Source**: SPRINT_20260117_041_ReleaseOrchestrator_observability.md
## E2E Test Plan
- [ ] Start `ObservabilityHub` and verify it begins collecting metrics, traces, and logs
- [ ] Execute a release workflow and verify `LogAggregator` captures logs from all steps
- [ ] Verify `TraceCorrelator` produces W3C-standard trace IDs that link spans across orchestrator and agents
- [ ] Verify dual-format metric export: query Prometheus-format and OTLP-format endpoints
- [ ] Verify gate latency and promotion throughput metrics are recorded during a promotion

View File

@@ -0,0 +1,26 @@
# Target Registry for Deployment Destinations (Docker, Compose, ECS, Nomad Hosts)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Registry for managing deployment targets within environments, supporting docker_host, compose_host, ecs_service, and nomad_job target types. Includes target registration, health monitoring, connection validation, capability detection, and target-agent associations.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Target/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Health/`
- **Key Classes**:
- `TargetRegistry` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Target/TargetRegistry.cs`) - manages deployment target registration, lookup, and agent associations
- `TargetHealthChecker` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Environment/Health/TargetHealthChecker.cs`) - monitors target health and validates connectivity
- **Interfaces**: `ITargetRegistry`, `ITargetHealthChecker`
- **Source**: SPRINT_20260110_103_002_ENVMGR_target_registry.md
## E2E Test Plan
- [ ] Register a docker_host target in `TargetRegistry` and verify it is discoverable
- [ ] Register targets of each type (docker_host, compose_host, ecs_service, nomad_job) and verify type-specific metadata
- [ ] Health check a target via `TargetHealthChecker` and verify connectivity status
- [ ] Associate a target with an agent and verify the association is stored
- [ ] Verify capability detection: register a target and confirm its capabilities are detected
- [ ] Remove a target and verify it is no longer in the registry

View File

@@ -0,0 +1,26 @@
# Traffic Manager with Load Balancer Adapters
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Traffic management abstraction with adapters for Nginx Plus, HAProxy, Traefik, and AWS ALB, enabling weighted traffic splitting for canary and blue-green deployments.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/`, `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Routing/`
- **Key Classes**:
- `TrafficManager` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/TrafficManager.cs`) - high-level traffic management with weighted splitting for canary and blue-green
- `TrafficRouterRegistry` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Routing/TrafficRouterRegistry.cs`) - registry of traffic router implementations (adapters)
- `InMemoryTrafficRouter` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Routing/InMemoryTrafficRouter.cs`) - in-memory traffic router for testing and development
- **Interfaces**: `ITrafficManager`, `ITrafficRouter`
- **Source**: SPRINT_20260117_035
## E2E Test Plan
- [ ] Register a traffic router adapter with `TrafficRouterRegistry` and verify it is available
- [ ] Set weighted traffic split (e.g., 90/10) via `TrafficManager` and verify the split is applied
- [ ] Verify canary traffic progression: increase weight incrementally and confirm routing changes
- [ ] Verify blue-green switch: flip traffic 100% to the new version and confirm full cutover
- [ ] Verify `InMemoryTrafficRouter` correctly tracks routing state for testing

View File

@@ -0,0 +1,26 @@
# Traffic Router Framework (Weighted, Header, Cookie Routing)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Traffic routing framework with ITrafficRouter interface supporting weighted (percentage-based), header-based, and cookie-based routing strategies. Includes router registry, routing state persistence, and metrics collection. Extensible via plugins for Nginx, HAProxy, Traefik, AWS ALB.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Routing/`
- **Key Classes**:
- `TrafficRouterRegistry` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Routing/TrafficRouterRegistry.cs`) - manages traffic router implementations by name
- `InMemoryTrafficRouter` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Routing/InMemoryTrafficRouter.cs`) - reference implementation supporting weighted, header, and cookie routing
- **Interfaces**: `ITrafficRouter` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Routing/ITrafficRouter.cs`)
- **Source**: SPRINT_20260110_110_002_PROGDL_traffic_router.md
## E2E Test Plan
- [ ] Register an `ITrafficRouter` implementation with `TrafficRouterRegistry` and verify lookup
- [ ] Configure weighted routing (percentage-based) and verify traffic distribution
- [ ] Configure header-based routing and verify requests with matching headers are routed correctly
- [ ] Configure cookie-based routing and verify sticky session behavior
- [ ] Verify routing state persistence: apply a routing rule, restart, and confirm the rule persists
- [ ] Register a plugin router (Nginx/HAProxy/Traefik/ALB adapter) and verify it integrates with the framework

View File

@@ -0,0 +1,25 @@
# Version Sticker Writer (Deployment State Recording)
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Version sticker system that writes stella.version.json files to each deployment target via agents, recording deployment state (release, components, digests, environment, evidence IDs). Supports write and read operations for deployment verification.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Evidence/Sticker/`
- **Key Classes**:
- `VersionStickerWriter` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Evidence/Sticker/VersionStickerWriter.cs`) - writes stella.version.json files to deployment targets via agents
- `VersionStickerGenerator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Evidence/Sticker/VersionStickerGenerator.cs`) - generates version sticker content with release, components, digests, environment, and evidence IDs
- **Interfaces**: `IVersionStickerWriter`, `IVersionStickerGenerator`
- **Source**: SPRINT_20260110_109_003_RELEVI_version_sticker.md
## E2E Test Plan
- [ ] Generate a version sticker via `VersionStickerGenerator` and verify it contains release ID, component digests, environment, and evidence IDs
- [ ] Write a version sticker to a deployment target via `VersionStickerWriter` and verify stella.version.json is created
- [ ] Read back a version sticker from the target and verify it matches the written content
- [ ] Deploy a new release and verify the version sticker is updated with the new release information
- [ ] Verify the sticker includes immutable digests (not mutable tags) for all component references

View File

@@ -0,0 +1,26 @@
# Workflow Event Broadcaster and Log Aggregator
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Real-time workflow event broadcasting via SignalR and centralized log aggregation for workflow execution visualization and monitoring.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Visualization/`
- **Key Classes**:
- `EventBroadcaster` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Visualization/EventBroadcaster.cs`) - real-time workflow event broadcasting via SignalR
- `LogAggregator` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Visualization/LogAggregator.cs`) - centralized log aggregation for workflow execution
- `LogAggregatorConfig` (inner class in `LogAggregator.cs`) - configuration for log aggregation behavior
- **Interfaces**: `IWorkflowEventSink`
- **Source**: SPRINT_20260117_032
## E2E Test Plan
- [ ] Execute a workflow and verify `EventBroadcaster` emits real-time events via SignalR
- [ ] Connect a SignalR client and verify workflow step start/complete/fail events are received
- [ ] Execute a multi-step workflow and verify `LogAggregator` captures logs from all steps
- [ ] Query aggregated logs by workflow ID and verify complete execution history
- [ ] Verify event ordering: confirm events arrive in execution order

View File

@@ -0,0 +1,23 @@
# Workflow Simulation Engine
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Simulation engine for testing release workflows without side effects, enabling what-if analysis of workflow changes before deployment.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Visualization/`
- **Key Classes**:
- `SimulationEngine` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Visualization/SimulationEngine.cs`) - executes workflow definitions in simulation mode without side effects
- **Source**: SPRINT_20260117_032
## E2E Test Plan
- [ ] Define a workflow with deployment steps and simulate it via `SimulationEngine`
- [ ] Verify simulation completes without executing actual deployments (no side effects)
- [ ] Verify simulation output includes predicted step outcomes and timing estimates
- [ ] Simulate a workflow with a failing gate and verify the simulation predicts the failure
- [ ] Modify a workflow definition and re-simulate to perform what-if analysis

View File

@@ -0,0 +1,25 @@
# Workflow Time-Travel Debugger
## Module
ReleaseOrchestrator
## Status
IMPLEMENTED
## Description
Time-travel debugging capability for release workflows allowing step-by-step replay of workflow execution with state inspection at any point, powered by an execution recorder that captures full state snapshots.
## Implementation Details
- **Modules**: `src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Visualization/`
- **Key Classes**:
- `TimeTravelDebugger` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Visualization/TimeTravelDebugger.cs`) - replays workflow execution with step-by-step state inspection
- `ExecutionRecorder` (`src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Workflow/Visualization/ExecutionRecorder.cs`) - captures full state snapshots during workflow execution for replay
- **Interfaces**: `IExecutionRecorder`
- **Source**: SPRINT_20260117_032
## E2E Test Plan
- [ ] Execute a workflow with `ExecutionRecorder` enabled and verify state snapshots are captured at each step
- [ ] Load a recorded execution in `TimeTravelDebugger` and verify step-by-step replay
- [ ] Navigate forward and backward through execution steps and verify state at each point
- [ ] Inspect variables and intermediate outputs at a specific step via the debugger
- [ ] Verify the debugger shows the complete execution path including branch decisions in DAG workflows