hermes-job-monitor-tdd.md 1.14 KB

Hermes Job Monitor TDD Plan

Diagnosed Issues

  1. 模板中使用 \" 转义可能被 Jinja2 误解
  2. JS 代码中可能有静默失败(catch 吃掉了错误)
  3. 没用 TDD 导致无法验证每个单元

TDD 步骤 (每个都 RED→GREEN→REFACTOR)

Test 1: DB layer - hermes_jobs CRUD

文件: test_jobs.py

  • test_job_add: INSERT → 验证读回数据
  • test_job_update_status: UPDATE → 验证 completed_at 被设置
  • test_job_list: 插入多条 → 验证列表返回

Test 2: API layer - 路由响应

  • test_api_jobs_empty: GET /api/jobs → 200, {"ok":true, "data":[]}
  • test_api_job_not_found: GET /api/job/xxx → 404
  • test_api_job_log_not_found → 404

Test 3: 集成 - 触发任务 + 追踪

  • 触发 summarize → 返回 task_id
  • 查询 /api/jobs → 看到该条记录
  • 查询 /api/job//log → 看到日志内容

Test 4: 前端 - JS 修复

  • 去掉 \" 转义,改用单引号内嵌双引号
  • 加 console.log 调试输出
  • 页面测试: curl 页面 → 确认 JS 无语法错误

修复策略

模板中不应使用 \" ——应该是普通的 " 因为在单引号 JS 字符串里不需要转义双引号。