24c486900a5f5a150188e6f123b4178dcc5d1833
B6 ActionProvider SPI + 5 核心动作(alarm/notify/device-ctrl): - ActionProvider 接口(extends NodeProvider,默认 bridge execute) - ActionResult record(SUCCESS/FAILURE/SKIP + output + message) - ActionProviderManager(Spring 自动收集 + fail-fast 重复 type) - AlarmTriggerAction(调用 IotAlarmRecordApi.triggerAlarm,模板变量解析) - AlarmClearAction(alarmId 从 config 或 ctx.metadata 解析,幂等) - NotifyAction(4 通道并发 + 部分失败不阻塞,第一期 stub) - DeviceServiceInvokeAction(调用 IotDeviceControlApi.invokeService) - DevicePropertySetAction(第一期 stub,B27 补全 Redis/MySQL) - IotAlarmRecordApi + DTO(rule 模块→server 跨模块接口) - IotAlarmRecordApiImpl(server 端 FeignClient 实现,委托 Service) - 14 单元测试全绿 B7 分支执行逻辑(executeAnyway if/else-if/else): - BranchConfiguration POJO(branches[] + executeAnyway + BranchCondition) - BranchExecutor(核心语义:else/executeAnyway/条件异常短路/action 异常隔离) - BranchNode NodeProvider(ACTION/"branch",内联执行命中 branch actions) - DagExecutor 最小扩展(ctx.metadata 传递 CompiledRuleChain 供 BranchNode 使用) - 9 单元测试全绿(含 validate else 位置校验) B18 DataRule → DAG 自动转换工具: - DataRuleToChainMapper(v1→v2 映射,6 种 Sink,合并/拆分多 source) - DataRuleMigrator(dry-run + execute + 幂等映射表) - DataRuleMigrationController(3 端点:dry-run/execute/mapping) - 8 单元测试全绿 测试总计:rule 模块 159/159 ✓,server 模块 8/8(B18)✓ Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Description
Languages
Java
80.2%
PLpgSQL
12.7%
TSQL
6.7%
Python
0.2%