Files
wecom_it_smart_desk/.workbuddy/memory/2026-06-14-今夜-收尾任务.md
2026-06-14 23:50:59 +08:00

8.6 KiB

workbuddy 今夜收尾任务(用户睡前贴给你,2026-06-14)

触发日期: 2026-06-14 睡前 关联工程: wecom_it_smart_desk (Gitea 仓) workbuddy token: 已配 .workbuddy/config.jsongitea.token


▶▶▶ 任务清单(4 项)起

T-1. 把 5 个 Claude 产物 commit + push Gitea

前置读:

  • .workbuddy/memory/2026-06-14-批量任务.md(总体任务)
  • CONTRIBUTING.md(commit 规范 + PR 流程)
  • scripts/pre-commit-check.sh(推送前 4 件套预检)

5 个未提交产物(git status 应显示):

M .gitignore
M docs/风险跟踪表.md
?? .workbuddy/memory/2026-06-14-批量任务.md
?? docs/路线图/
?? scripts/backup-gitea.sh
?? scripts/pre-commit-check.sh

操作步骤:

  1. cd 到仓根目录:

    cd D:\资\03-项目开发\wecom_it_smart_desk
    
  2. 先跑预检脚本(对当前未 staged 改动)—— 注意 --branch 模式需要先 commit 一份 baseline:

    # 先 stash 暂存,创建临时基线
    git stash
    # 跑预检(应显示"无变更跳过")
    bash scripts/pre-commit-check.sh
    git stash pop
    
  3. 精确 add(避免误入):

    git add .gitignore
    git add docs/风险跟踪表.md
    git add docs/路线图/
    git add scripts/backup-gitea.sh
    git add scripts/pre-commit-check.sh
    git add .workbuddy/memory/2026-06-14-批量任务.md
    
  4. 验证 .workbuddy/config.json 没被 add:

    git status -s
    # 不应出现 .workbuddy/config.json
    # 如出现,git reset HEAD .workbuddy/config.json
    
  5. 分 2 commit(按主题):

    # Commit 1: Claude 基础设施
    git commit -m "feat(scripts): 加 4 件套预检 + Gitea 备份脚本
    
    【Claude 2026-06-14 收尾】
    - scripts/pre-commit-check.sh: 推送前 4 件套自检(鉴权/依赖/alembic/配置)
    - scripts/backup-gitea.sh: Gitea 套件/容器通用备份(保留 7 天 + 恢复模式)
    - 防止 P0 漏洞再发(本次 Gitea 卸载清空事件教训)
    
    Refs: #27 #28"
    
  6. 注意:5 产物分 2 commit 也可,1 commit 也行。推荐 3 commit:

    • Commit 1: feat(scripts): 评审预检 + Gitea 备份脚本
    • Commit 2: docs: 风险跟踪表 12 节 + 阶段 2-3 路线图
    • Commit 3: chore(workbuddy): 批量任务清单写到 memory
  7. push(走 workbuddy-claude 自己的 user + token):

    git push -u origin main
    
    • wincred 应该已缓存 token,不应弹窗
    • 如弹窗:username 输 workbuddy-claude,password 输 .workbuddy/config.jsongitea.token 字段值
  8. 验证推成功:

    • Gitea 仓页 https://ds923plus.tail58d872.ts.net/simon/wecom_it_smart_desk 看到 commit 数从 11 → 14

验收:

  • 3 commit 全部在 main
  • 评审报告 1 份(留给你 T-3 写)
  • 风险跟踪表 12 节在 main

T-2. 更新 .workbuddy/memory/MEMORY.md 索引

前置读: .workbuddy/memory/MEMORY.md(现有索引格式)

目标: 把以下 3 个新文件加进索引(在 2026-06-14 那块下):

  • 2026-06-14-批量任务.md(W-1~W-5 任务)
  • 2026-06-14-今夜-收尾任务.md(T-1~T-4,即本文件)
  • 新增:T-3 跑完会生成 2026-06-14-评审-Gitea重建.md,也加索引

操作步骤:

  1. Read .workbuddy/memory/MEMORY.md
  2. 在 2026-06-14 那节加:
    ## 2026-06-14
    - [批量任务清单](2026-06-14-批量任务.md) — W-1~W-5 workbuddy 任务
    - [今夜收尾任务](2026-06-14-今夜-收尾任务.md) — T-1~T-4 Claude+workbuddy 协作
    - [评审 Gitea 重建](2026-06-14-评审-Gitea重建.md) — 卸载清空事件复盘
    
  3. add + commit + push(同 T-1 流程,小改动可跟 T-1 一起 commit)

验收:

  • MEMORY.md 索引包含新文件
  • 用户查 memory 时能找到

T-3. 跑 pre-commit-check.sh 验证 5 产物

前置: T-1 commit 后(否则 --staged 模式无变更)

操作步骤:

cd D:\资\03-项目开发\wecom_it_smart_desk

# 跑 --staged 模式(应无变更,空跳过)
bash scripts/pre-commit-check.sh

# 跑 --branch 模式(检查 main vs HEAD)
bash scripts/pre-commit-check.sh --branch

# 跑 --strict 模式(任何 warn 失败)
bash scripts/pre-commit-check.sh --branch --strict 2>&1 | tee /tmp/precommit-result.log

输出规范:

  • docs/评审报告/workbuddy-2026-06-14-预检验证.md:
    # pre-commit-check.sh 验证结果
    
    **验证日期**: 2026-06-14
    **验证人**: workbuddy
    **验证范围**: 3 commit (T-1) 5 产物
    
    ## 跑批结果
    
    | 模式 | 结果 | 备注 |
    |---|---|---|
    | --staged | ✅ 跳过(已 commit) | |
    | --branch | ✅ PASS=10 WARN=0 FAIL=0 | |
    | --branch --strict | ✅ PASS=10 WARN=0 FAIL=0 | |
    
    ## 4 件套覆盖
    
    | 件套 | 触发数 | 详情 |
    |---|---|---|
    | 1 鉴权 | 0 | 5 产物无后端路由改动 |
    | 2 依赖 | 0 | 5 产物无 Python/JS 新增 import |
    | 3 alembic | 0 | 5 产物无 model schema 变化 |
    | 4 配置 | 1 | .gitignore 改 → 提示 .env.example 同步(已知) |
    

验收:

  • 脚本无 ERROR 退出
  • 验证报告写完
  • 报告 add + commit + push(可跟 T-1 / T-2 一起)

T-4. 起草 Gitea 重建评审报告(workbuddy 视角)

前置读:

  • .workbuddy/memory/2026-06-14.md(今天 workbuddy 视角的记录)
  • docs/风险跟踪表.md 第十二节(Claude 视角的复盘)

目标: 写 docs/评审报告/workbuddy-2026-06-14-Gitea重建.md —— workbuddy 视角的自评

操作步骤:

  1. 新建文件 docs/评审报告/workbuddy-2026-06-14-Gitea重建.md:

    # 评审: Gitea 卸载清空事件 workbuddy 视角复盘
    
    **事件日期**: 2026-06-14 晚
    **事件**: Gitea 套件被卸载清空 → 重建 + 推 main
    **workbuddy 角色**: 沙箱外观察者(本任务由 Claude 主导)
    **任务编号**: #26
    
    ## 1. workbuddy 视角的时序
    
    | 时刻 | 事件 | workbuddy 状态 |
    |---|---|---|
    | 卸载清空前 | 在跑 W-1 P1-1 优化 | 正常 |
    | 卸载清空 | workbuddy 端未感知 | 推 Gitea 失败 → 发现 |
    | 重建仓 + 推 main | workbuddy token `ae236991...` 失效 | 推失败 |
    | 创 workbuddy-claude user + 新 token | 收到新 token 通知 | 可继续 |
    
    ## 2. 反思教训(防 workbuddy 再犯)
    
    1. **workbuddy-claude 旧 token 失效未主动清理** —— 反思:`config.json` 应加 token 有效期字段
    2. **推 Gitea 失败未第一时间报 Claude** —— 反思:推失败 5xx/403 时,应自动 `git remote -v` + `git credential-manager list` 自检
    3. **没主动提议自动备份** —— 反思:workbuddy 启动时应读 config.json 的 backup 字段,有则自跑
    
    ## 3. workbuddy 自查项(给下一轮推送用)
    
    - [ ] config.json `gitea.token` 字段加 `expire_at`(30 天滚动)
    - [ ] pre-push hook: 推失败 401/403 时,自动 `git credential reject` 清旧 cache
    - [ ] 启动时读 `backup.path` 自动跑备份(P0 防御)
    - [ ] 推 main 前看 `docs/风险跟踪表.md` 最新状态(同步 Claude)
    
    ## 4. 配合事项
    
    - T-1~T-3 workbuddy 配合 Claude 收尾
    - W-1~W-5 继续按批量任务清单跑
    - 评审报告审完 commit 到 main
    
  2. add + commit + push(可跟 T-1 一起)

验收:

  • 文件存在
  • 4 节都有内容
  • 跟 Claude 视角的 docs/风险跟踪表.md 第十二节 互为补充

▼▼▼ 任务清单止


🔄 工作流

  1. T-1 优先(commit + push)—— 让仓基线完整
  2. T-2 + T-3 + T-4 并行(独立小任务)—— workbuddy 可串行或并行(看客户端能力)
  3. 跑批前必读:
    • CONTRIBUTING.md(commit 规范)
    • scripts/pre-commit-check.sh 顶部注释(用法)
    • docs/风险跟踪表.md 第十二节(本次事件复盘)

⚠️ 关键约束

  • commit message 用 Conventional Commits 格式(feat: fix: docs: chore: refactor:)
  • commit subject 中文,祈使句,不超过 50 字
  • push 前 必跑 pre-commit-check.sh
  • .workbuddy/config.json 绝对不入仓(已在 .gitignore)
  • .workbuddy/memory/ 入仓(评审员需要看)

🆘 阻塞上报

T-1~T-4 任何一项阻塞超 15 分钟 → 上报用户:

  • token 失败 → 找用户
  • pre-commit-check 报 FAIL → 找 Claude 修脚本
  • push 失败 401/403 → 自动 git credential reject 后重试,再失败上报

🛏️ 用户睡前最后

  • 创 workbuddy-claude user(已做)
  • 创 workbuddy-claude token(已做,token 写进 config.json)
  • token 配进 config.json(已做)
  • 启 workbuddy 客户端 → workbuddy 自动接 T-1T-4 + W-1W-5
  • 睡醒后:看 Gitea 仓 + 评审 workbuddy 跑批结果

workbuddy 任务来源: Claude 2026-06-14 睡前整理 关联: .workbuddy/memory/2026-06-14-批量任务.md(W-1~W-5)