欢迎来到 openUBMC 社区
Hey @yelvsub , 感谢你对社区的贡献.
机器人使用手册
有关指令的使用,可以点击 说明文档 或 论坛 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。
联系指引
有疑问可以联系 SIG: sig-interface ,
维护者是: @DataSculptor, @WeliveWelove, @aaronlee, @huanghan ,
优秀贡献者是: @L_Ling, @PLUS_ONE, @yelvsub .


Issue 工作流介绍
社区的需求和缺陷的工作流状态处于纳管中。
| 类型 | 上个状态 | 下个状态 | 评论命令 | 谁可以操作 |
|---|---|---|---|---|
| 需求 | 待办的 | 已接纳 | /todo2accepted | SIG组: sig-release-management (maintainer) |
| 需求 | 已接纳 | 开发中 | /accepted2developing | 仓库成员角色: Maintainer, Committer, Contributor, Owner |
| 需求 | 开发中 | 转测中 | /developing2testing | 仓库成员角色: Maintainer, Committer, Contributor, Owner |
| 需求 | 转测中 | 待验收 | /testing2UAT | 仓库成员角色: Maintainer, Committer, Contributor, Owner |
| 需求 | 待验收 | 已完成 | /UAT2done | SIG组: sig-QA (maintainer,committer) |
| 需求 | 待办的 | 已挂起 | /todo2suspended | SIG组: sig-release-management (maintainer) |
| 需求 | 已挂起 | 已接纳 | /suspended2accepted | SIG组: sig-release-management (maintainer) |
| 需求 | 待办的 | 已拒绝 | /todo2rejected | SIG组: sig-release-management (maintainer) |
| 需求 | 已拒绝 | 已接纳 | /rejected2accepted | SIG组: sig-release-management (maintainer) |


/accepted2developing


PR #1478 回顾分析: 【e228ba8c6e3e8dfdf49e7ef232406836】feat: 支持redfish显示光模块参数
仓库: openUBMC/rackmount
分支: nightzmare/main → openUBMC/main
合并时间: 2026-08-22 17:31
作者: nightzmare
注:
get-ai-review未检索到 OpenClaw AI 检视记录(返回空)。本回顾纳入两类 AI 生成内容:GitCode 平台 AI 代码检视(openUBMC-robot,openubmc-ai-review标记,2 轮各 4 条 diff_comment + 2 份摘要报告,评级均为"一般":0 严重 / 2 警告 / 2 建议)与 AI 一致性维度检视(Richardli25 账号发布的 D14-D25 检视)。本 PR 为 Redfish 北向实现,配套 mdb 接口变更(评审点 1-3)属 mdb_interface 仓。
1. AI 检视意见追踪
| # | 来源 | AI 发现 | 级别 | 后续处理 | 说明 |
|---|---|---|---|---|---|
| 1 | 平台AI 第1轮 (diff_comment) | GetTxLosState 缺 nil 防护:Model 为 nil 时 string.match 抛错、TxLoS 为 nil 时 ~= 0 恒 true 误报 LOS(Transceivers.json:311) |
警告 | 💬 经检视裁定接受(未改码) | Richardli25 复核:与既有 GetRxLosState/GetTxFaultState 完全同构(复制既有惯例),非本 PR 新引入缺陷,不阻塞;线程 08-22 17:10 标记 resolved,最终 Formula 仍未加判空 |
| 2 | 平台AI 第1轮 | format_scalar 对字符串类型值会抛 'number expected, got string' 错(lua:20) | 警告 | 💬 经检视裁定接受(未改码) | 复核:mdb baseType 为 Double/U16,DBus 取值恒为数值,字符串场景基本不成立(低风险观察项);最终代码仅返回值包 tonumber(string.format(...)),未按建议做入参 tonumber 预转换 |
| 3 | 平台AI 第1轮 | 返回的 PowerOnCount/ODSPHighTemperatureRuntimeSeconds 未在 "Properties" 中声明,属无效输出(lua:40) | 建议 | 💬 经检视裁定接受(误报) | 复核确认误报:该列表实为 IgnoreEtags(ETag 易变排除项)而非属性暴露控制;字段暴露由 RspBody 的 VendorDefinedMetrics Statement 决定(10 字段全部输出),两项按设计"易变=否"不入 IgnoreEtags 恰好正确 |
| 4 | 平台AI 第1轮 | SNR/LTP 数组脚本未处理 65535 无效值,与 format_scalar 不一致(Transceivers.json:346) | 建议 | 💬 经检视裁定接受(未改码) | 复核部分成立:mdb 定义为 Double[] 且无 65535 哨兵约定,PR 方案自洽;最终 Formula 仍仅做 %.4f,无 65535 元素过滤 |
| 5 | 平台AI 第2轮 | CHANGELOG 版本号 1.110.122 重复出现(08-21 BomId 条目已存在)(CHANGELOG.md:4) | 警告 | ⏳ 未响应(标记解决未改码) | 合入 HEAD 仍并存 ## [1.110.122] 2026-08-21 与 ## [1.110.122] 2026-08-22,mds/service.json 亦为 1.110.122,未见裁定记录或修复 |
| 6 | 平台AI 第2轮 | switch_null 未将 65535 视为无效值,同脚本内处理不一致(lua:30) | 建议 | ⏳ 未响应(标记解决未改码) | 最终 switch_null 仍仅判 nil;UptimeSeconds/PowerOnCount 等 U32/U16 字段若返回 65535 会被原样透出 |
| 7 | 平台AI 第2轮 | ProcessingFlow[3]/[5]/[9] 父对象无 nil 防护,Destination 为 nil 时整个脚本抛错(lua:32) | 警告 | ⏳ 未响应(标记解决未改码) | 最终脚本仍直接索引 ProcessingFlow[9].Destination.*,未加父对象判空 |
| 8 | 平台AI 第2轮 | GetTxLosState 非 NPU 分支在 TxLossState 为 nil 时返回 nil 而非 cjson.null(Transceivers.json:311) | 建议 | ⏳ 未响应(标记解决未改码) | 最终 Formula 该分支仍直接 return,未按建议先判空再返回 |
| 指标 | 结果 |
|---|---|
| AI 意见总数 | 8 |
| 已采纳并修复 | 0 |
| 经检视裁定接受 / 已回复说明 | 4 |
| 未响应(含标记解决未改码) | 4 |
2. 人工检视补充
- 检视人: Richardli25 (zhaotianli)、DataSculptor (wangjian)、yelvsub (huangleisheng)
- 意见概要:
- Richardli25(D14-D25 维度检视,08-21 22:58,结论"一致(建议合入)"):
- 对平台 AI 第 1 轮 4 条意见逐条复核(1 误报 / 2 既有惯例低风险 / 1 部分成立),为后续"标记解决"提供了裁定依据;
- minor① 测试用例未提交 → 开发者最终 commit(08-22 15:43)补充 275 行单测 ✅(但 VCSELVoltage 示例仍为浮点
[3.2],与底层 U16[] 毫伏整数语义不符,PR 描述自身亦建议改[3200],未改); - minor② PR 描述与代码不一致(VCSELVoltage 是否做 %.4f)→ 描述未更新、代码保留
format_array(..., 4)(对 U16 无损),未消除; - minor③ SNR/LTP 易变标记与设计表不一致 → 评审帖已更新(遗留问题1"易变属性已确认并修改"),最终 IgnoreEtags 的 4 项 SNR/LTP + 8 项易变 VDM 字段与设计表逐项一致 ✅。
- DataSculptor(diff_comment,08-22 15:52):北向接口新增但 PR 未附社区评审帖链接 → 开发者 3 分钟内回复"评审贴已附在需求描述里"(附截图),已解决。
- yelvsub(需求提出者):
/lgtm /approve(08-22 17:31),触发合入。
- Richardli25(D14-D25 维度检视,08-21 22:58,结论"一致(建议合入)"):
- 解决状态: 人工 diff_comment 均已解决(resolved);3 个 minor 中 2 个已闭环、1 个(描述-代码一致性)未消除。
3. 评审贴覆盖情况
评审贴链接:【已评审】支持光模块相关接口新增属性,redfish光模块资源新增部分DFX参数
| 评审点 | 接口类型 | 是否涵盖 |
|---|---|---|
| 评审点1:mdb bmc.kepler.Systems.OpticalModule 新增 MediaLTP / HostLTP | 资源协作 | ✅ 消费侧已涵盖(映射 MediaLTP→MediaLTPdB、HostLTP→HostLTPdB;接口定义变更属 mdb_interface 仓) |
| 评审点2:mdb OpticalModule.Voltage 新增 TxVPPVoltage / RxVPPVoltage / VCSELVoltage | 资源协作 | ✅ 消费侧已涵盖(Destination 新增映射 + format_array 差异化精度/哨兵处理) |
| 评审点3:mdb OpticalModule.Temperature 新增 ORFICTemperatureCelsius | 资源协作 | ✅ 消费侧已涵盖(映射 + %.2f 处理) |
| 评审点4:redfish Transceiver 资源新增 DFX 参数 | Redfish | ✅ 已涵盖(4 个 SNR/LTP 数组、TxLosState/TxLolState/RxLolState、VendorDefinedMetrics 10 个子字段全部落地;IgnoreEtags 易变标记与评审表一一对应) |
覆盖统计: 4/4(评审点 1-3 的接口定义变更在 mdb_interface 仓实现,本 PR 完成对应消费映射;评审点 4 为本仓直接实现)
备注:AI 预审(ubmc_assistant)曾判评审点2 不通过(MDB-PROPERTY-015 "从HDK获取"与"掉电持久化"矛盾,属 mdb_interface 侧事项),评审结论最终同意全部变更;4 项遗留问题(易变属性、属性名单位、示例完备性、State 命名)均已确认处理。
4. 总结
- AI 意见"零代码修复、全量标记解决":平台 AI 两轮共 8 条意见在 UI 全部标记 resolved,但合入 HEAD 无一对应代码改动,线程内亦无开发者回复。第 1 轮 4 条经维度检视逐条裁定后接受(含对 IgnoreEtags 机制误报的纠正),处理链条完整;第 2 轮 4 条(CHANGELOG 版本号重复、switch_null 65535、父对象 nil 防护、TxLossState nil 返回)既无修复也无裁定记录——其中 CHANGELOG 同一版本号 1.110.122 两个条目并存为客观遗留,建议后续版本顺手合并或递增。
- 人工检视补充价值显著:Richardli25 的维度检视纠正了 AI 对 IgnoreEtags 机制的误报,并推动了单测补充(+275 行)与设计帖易变属性更新;DataSculptor 的评审帖合规提醒获得分钟级响应。
- 开发者响应态度:对人工意见响应积极(单测补充提交、评审帖链接 3 分钟回复、CLA 签署、按检视建议同步设计帖);对 AI 意见采取"静默解决"模式——与 PR #1374 回顾发现的"标记解决≠实际改码"模式一致,建议后续对不采纳的 AI 意见在线程内简述理由,提升可追溯性。
- 遗留小项(均不影响功能,建议后续版本一并清理):① CHANGELOG 1.110.122 条目重复;② 单测 VCSELVoltage 示例
[3.2]与 U16[] 毫伏整数语义不符(建议[3200]);③ PR 描述与实际不符(称"修改 2 个文件",实际合入 5 个文件;VCSELVoltage 精度处理描述与代码不一致)。
此回顾分析由 AI (OpenClaw + GLM-5-turbo) 完成


/developing2UAT


感谢您为社区贡献新需求!请按照以下提示提供详细信息,以便我们更好地理解并跟进。
版本分支
openUBMC main
需求属性
所属版本
openUBMC26.09
工作量
NA
是否需要编码
是
是否免测试
否
周边依赖
NA
需求来源
NA
需求描述
简要说明
支持通过redfish采集光模块参数
系统用户
网管工具
前置条件
BMC运行正常
主成功场景
支持通过redfish采集光模块参数,含SNR、host/media TLP、Tx Rx LoS/LOL、TxFault、私有参数
扩展场景(含异常场景)
NA
约束
仅UB/UBoE/RoCE端口光模块支持;某个机型/端口类型对应光模块不支持个别参数,redfish对应属性值有明确标识,如 null
非功能需求