D2执行前最后修正(最终版)
日期: 2026-09-14
状态: 等待用户最终确认
任务1:修正Dead-Man测试的cron ID ✅
关键发现
❌ 原方案错误: 暂停ops_system_health(1f99cf7364a9)
✅ 正确方案: 暂停alert_channel_health(7e8ae2aeca81)
理由:
- Dead-Man测试目的是验证"心跳停止后看门狗是否告警"
- alert_channel_health是写心跳的脚本
- 暂停它才能真正模拟"心跳停止"场景
修正后的步骤
| 时间 |
步骤 |
命令/操作 |
| 17:25 |
准备 |
打印时间戳 [TEST] Dead-Man测试开始: 2026-09-15T17:25:00 |
| 17:26 |
备份 |
hermes cron list > D:/Hermes/reports/D2_deadman_backup.txt |
| 17:27 |
暂停alert_channel_health |
hermes cron pause 7e8ae2aeca81 |
| 17:28 |
验证暂停 |
hermes cron list \| grep 7e8ae2aeca81 → 显示paused |
| 17:29-17:59 |
等待30分钟 |
heartbeat_watchdog每小时运行一次(18:00) |
| 18:00 |
验证告警 |
检查dead_mans_switch_alert.txt |
| 18:02 |
恢复cron |
hermes cron resume 7e8ae2aeca81 --run-now |
| 18:05 |
验证恢复 |
hermes cron list \| grep 7e8ae2aeca81 → 显示active |
| 18:10 |
清理 |
删除测试标记文件(如有) |
| 18:15 |
完成 |
打印总结 [TEST] Dead-Man测试完成 |
任务2:修正Dead-Man触发时间 ✅
dead_mans_switch调度确认
心跳监控watchdog: ops_heartbeat_watchdog
调度: 0 * * * *(整点运行)
下次运行: 2026-09-15T18:00:00+08:00
时间线修正
17:27 暂停alert_channel_health
↓
17:27-18:00 心跳停止(33分钟)
↓
18:00 heartbeat_watchdog检测心跳超时
→ 检查channel_health表
→ 发现last_check_time > 30分钟
→ 写入dead_mans_switch_alert.txt
→ 发送TG告警
↓
18:02 恢复alert_channel_health
↓
18:15 测试完成,清理数据
任务3:确认21:00任务无冲突 ✅
21:00任务详情
| 任务 |
cron_id |
脚本 |
是否读写alert_state |
是否读写jobs.json |
冲突风险 |
| 共振桥接器每日流水线 |
725902f0 |
resonance_pipeline.py |
未知 |
可能 |
⚠️ 需确认 |
| 选股台账静默检查 |
6b235078 |
hb_alpha_ledger_watch.py |
未知 |
可能 |
⚠️ 需确认 |
| 📊 每周周报 |
weekly_s |
hb_weekly_summary.py |
否 |
否 |
✅ 无冲突 |
| 月线主进月度回测 |
9dce3919 |
monthly_mainin_backtest.py |
否 |
否 |
✅ 无冲突 |
冲突分析
⚠️ 共振桥接器和选股台账可能读写jobs.json或alert_state.db
- 如果它们也写channel_health表,可能与测试冲突
- 如果它们只读不写,则无冲突
建议:
- 方案A: 推迟到21:45后测试(避开21:00任务)
- 方案B: 先确认脚本行为,再决定
任务4:更新D2最终时间表 ⚠️
原方案问题
❌ 17:30-18:15 Dead-Man测试
问题: cron ID错误(应是7e8ae2aeca81而非1f99cf7364a9)
问题: 时间点需要调整(17:25暂停,18:00触发)
❌ 21:00-21:45 受控测试
问题: 可能与共振桥接器/选股台账冲突
建议调整方案
| 时段 |
任务 |
内容 |
| 17:25-18:15 |
Dead-Man测试 |
暂停alert_channel_health→等待→验证→恢复 |
| 21:45-22:30 |
受控测试(前3项) |
避开21:00任务 |
| 22:30-23:00 |
影子cron集成 |
B3临时替换 |
| 23:00-23:30 |
回归验证 |
清理+确认 |
最终确认清单
□ D1总结已输出并确认(90次运行,100%成功)
□ Dead-Man测试cron ID已修正(7e8ae2aeca81)
□ Dead-Man触发时间已修正(17:25暂停,18:00触发)
□ 21:00任务冲突已分析(建议推迟到21:45后)
□ 备份文件已确认(jobs.json.bak_20260913)
⚠️ 待确认:
- 共振桥接器和选股台账是否读写alert_state.db?
- 受控测试是否推迟到21:45后?
⏳ 等待用户确认...
请确认调整后方案,回复"进入D2"启动明天执行。