🏛 架构平台 Arch.Platform

seed 行为可见性:冷启动注入可被运维识别,避免误判 seed 重建为 backup 恢复

fd7011ae
✏️ 编辑
优先级 P1
类型 优化
状态 已拒绝
负责人 @claude

关联组件:e6ef484b-c522-4e28-8e15-de7ad5e2c9bd

📝 描述

历史遗留 REQ,经 REQ-69212ee4 状态机扩展后清理 --- reason: REQ-69212ee4 状态机扩展后清理:0-commit 历史遗留 REQ,经评审无可恢复实施路径,关闭以清理悬空态

👤 用户故事

作为架构平台运维,我需要在容器冷启动时看到醒目的告警日志(包含 [SEED-COLD-START] tag + 注入组件数 + 备份验证提示),以便区分 seed 函数重建 vs backup 恢复,避免被 seed 重建骗到。 参考 2026-06-21 02:21:31 数据丢失事件:报告人 fix_plan 声称"已恢复",实为 _seed_components_if_empty() 从 docs/components/*.md 种子重建,2026-06-21 02:21:31 之前的真实用户行为数据永久丢失。如果当时 seed 行为可见,运维会立刻识别"这是冷启动种子,不是 backup 恢复"并启动人工干预。

✅ 验收标准 (4 项)

  1. Given 后端容器启动且 DB 为空
    When _seed_components_if_empty() 检测到冷启动并从 docs/components/ 注入种子
    Then logger.warning 打印 [SEED-COLD-START] tag + 注入组件数 + 备份验证提示('⚠️ 如近期发生 rm -rf 事件请人工检查 backups/ 是否包含 pre-event 数据,不要把 seed 重建误判为 backup 恢复')
  2. Given 后端容器启动且 DB 非空
    When _seed_components_if_empty() 检测到已有数据
    Then logger.info 正常跳过(不打印 SEED-COLD-START)
  3. Given 运维 grep 容器日志找冷启动信号
    When 搜 SEED-COLD-START
    Then 能直接看到所有冷启动时刻,无需从其他日志推断
  4. Given 本机或 #1 上跑 journalctl / docker logs 看后端日志
    When 查 SEED-COLD-START 最近一次出现时间
    Then 应能反推上次容器启动时间,与 cron / backup.log 时间戳对比判断'启动是正常升级还是异常冷启'

🏷️ 标签

seed observability follow-up-of-FB-d3f61888 follow-up-of-FB-6c374e21

🔄 推进状态

新状态
负责人
描述(rejected/cancelled 必填)

🔗 关联反馈 (20 个)

创建于 2026-06-22 02:55 · 决策于 2026-06-22 12:41 · 关闭于 2026-06-22 12:51