Commit 287d5cc
authored
Feat: Add governed execution runtime (#27)
## Summary
This PR closes the first governed execution loop in
ModularityKit.Mutator.Governance and aligns the package docs with the
current runtime shape.
## Added
- governed execution contracts and runtime orchestration through
IGovernanceExecutionManager and GovernanceExecutionManager
- request execution outcome handling, guarded execution persistence, and
governance-aware mutation wrapping
- end-to-end governance execution coverage in
ModularityKit.Mutator.Governance.Tests
- runnable Examples/Governance/GovernedExecution sample
- ADR-027 for the governed execution manager
## Changed
- MutationRequest construction moved into MutationRequestFactory so the
request model stays focused on state
- governance examples and tests now use the request factory entry points
- governance package README now describes the runtime by flow and
responsibility instead of only folder layout
- governance example READMEs now point to the updated request factory
usage
## Result
Governance now owns the path from approved request to version
resolution, core mutation execution, and terminal request state. The
package documentation also reflects the current execution model instead
of describing major runtime pieces as future work.
## Testing
- dotnet build src/ModularityKit.Mutator.Governance.csproj -c Release
- dotnet build
Examples/Governance/GovernedExecution/GovernedExecution.csproj -c
Release
- dotnet test
Tests/ModularityKit.Mutator.Governance.Tests/ModularityKit.Mutator.Governance.Tests.csproj
-c Release
## Linked Issues
- Closes #16
## Checklist
- [x] Governed execution resolves requests before execution
- [x] Terminal execution outcomes are persisted through governance
runtime
- [x] Governance execution has runnable example coverage
- [x] Governance execution has test coverage
- [x] ADR and package docs reflect the new runtime shape30 files changed
Lines changed: 1260 additions & 279 deletions
File tree
- Docs
- Decision
- Adr
- Examples
- Governance
- ApprovalWorkflow
- Scenarios
- GovernedExecution
- Scenarios
- RequestLifecycle
- Scenarios
- VersionedResolution
- Scenarios
- Tests/ModularityKit.Mutator.Governance.Tests
- Approval
- Execution
- TestSupport
- src/Governance
- Abstractions
- Execution
- Contracts
- Model
- Requests
- Factory
- Model
- Runtime/Execution
- Mutation
- Orchestration
- Outcome
- Persistence
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
| 45 | + | |
45 | 46 | | |
46 | 47 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
21 | | - | |
| 21 | + | |
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
| |||
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
35 | | - | |
36 | | - | |
| 35 | + | |
| 36 | + | |
37 | 37 | | |
38 | 38 | | |
39 | | - | |
| 39 | + | |
| 40 | + | |
40 | 41 | | |
41 | 42 | | |
42 | 43 | | |
| |||
69 | 70 | | |
70 | 71 | | |
71 | 72 | | |
72 | | - | |
| 73 | + | |
73 | 74 | | |
74 | 75 | | |
75 | 76 | | |
| |||
83 | 84 | | |
84 | 85 | | |
85 | 86 | | |
| 87 | + | |
| 88 | + | |
86 | 89 | | |
87 | 90 | | |
88 | 91 | | |
| |||
95 | 98 | | |
96 | 99 | | |
97 | 100 | | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
98 | 118 | | |
99 | 119 | | |
100 | 120 | | |
| |||
123 | 143 | | |
124 | 144 | | |
125 | 145 | | |
126 | | - | |
| 146 | + | |
127 | 147 | | |
128 | 148 | | |
129 | 149 | | |
130 | 150 | | |
131 | 151 | | |
| 152 | + | |
132 | 153 | | |
133 | 154 | | |
| 155 | + | |
134 | 156 | | |
135 | 157 | | |
136 | 158 | | |
137 | | - | |
| 159 | + | |
138 | 160 | | |
139 | 161 | | |
140 | 162 | | |
0 commit comments