Commit 7f5021a
committed
feat(mutators): initial implementation of full mutation engine framework
- Added core mutation engine (`MutationEngine`) with:
- Single and batch mutation execution (`ExecuteAsync`, `ExecuteBatchAsync`)
- Policy evaluation and enforcement
- Audit logging and history storage
- Metrics collection (scoped and aggregated)
- Interceptor pipeline for before/after/failure events
- Implemented supporting components:
- `MutationExecutor` for low-level mutation execution
- `PolicyRegistry` for thread-safe policy management
- `MetricsCollectorImpl` and `MetricsScope` for in-memory metric tracking
- Logging interceptors: `LoggingInterceptor`, `MutationHistoryLogger`, `MutationResultLogger`
- Added DI integration via `MutatorsServiceCollectionExtensions.AddMutators`:
- Registers engine, executor, registry, auditor, history store, metrics collector
- Optional default console logging interceptor
- Supports engine options (`MutationEngineOptions`) and scoped configuration
- Included example usage and documentation:
- Quick start, core concepts, best practices
- API reference, metrics & logging, ADR references
- Exception handling improvements:
- `MutationException` constructors made public1 parent c16d7ad commit 7f5021a
7 files changed
Lines changed: 855 additions & 2 deletions
File tree
- ModularityKit.Mutator
- Abstractions/Exceptions
- Runtime
- Policies
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
32 | | - | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| |||
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
43 | | - | |
| 43 | + | |
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
9 | 13 | | |
0 commit comments