66647e19dd3ec52d500359aaeb5f51ecc93bc9af
- config/RuleEngineVersion.java(三态枚举 V1/V2/HYBRID) - config/RuleEngineVersionProperties.java(@ConfigurationProperties, prefix=viewsh.iot.rule.engine) - config/IotRuleEngineVersionResolver.java(volatile Set 本地缓存 < 1μs + Redis 动态白名单 + 降级) - config/RuleEngineVersionAdminController.java(5 端点:add/remove/list/version/refresh,@PreAuthorize) - config/IotRuleEngineVersionAutoConfiguration.java(@AutoConfiguration + @EnableConfigurationProperties) - spring.factories 注册 AutoConfiguration - 测试:IotRuleEngineVersionResolverTest 8 用例全绿(含 Redis 降级 + 动态刷新) - Known Pitfalls 落地: ⚠️ 评审 B11:三态枚举 + switch 全覆盖 ⚠️ 性能:volatile + Set.contains,无 I/O ⚠️ Redis 降级:try-catch + log.warn,不抛出 ⚠️ subsystemId=null 走 v1(存量未归属设备安全默认) Co-Authored-By: Claude Sonnet (B19 subagent) <noreply@anthropic.com> Co-Authored-By: Claude Opus 4.7 (1M context, orchestrator) <noreply@anthropic.com>
Description
Languages
Java
80.2%
PLpgSQL
12.7%
TSQL
6.7%
Python
0.2%