Files
skelet/progress.md
T
ilaandClaude Fable 5 678d081124 Harden task board and specs for weaker coding agents
- 06-tasks: add per-task detail sheets for Phase 0/1 (concrete init
  commands, BLOCKED preconditions, verification commands with expected
  results) and a constraint/verification quick table for Phase 2/3;
  replace subjective acceptance wording with checkable items
- 04-architecture: promote 3.4 to an authoritative filter-param
  contract (names, values, AND combination, invalid-value handling);
  add required/optional/default field annex with 0-5 validators to
  3.3; state AiCodingScore is not a model in MVP; record structure
  decision (keep wagtail-start home/search apps, business models in
  new core app, no Dockerfile)
- 03-tech-stack: add version-pinning policy row for T-001
- routes/02-requirements: point filter wording back to the 3.4
  contract instead of maintaining copies
- T-104: human-input boundary - seed projects, scores and verdicts
  must be user-confirmed; BLOCKED without a confirmed list
- current-state snapshot updated; maintenance record appended to
  progress.md

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 16:11:54 +08:00

7.6 KiB
Raw Blame History

执行进度记录

本文件是只追加的历史流水,用来记录任务执行过程、验证命令、阻塞点和关键决策。 当前目录、当前命令、下一个可领取任务等可覆盖快照,写入 docs/current-state.md。

职责边界

  • docs/06-tasks.md:任务看板,维护任务状态、依赖和验收要点。
  • progress.md:历史流水,只追加记录每轮执行发生了什么。
  • docs/current-state.md:当前快照,可覆盖更新仓库现实、可运行命令和下一步。

不要在本文重复维护当前目录结构、当前运行命令或下一个任务;这些信息以 docs/current-state.md 为准。

记录格式

每完成或中断一轮任务,在文件末尾追加一条记录:

## YYYY-MM-DD T-编号 任务名

- 状态:DONE / BLOCKED / PARTIAL
- 变更:修改了哪些文件或模块
- 验证:运行的真实命令和结果
- 阻塞:如有,写明原因和需要谁决策;没有写“无”
- 决策:如有,记录本轮确定的关键取舍
- 下一步:建议下一个任务 ID 或待确认事项

执行记录

2026-07-06 T-000 初始化 harness 文档

  • 状态:DONE
  • 变更:复制 D:\github\harness_coding_docs 模板到当前项目,并替换根目录入口、需求、技术栈、架构、编码规则、任务看板、API 边界、路由和当前状态文档。
  • 验证:Get-ChildItem -Recurse -File 已列出根目录和 docs/ 文档;定向检查确认根入口不再误称模板库。init.ps1 / init.sh 的命令占位保留到 T-001 初始化生产代码时替换。
  • 阻塞:生产代码尚未初始化,init.ps1 / init.sh 仍为占位命令。
  • 决策:第一版采用 Wagtail + Django + Python 3.12 + SQLite;先做内容目录和评测闭环,不做前台用户系统、支付、评论、自动抓取和复杂搜索。
  • 下一步:T-001 初始化 Wagtail 项目骨架。

2026-07-06 文档审核与优化(harness 文档瘦身 + 商业计划加验证闸门)

  • 状态:DONE
  • 变更:
    • docs 瘦身:method-map.md、evaluator-rubric.md、quality-document.md、adoption-checklist.md 四个元文档合并为 docs/90-harness-reference.md 并删除原文件,移出每轮必读链路;AGENTS.md 定为唯一权威入口,README.md、docs/README.md、docs/00-ai-start-here.md 删除重复的定位/必读顺序/技术栈内容,改为链接。
    • 纠错:修正 00-ai-start-here.md 中"尚未初始化 git"的过期事实;开发环境定为 WSL2/Linux(/mnt/d/OPC/skelet),全部文档命令改为 bash 形态,init.sh 为标准入口、init.ps1 降为可选。
    • 评分模型统一:04-architecture.md 定为评分维度唯一权威(6 个 0-5 分项,新增 incremental_score,删除独立录入的 0-100 总分,总分改为由分项计算);business-plan-v1.md 和 research-sourcing-strategy.md 改为引用。
    • 数据模型:scenario 字段明确为多对多(scenarios)。
    • 任务看板:新增 T-305(轻量访问统计与外链点击,M3/M4 数据前置,T-304 增加对其依赖);Backlog 收入首批内容库任务(原 T-105~T-109,收敛为 2 个场景)和 llms.txt/JSON 导出。
    • 商业文档:里程碑加验证闸门和止损线(M2 从 8 场景 50 项目砍到 2 场景 20 项目;M3 定 8 周/12 周复盘线;内容投入封顶 20 项目+12 篇);定站点语言为英文单语言、主攻"AI Coding 友好度"角度词、头部词只作词根;竞品分析补"直接问 AI"为最大隐性竞品及 llms.txt 借力策略;Newsletter 口径统一为"MVP 外部托管订阅外链、完整功能 V2";付费价格标注为未验证假设;发布节奏按单人投入下调。
  • 验证:git status + find . -type f -not -path "./.git/*" 确认文件清单;grep 确认仓库内已无对四个被删元文档的引用(progress.md 历史记录除外),无残留 PowerShell 命令(历史记录除外)。
  • 阻塞:无。
  • 决策:第一版英文单语言站点;首批只做 SaaS 和内容站/CMS 两个场景;评分维度以 docs/04-architecture.md 为唯一权威;M3 闸门不过不扩内容。
  • 下一步:T-001 初始化 Wagtail 项目骨架。

2026-07-06 仓库卫生维护(.gitignore 修复 + 行尾统一 + 路径纠错)

  • 状态:DONE
  • 变更:
    • 修复忽略文件:原文件名拼写为 .gittignore,git 不识别,deploy/(含 SSH 私钥 tokyo.pem)处于可被提交状态;现为标准 .gitignore,并补齐凭证类(*.pem、.env*)和 Python / Django / Wagtail 运行产物(__pycache__/、.venv/、db.sqlite3*、media/、staticfiles/)忽略项。
    • 新增 .gitattributes(* text=auto eol=lf):此前仓库以 CRLF 提交、工作区为 LF,导致 26 个文件出现全量假差异;统一按 LF 提交,本轮一次性归一化,之后 diff 只反映真实内容变化。
    • 路径纠错:AGENTS.md、docs/00-ai-start-here.md、docs/03-tech-stack.md、docs/90-harness-reference.md、docs/current-state.md 中仓库根目录由 /mnt/d/OPC/skelet 修正为实际路径 /mnt/d/opc_project/skelet(本文历史记录按只追加规则不改写)。
    • docs/current-state.md:目录要点补登 business/、deploy/(不入库)、.gitignore / .gitattributes。
  • 验证:git check-ignore -v deploy/tokyo.pem 确认私钥被忽略;git diff --ignore-cr-at-eol --stat 确认既有 26 文件差异全部为行尾、无内容变化;grep -rn "OPC/skelet" 确认除本文历史记录外无残留旧路径。
  • 阻塞:无。
  • 决策:deploy/ 整目录不入库,部署凭证只保留在本机;行尾规范定为 LF(与 WSL2/Linux 标准开发环境一致)。
  • 下一步:T-001 初始化 Wagtail 项目骨架。

2026-07-06 任务看板加固(面向执行能力较弱的模型)

  • 状态:DONE
  • 变更:
    • docs/06-tasks.md:新增「任务详单」一节。Phase 0/1 每任务给出实现指引、前置检查和带预期结果的验证命令(T-001 含 wagtail start 逐步命令和 BLOCKED 条件);Phase 2/3 给出关键实现约束与验证速查表。表格中的主观验收措辞("字段校验合理""移动端不溢出"等)替换为可勾选项。
    • docs/04-architecture.md:§3.4 升级为筛选参数契约表(唯一权威:language/framework/database/min_score/q/page,单值、AND 组合、非法值处理规则);§3.3 表下新增必填/可空/默认附注和评分校验器要求;§3.2 明确 AiCodingScore MVP 不建模型;§一/§六记录结构决策:保留 wagtail start 生成的 home/search app,业务模型集中在新建 core app,测试放各 app tests.py,删除生成的 Dockerfile。
    • docs/03-tech-stack.md:新增版本钉死策略行(T-001 时按 pip 实装稳定版 pin wagtail==X.Y.Z 并回写)。
    • docs/routes.md、docs/02-requirements.md:筛选相关表述指回 §3.4 契约,不再各自维护。
    • docs/current-state.md:快照与目录要点同步上述结构决策。
    • T-104 明确人工输入边界:候选项目、评分、评语必须经用户确认,无清单时标 BLOCKED,禁止模型编造。
  • 验证:grep 检查 §3.4 引用一致(routes、requirements、06-tasks 均指向 04-architecture);人工核对任务详单命令与 03-tech-stack §三目标命令形态一致。
  • 阻塞:无。
  • 决策:筛选参数契约以 04-architecture.md §3.4 为唯一权威;home/search app 保留不改名;AiCodingScore 不建模型;种子内容评分必须人工确认。
  • 下一步:T-001 初始化 Wagtail 项目骨架(详单已可直接照做)。