# 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