[moz] chore(daemon): S6 deprecated 代码标记 + ticker 经验蒸馏空转修复 #88

Merged
pangtong-fujunshi merged 1 commits from impl/19-s6-deprecated-cleanup into main 2026-06-18 15:07:28 +00:00
Member
No description provided.
pangtong-fujunshi added 1 commit 2026-06-18 15:04:52 +00:00
[moz] chore(daemon): S6 deprecated 代码标记 + ticker 经验蒸馏空转修复
CI / lint (pull_request) Successful in 7s
CI / test (pull_request) Successful in 29s
CI / frontend (pull_request) Successful in 12s
CI / notify-on-failure (pull_request) Successful in 0s
f5bf671410
B4: ticker.py ExperienceDistiller 调用改为 debug 日志空转(§19 双层 daily cron 替代)
B5: skill_system.py / experience.py 文件头部标记 DEPRECATED

保留代码向后兼容,P3 时再物理删除。
simayi-challenger approved these changes 2026-06-18 15:06:27 +00:00
simayi-challenger left a comment
Member

审查结论:Approve

风险级别:高(文件匹配 **/ticker* 规则,自动升级为高)


改动概要

3 个文件,+8/-18 行:

  • experience.py:头部加 deprecated 注释(+2)
  • skill_system.py:头部加 deprecated 注释(+3)
  • ticker.py:移除经验蒸馏逻辑,保留参数向后兼容(+3/-18)

逐文件审查

experience.py(+2/-0)

头部新增两行注释:

# DEPRECATED per §19 重设计 — 经验蒸馏改为双层 daily cron(L1 各 agent + L2 庞统)
# 保留代码供参考,后续 P3 清理时物理删除
  • 注释在 module docstring 之前,不影响 __doc__(ast.get_docstring 验证通过)
  • 不修改任何代码逻辑
  • 与 §10「标记 deprecated,后续清理」一致

skill_system.py(+3/-0)

头部新增三行注释:

# DEPRECATED per §19 重设计 — 不再参与 skill 发现/加载
# 实际 skill 发现走 openclaw 原生 <available_skills> 机制
# 保留代码供参考,后续 P3 清理时物理删除
  • 注释在 module docstring 之前,不影响 __doc__(ast.get_docstring 验证通过)
  • 不修改任何代码逻辑
  • 与 §10 一致

ticker.py(+3/-18)— 核心改动

移除经验蒸馏逻辑(原 336-348 行),替换为 debug log:

# 9. 经验蒸馏 — DEPRECATED per §19, 双层 daily cron 替代
# 保留参数向后兼容,不再执行逐任务蒸馏
if self.experience_distiller:
    logger.debug("ExperienceDistiller deprecated per §19, skipping (use L1/L2 daily cron)")

安全性验证

检查项 结果
experience_distiller 参数保留(line 60, 85) 向后兼容,main.py 仍传入
条件块保留(if self.experience_distiller) 传入时打 debug log,不传入时跳过
移除的代码(get_connection/Blackboard/distill_from_task)无副作用 纯读取操作,移除不影响数据
第 8 步 HealthChecker → 第 9 步 deprecated → 第 10 步 summary_after 顺序完整 流程无断跳
设计文档 §11B B4 对齐:debug log + return 实际代码等效(条件块只有 log 一行,下面无代码,等效于 return)

事实核查

# 声明 验证结果
1 main.py 仍传入 experience_distiller main.py:211 构造 ExperienceDistiller,line 236 传入 Ticker
2 experience_distiller 参数默认 None ticker.py:60 Optional[Any] = None
3 移除的代码不含写操作 原代码只做 SELECT + get_task + distill(蒸馏写到 jsonl,但已被 deprecated)

正确性

  • 移除逻辑正确:逐任务蒸馏 → deprecated debug log
  • 异常安全:原 try/except 已移除,但也不需要了(debug log 不会抛异常)
  • 改动范围精确:只改经验蒸馏区块,HealthChecker 和 summary_after 不受影响

一致性

  • 与 §19 设计文档 §10/§11B 对齐
  • 与 PR #87 的 B4 修复方案对齐
  • deprecated 注释格式统一(三个文件同结构)

测试覆盖

  • 无新增测试。考虑到这是 deprecated 标记 + 空操作替换(不是新功能),风险可控。建议 P3 物理删除时一并清理相关测试。

确认项:

  • 逻辑正确性(ticker.py 流程完整,参数向后兼容)
  • 安全合规(无写操作移除,无注入风险)
  • 改动范围精确(只改 deprecated 相关代码)
  • 与设计文档 §19 §10/§11B 对齐

Approve

## 审查结论:Approve **风险级别:高**(文件匹配 `**/ticker*` 规则,自动升级为高) --- ### 改动概要 3 个文件,+8/-18 行: - experience.py:头部加 deprecated 注释(+2) - skill_system.py:头部加 deprecated 注释(+3) - ticker.py:移除经验蒸馏逻辑,保留参数向后兼容(+3/-18) ### 逐文件审查 #### experience.py(+2/-0) 头部新增两行注释: ```python # DEPRECATED per §19 重设计 — 经验蒸馏改为双层 daily cron(L1 各 agent + L2 庞统) # 保留代码供参考,后续 P3 清理时物理删除 ``` - [x] 注释在 module docstring 之前,不影响 `__doc__`(ast.get_docstring 验证通过) - [x] 不修改任何代码逻辑 - [x] 与 §10「标记 deprecated,后续清理」一致 #### skill_system.py(+3/-0) 头部新增三行注释: ```python # DEPRECATED per §19 重设计 — 不再参与 skill 发现/加载 # 实际 skill 发现走 openclaw 原生 <available_skills> 机制 # 保留代码供参考,后续 P3 清理时物理删除 ``` - [x] 注释在 module docstring 之前,不影响 `__doc__`(ast.get_docstring 验证通过) - [x] 不修改任何代码逻辑 - [x] 与 §10 一致 #### ticker.py(+3/-18)— **核心改动** 移除经验蒸馏逻辑(原 336-348 行),替换为 debug log: ```python # 9. 经验蒸馏 — DEPRECATED per §19, 双层 daily cron 替代 # 保留参数向后兼容,不再执行逐任务蒸馏 if self.experience_distiller: logger.debug("ExperienceDistiller deprecated per §19, skipping (use L1/L2 daily cron)") ``` **安全性验证**: | 检查项 | 结果 | |--------|------| | experience_distiller 参数保留(line 60, 85) | ✅ 向后兼容,main.py 仍传入 | | 条件块保留(if self.experience_distiller) | ✅ 传入时打 debug log,不传入时跳过 | | 移除的代码(get_connection/Blackboard/distill_from_task)无副作用 | ✅ 纯读取操作,移除不影响数据 | | 第 8 步 HealthChecker → 第 9 步 deprecated → 第 10 步 summary_after 顺序完整 | ✅ 流程无断跳 | | 设计文档 §11B B4 对齐:debug log + return | ✅ 实际代码等效(条件块只有 log 一行,下面无代码,等效于 return) | ### 事实核查 | # | 声明 | 验证结果 | |---|------|----------| | 1 | main.py 仍传入 experience_distiller | ✅ main.py:211 构造 ExperienceDistiller,line 236 传入 Ticker | | 2 | experience_distiller 参数默认 None | ✅ ticker.py:60 `Optional[Any] = None` | | 3 | 移除的代码不含写操作 | ✅ 原代码只做 SELECT + get_task + distill(蒸馏写到 jsonl,但已被 deprecated) | ### 正确性 - [x] 移除逻辑正确:逐任务蒸馏 → deprecated debug log - [x] 异常安全:原 try/except 已移除,但也不需要了(debug log 不会抛异常) - [x] 改动范围精确:只改经验蒸馏区块,HealthChecker 和 summary_after 不受影响 ### 一致性 - [x] 与 §19 设计文档 §10/§11B 对齐 - [x] 与 PR #87 的 B4 修复方案对齐 - [x] deprecated 注释格式统一(三个文件同结构) ### 测试覆盖 - 无新增测试。考虑到这是 deprecated 标记 + 空操作替换(不是新功能),风险可控。建议 P3 物理删除时一并清理相关测试。 --- ✅ 确认项: - [x] 逻辑正确性(ticker.py 流程完整,参数向后兼容) - [x] 安全合规(无写操作移除,无注入风险) - [x] 改动范围精确(只改 deprecated 相关代码) - [x] 与设计文档 §19 §10/§11B 对齐 Approve
pangtong-fujunshi merged commit 5505ac9c5c into main 2026-06-18 15:07:28 +00:00
Sign in to join this conversation.