Skip to content

Commit e080ca0

Browse files
StevenTCramerclaude
andcommitted
Add task 032: Migrate from MediatR to TimeWarp.Mediator
Creates comprehensive kanban task for migrating TimeWarp.State from MediatR to TimeWarp.Mediator (a fork of MediatR). Task includes detailed checklist covering package references, namespace updates, service registration, and documentation requirements. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent dc6846d commit e080ca0

1 file changed

Lines changed: 73 additions & 0 deletions

File tree

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
# Task 032: Migrate from MediatR to TimeWarp.Mediator
2+
3+
## Description
4+
5+
- Migrate TimeWarp.State from MediatR to TimeWarp.Mediator (a fork of MediatR)
6+
- Since TimeWarp.Mediator maintains API compatibility with MediatR, this should be primarily package references and namespace updates
7+
- Create migration documentation for both TimeWarp.State users and general MediatR users
8+
9+
## Requirements
10+
11+
- Replace MediatR package references with TimeWarp.Mediator in all project files
12+
- Update all namespace imports from MediatR to TimeWarp.Mediator
13+
- Update service registration to use TimeWarp.Mediator methods
14+
- All existing tests must continue to pass
15+
- Create comprehensive migration documentation
16+
- Document any API differences discovered during migration
17+
18+
## Checklist
19+
20+
### Design
21+
- [x] Research current MediatR usage across codebase (40+ files identified)
22+
- [ ] Run all tests to ensure baseline functionality before migration
23+
- [ ] Identify TimeWarp.Mediator package version and compatibility
24+
- [ ] Plan migration strategy for minimal disruption
25+
26+
### Implementation
27+
- [ ] Update package references in 2 .csproj files:
28+
- [ ] Source/TimeWarp.State/TimeWarp.State.csproj
29+
- [ ] Tests/Test.App/Test.App.Contracts/Test.App.Contracts.csproj
30+
- [ ] Update global using statements in 8 GlobalUsings.cs files:
31+
- [ ] Source/TimeWarp.State/GlobalUsings.cs
32+
- [ ] Source/TimeWarp.State.Plus/GlobalUsings.cs
33+
- [ ] Tests/TimeWarp.State.Tests/GlobalUsings.cs
34+
- [ ] Tests/Test.App/Test.App.Contracts/GlobalUsings.cs
35+
- [ ] Tests/Test.App/Test.App.Client/GlobalUsings.cs
36+
- [ ] Tests/Client.Integration.Tests/GlobalUsings.cs
37+
- [ ] Samples/02-ActionTracking/Wasm/Sample02Wasm/GlobalUsings.cs
38+
- [ ] Update service registration in ServiceCollectionExtensions.AddTimeWarpState.cs
39+
- [ ] Verify all MediatR interfaces still work (IRequest, IRequestHandler, IMediator, ISender, IPublisher)
40+
- [ ] Test pipeline behaviors (5 implementations)
41+
- [ ] Test pre/post processors (6 implementations)
42+
- [ ] Test notification handlers (9 implementations)
43+
- [ ] Verify Redux DevTools integration continues to work
44+
45+
### Documentation
46+
- [ ] Create migration guide for TimeWarp.State users
47+
- [ ] Create general MediatR → TimeWarp.Mediator migration document
48+
- [ ] Update ai-context.md with new dependency information
49+
- [ ] Document any breaking changes or API differences
50+
51+
### Review
52+
- [ ] Consider Accessibility Implications
53+
- [ ] Consider Monitoring and Alerting Implications
54+
- [ ] Consider Performance Implications (should be minimal/none)
55+
- [ ] Consider Security Implications (should be minimal/none)
56+
- [ ] Code Review
57+
58+
## Notes
59+
60+
- TimeWarp.Mediator is a fork of MediatR, so API compatibility should be maintained
61+
- Current MediatR usage includes:
62+
- Core interfaces: IRequest, IRequestHandler, IMediator, ISender, IPublisher
63+
- Pipeline behaviors: 5 implementations for Redux DevTools, state transactions, action tracking
64+
- Pre/post processors: 6 implementations for state initialization, render subscriptions, persistence
65+
- Notifications: 9 handlers for various state management events
66+
- Migration should be primarily mechanical (package + namespace changes)
67+
- Need to create documentation for both internal migration and general MediatR users
68+
69+
## Implementation Notes
70+
71+
- Start with package references, then global usings, then service registration
72+
- Test thoroughly at each step to ensure no breaking changes
73+
- Document any unexpected API differences for future reference

0 commit comments

Comments
 (0)