unbridled-41 commented on PR #4284: URL: https://github.com/apache/rocketmq-dashboard/pull/4284#issuecomment-5657467574
## 复测实证(应用户要求对缺陷做最终实测) **① 基线复现(干净 worktree @ 6c24d2ed,只带本 PR 回归测试 + 基线源码)**: ``` mvn -o test -Dtest=LlmConfigServiceTest saveConfigShouldPreserveNotificationChannelFields expected: "https://oapi.dingtalk.com/robot/send?access_token=abc" but was: null Tests run: 30, Failures: 1 ``` **② 修复解除(替换 LlmConfigService.java 为修复版)**:同套件 30/30 全绿。 **③ 新增端到端持久化链实测**(本次复测补充的最强证据):构造真实 `LlmConfigService → SettingsService → MybatisPlusSettingsRepository` 全链(无 mock 替身、仅 mock mapper 与审计依赖),拦截真正交给 settings mapper 的**落库 JSON**: - 基线源码(缺陷存在): ``` CHAIN persisted dingtalkWebhook = null CHAIN persisted smsWebhook = null CHAIN persisted emailRecipients = null Tests run: 1, Failures: 1 ``` - 修复源码: ``` CHAIN persisted dingtalkWebhook = "https://oapi.dingtalk.com/robot/send?access_token=stored" CHAIN persisted smsWebhook = "https://sms.example.com/notify" CHAIN persisted emailRecipients = "[email protected]" Tests run: 1, Failures: 0 ``` 即"落库行被写 null"不再是代码推断,而是对真实序列化输出的直接观测——保存一次 LLM 配置确实把已配置渠道从持久化行中抹掉,修复后保留。scratch 测试仅用于本次验证,未加入 PR 提交。 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
