Files
Nexus/docs/audit/2026-06-30-offline-daily-preflight-health-check.md
2026-07-08 22:31:31 +08:00

1.8 KiB

审计 — 每日离线巡检发报前 SSH 复检

范围(文件清单)

文件 变更
server/application/server_connectivity.py health_check_server_ids;扫描列表 batch_server_display_name
server/application/services/offline_daily_report_schedule.py preflight 后二次 snapshot
server/config.py OFFLINE_DAILY_REPORT_HEALTH_CHECK
server/infrastructure/telegram/__init__.py preflight 参数与文案
server/background/server_offline_monitor.py 告警显示名备注优先
tests/test_offline_daily_report_schedule.py preflight 单测

Step 3 规则扫描

H 规则 结论
H1 复用既有 SSH 探测,不新造协议 PASS — ssh_health_probe + write_ssh_health_heartbeat
H2 并发受控 PASS — Semaphore(10) 与批量健康检查一致
H3 可配置关闭 PASS — OFFLINE_DAILY_REPORT_HEALTH_CHECK
H4 日报数据为复检后 snapshot PASS — 二次 collect_offline_snapshot
H5 显示名与批量任务 SSOT 一致 PASS — batch_server_display_name

Closure

H 判定 依据
H1 SAFE server_connectivity.health_check_server_ids
H2 SAFE asyncio.Semaphore(max(1, concurrency))
H3 SAFE _health_check_enabled()
H4 SAFE offline_daily_report_schedule.run_scheduled_offline_daily_report
H5 SAFE scan_monitored_connectivity / server_offline_monitor

DoD

  • pytest tests/test_offline_daily_report_schedule.py tests/test_batch_server_display_name.py
  • changelog 2026-06-30-offline-daily-preflight-health-check.md
  • 无 DB 迁移

验证

.venv/bin/pytest tests/test_offline_daily_report_schedule.py tests/test_batch_server_display_name.py -q