29 Commits

Author SHA1 Message Date
gewuyou
57d848546f test(cqrs): 补充非请求分发上下文回归
- 新增 notification 与 stream dispatch binding 上下文刷新回归,锁定缓存复用时仍按当次分发重新注入上下文

- 补充测试替身记录 handler 实例身份与 ArchitectureContext,覆盖重复分发场景

- 更新 cqrs-rewrite 跟踪与 trace,记录 RP-058 和 RP-059 的验证结论
2026-04-29 23:03:21 +08:00
gewuyou
226c0b3b49 test(cqrs): 补充注册服务程序集去重测试
- 新增 DefaultCqrsRegistrationService 的独立测试文件,覆盖同次调用内的重复程序集键去重行为

- 验证跨两次调用重复程序集键时会跳过注册并写入 debug 日志
2026-04-29 23:03:21 +08:00
gewuyou
36596210ff test(cqrs): 新增 ReflectionFallbackAttribute 合同测试
- 新增 CqrsReflectionFallbackAttribute 的叶子级合同测试,覆盖旧版 marker 语义

- 补充字符串与 Type 输入的过滤、去重、排序归一化断言

- 验证空参数数组保护,固定 runtime 可依赖的 attribute 元数据边界
2026-04-29 23:03:21 +08:00
gewuyou
16cd96b94b test(cqrs): 补充 dispatcher 缓存上下文回归
- 新增 cached request pipeline executor 的上下文刷新回归测试与专用测试替身

- 记录 singleton behavior 生命周期语义下的上下文重新注入结论

- 更新 cqrs-rewrite 跟踪与 trace 恢复点到 RP-057
2026-04-29 23:03:21 +08:00
gewuyou
e81a43680d fix(cqrs): 缓存请求管道执行形状
- 优化 CqrsDispatcher 的 request pipeline 路径,按请求类型与行为数量缓存 typed executor 形状并在单次分发中绑定当前 handler 与 behaviors

- 补充 dispatcher 缓存回归测试,覆盖 pipeline executor 的首次创建、后续复用与行为顺序稳定
2026-04-29 23:03:21 +08:00
gewuyou
8d8b94f608 fix(cqrs): 收敛 fallback 审查跟进
- 修复 generator preamble 的多实例 fallback 特性排版并移除死参数

- 补强 mixed/direct fallback 生成回归断言并拒绝空 marker

- 更新 CQRS 审查跟踪记录与 XML 文档
2026-04-29 16:20:15 +08:00
gewuyou
76fcdb8233 perf(cqrs): 拆分混合 fallback 元数据
- 优化 CqrsReflectionFallbackAttribute 与生成器发射策略,在 mixed 场景下拆分 Type 与字符串 fallback 元数据
- 补充 CQRS runtime 与 SourceGenerators 回归测试,锁定多实例 fallback 特性和定向类型回查行为
- 更新 CQRS 生成器文档与 ai-plan 恢复记录,沉淀 RP-052 的验证结果与下一步
2026-04-29 13:37:05 +08:00
gewuyou
1635a03a99 fix(tests): 收敛PR300审查遗留问题
- 修复 TestArchitectureContextV3 的共享事件总线语义并补充对应回归测试

- 优化 CapturingLoggerFactoryProvider 的最小级别同步策略并补充验证

- 更新 RegistryInitializationHookBase 异常文档与 analyzer warning reduction 的恢复文档归档
2026-04-28 10:11:05 +08:00
gewuyou
5693ab7e6f fix(test-helpers): 收敛PR300评审问题
- 修复测试架构上下文、生命周期钩子与注册表初始化钩子的评审问题,避免静默成功或错误共享状态

- 补充 TestResourceLoader、TestLogger、CapturingLoggerFactoryProvider 与 CQRS 测试辅助类型的契约文档和并发语义

- 新增测试覆盖并更新 analyzer-warning-reduction 活跃跟踪,记录 PR #300 跟进验证与现存 Cqrs warning blocker
2026-04-28 09:26:20 +08:00
gewuyou
98afcbffb3 fix(cqrs-tests): 拆分处理器注册测试辅助类型
- 拆分 CqrsHandlerRegistrarTests 尾部的测试辅助类型到同目录同名文件

- 保持 CQRS handler registrar 测试行为与 XML 文档不变并消除该切片的 MA0048 warning
2026-04-28 07:56:38 +08:00
gewuyou
9098490fbb fix(cqrs-tests): 拆分 dispatcher cache 测试辅助类型
- 拆分 CqrsDispatcherCacheTests 末尾的 request、handler 与 behavior 辅助类型到同目录独立文件

- 修复 dispatcher cache 测试中的 ConfigureAwait warning,保持现有断言与分发语义不变
2026-04-28 07:47:28 +08:00
gewuyou
58ba6c011e test(cqrs-tests): 收敛处理器注册缓存测试 warning
- 重构 CqrsHandlerRegistrarTests 的缓存元数据用例,拆分装配、断言与 verify helper

- 更新 analyzer warning reduction 的 active tracking 与 trace,记录并行 subagent 批次和 645 条根构建基线
2026-04-25 15:39:32 +08:00
gewuyou
db65249315 refactor(cqrs): 收敛处理器重复映射判定
- 优化 CqrsHandlerRegistrar 使用本地映射索引替代重复线性扫描
- 补充 重复 handler 类型输入仍只注册一份映射的回归测试
- 更新 cqrs-rewrite 跟踪与 trace 到 RP-049
2026-04-20 19:42:06 +08:00
gewuyou
110666d06b refactor(cqrs): 缓存处理器接口反射元数据
- 优化 CqrsHandlerRegistrar 复用 supported handler interface 缓存
- 补充 registrar 静态缓存隔离与接口缓存复用回归测试
- 更新 cqrs-rewrite 跟踪与 trace 到 RP-048
2026-04-20 19:42:06 +08:00
gewuyou
7cf0a75568 refactor(cqrs): 收敛生成注册器激活反射路径
- 优化 generated registry 激活流程,使用缓存工厂委托优先替代 ConstructorInfo.Invoke\n- 补充私有无参构造 registry 的回归测试,保持生成器产物兼容性\n- 更新 CQRS ai-plan 恢复点与验证记录,指向新的 Phase 8 下一步
2026-04-20 19:42:06 +08:00
GeWuYou
04123d2a71 docs: 添加 CQRS 架构模式与源码生成器完整文档
- 新增 CQRS 核心概念、命令查询处理器实现指南
- 添加安装配置文档,包含各模块包说明与环境要求
- 实现源码生成器全面文档,涵盖 Log、Config Schema、CQRS Handler Registry 等特性
- 提供详细用法示例与最佳实践指导
- 包含常见问题解答与故障排查方案
- 添加 Godot 项目集成与性能优化相关内容
2026-04-17 17:41:38 +08:00
GeWuYou
c7516800e7 feat(cqrs): 添加 CQRS 处理器自动注册功能
- 实现 CqrsHandlerRegistrar 类,支持扫描并注册 CQRS 请求/通知/流式处理器
- 添加程序集级源码生成注册器支持,减少冷启动反射开销
- 实现反射回退机制,在生成注册器不可用时进行类型扫描
- 添加进程级缓存机制,避免重复分析程序集元数据和类型加载
- 支持确定性的处理器注册顺序,按名称排序保证稳定性
- 实现类型加载容错机制,部分类型失败时保留其他处理器注册
- 添加完整的单元测试覆盖,验证各种注册场景和错误处理
- 实现日志记录功能,提供详细的注册过程诊断信息
2026-04-17 16:19:35 +08:00
GeWuYou
be59dc7f27 refactor(cqrs): 优化调度器缓存结构提升性能
- 将通知、请求和流式处理的缓存从多个独立字典合并为统一的分发绑定结构
- 减少热路径上的重复字典查询操作,提升分发性能
- 重构请求分发绑定缓存,按响应类型分层避免值类型装箱开销
- 添加完整的调度绑定单元测试验证缓存行为正确性
- 简化通知和流式处理的缓存查找逻辑,统一调用模式
2026-04-17 14:21:56 +08:00
GeWuYou
31b6285bbd test(cqrs): 添加 CQRS 分发器缓存功能的单元测试
- 验证相同消息类型重复分发时不会重复扩张服务类型与调用委托缓存
- 验证 request 调用委托会按响应类型分别缓存避免不同响应类型共用 object 结果桥接
- 实现通过反射读取 dispatcher 静态缓存字典的测试辅助方法
- 添加清空 dispatcher 静态缓存的方法避免跨用例共享进程级状态
- 创建多个测试数据模型和处理器用于验证不同的缓存场景
- 实现异步流消费方法确保建流路径被真实执行
2026-04-16 19:06:20 +08:00
GeWuYou
a8386c1759 feat(cqrs): 添加 CQRS 分发器实现及缓存测试
- 实现了 GFramework 自有 CQRS 运行时分发器,支持请求/通知/流式请求处理
- 添加了多层级缓存机制,包括服务类型缓存、调用委托缓存、按响应类型分层缓存
- 实现了上下文感知处理器的自动注入功能
- 集成了管道行为链处理机制,支持中间件模式的请求处理
- 添加了完整的缓存测试用例,验证各种消息类型的缓存命中与复用逻辑
- 优化了反射调用性能,避免热路径中的重复类型构造与装箱操作
2026-04-16 17:07:04 +08:00
GeWuYou
4951fb0254 feat(cqrs): 添加 CQRS 分发器和服务注册生成器
- 实现 CqrsDispatcher 类,支持请求/通知/流式请求的分发处理
- 添加进程级缓存机制,优化热路径中的反射和类型构造性能
- 实现上下文感知处理器的 CQRS 分发上下文注入功能
- 开发 CqrsHandlerRegistryGenerator 源代码生成器,减少运行时反射扫描
- 添加完整的单元测试验证缓存机制和服务类型注册功能
- 支持管道行为链处理和异步流式请求响应模式
2026-04-16 12:19:44 +08:00
GeWuYou
06f95db593 feat(cqrs): 添加CQRS调度器实现和改进处理器注册机制
- 实现GFramework自有CQRS运行时分发器,支持请求/通知/流式请求处理
- 添加进程级缓存机制优化反射调用性能,包括请求、通知、流水线调用委托缓存
- 重构CqrsHandlerRegistrar使用ReflectionFallbackMetadata替代字符串类型名
- 引入CqrsReflectionFallbackAttribute支持运行时补充反射扫描的处理器类型
- 添加完整的CQRS处理器注册单元测试,验证有序执行和容错行为
- 修复MicrosoftDiContainer中异常消息的格式化空白问题
- 实现上下文感知处理器的CQRS分发上下文注入功能
2026-04-16 11:36:31 +08:00
GeWuYou
391e3e9813 feat(cqrs): 添加CQRS处理器自动注册功能
- 实现CqrsHandlerRegistrar类,支持扫描并注册CQRS请求/通知/流式处理器
- 添加源码生成注册器优先策略,减少冷启动时的反射开销
- 实现运行时反射扫描回退机制,确保处理器注册的完整性
- 添加CqrsReflectionFallbackAttribute特性,标记需要运行时补充扫描的程序集
- 创建完整的单元测试套件,验证处理器注册顺序与容错行为
- 实现CqrsHandlerRegistryGenerator源码生成器,自动生成处理器注册代码
- 添加详细的日志记录与诊断功能,便于调试注册过程
- 实现类型安全的处理器映射验证与重复注册检测机制
2026-04-16 11:11:29 +08:00
GeWuYou
bc9336428e feat(cqrs): 添加 CQRS 处理器注册器和源码生成器
- 实现 CqrsHandlerRegistrar 类用于扫描并注册 CQRS 处理器
- 添加源码生成器自动生成 CQRS 处理器注册器减少反射开销
- 实现运行时回退机制在生成注册器不可用时使用反射扫描
- 添加完整的单元测试验证处理器注册顺序和容错行为
- 支持请求、通知和流式处理器的自动注册功能
- 实现稳定的处理器注册顺序保证跨环境一致性
- 添加详细的诊断日志记录注册过程和异常情况
2026-04-16 08:49:13 +08:00
GeWuYou
e36c80229a feat(cqrs): 添加CQRS处理器基类和测试运行时支持
- 引入AbstractCommandHandler、AbstractQueryHandler等各类处理器基类
- 实现CqrsContextAwareHandlerBase提供上下文感知功能
- 添加CqrsTestRuntime为测试项目提供CQRS运行时访问入口
- 创建AbstractCqrsHandlerContextTests验证上下文注入行为
- 支持命令、查询、通知及流式处理的各种抽象基类实现
2026-04-15 20:34:08 +08:00
GeWuYou
a80ff59631 feat(cqrs): 添加CQRS运行时模块和兼容性扩展
- 新增ContextAwareMediatorCommandExtensions提供命令扩展方法的兼容性别名
- 新增ContextAwareMediatorExtensions提供CQRS统一接口扩展方法的兼容性别名
- 新增ContextAwareMediatorQueryExtensions提供查询扩展方法的兼容性别名
- 添加CqrsRuntimeModule用于注册CQRS运行时和处理器注册器到依赖注入容器
- 更新IArchitectureContext接口添加新版CQRS请求、命令、查询和通知的统一入口
- 添加架构上下文的CQRS处理器注册相关单元测试
- 配置项目文件以支持多目标框架和包引用管理
2026-04-15 19:42:08 +08:00
GeWuYou
ede8a8faa4 fix(namespace): 修正命名空间
- 修正Core模块命名空间
- 修正Godot模块命名空间
2026-04-15 15:34:14 +08:00
GeWuYou
aba304f667 test(cqrs): 添加CQRS处理器注册器单元测试
- 验证通知处理器按稳定名称顺序执行而非依赖反射枚举顺序
- 测试部分类型加载失败时保留可加载类型并记录诊断日志
- 验证源码生成注册器优先级高于反射扫描机制
- 测试生成注册器元数据损坏时回退到反射扫描路径
- 实现确定性通知处理器执行顺序验证功能
- 添加捕获型日志工厂提供程序用于测试断言
- 修正命名空间从Core.Tests.Logging到Cqrs.Tests.Logging
2026-04-15 15:28:51 +08:00
GeWuYou
34e140e919 feat(ioc): 添加 Microsoft DI 容器适配器和 CI/CD 工作流
- 实现 MicrosoftDiContainer 类,提供 Microsoft.Extensions.DependencyInjection 的适配器
- 添加 DefaultCqrsHandlerRegistrar 默认 CQRS 处理器注册器实现
- 配置 GitHub Actions CI/CD 工作流,包含代码质量检查和构建测试任务
- 设置 .NET 8/9/10 多版本支持和缓存策略
- 添加单元测试覆盖 IoC 容器的各项功能,包括注册、解析和生命周期管理
- 实现线程安全的读写锁机制保护容器操作
- 支持 CQRS 处理器和管道行为的注册管理
2026-04-15 15:13:43 +08:00