Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .harness/engine.lock
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"engine": "delivery-harness",
"version": "0.1.0",
"commit": "c22ddedd6c98c55e9a25025663bce72807ef81d3",
"tree": "sha256:a33b78ba880f14f5efdf3b158843291768e228f21764f50b6e5c85d0a642953d"
"commit": "f7b79913a04206c2ff9452f540bcd1211096ff54",
"tree": "sha256:c5900fe320c95e8d98c2e2663d602bc629a1e5352add91647b29fed67ed32702"
}
2 changes: 1 addition & 1 deletion .harness/engine/core/install.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ def migration_notes(previous_version: str) -> list[str]:
if line.startswith("## "):
version = re.search(r"\d+\.\d+\.\d+", line)
applies = "Unreleased" in line or (version is not None and _version_tuple(version.group()) > _version_tuple(previous_version))
elif applies and "**Migration:**" in line:
elif applies and line.lstrip("- ").startswith("**Migration:**"):
notes.append(line.lstrip("- ").strip())
return notes

Expand Down
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
## 开发入口

- Python 后端和适配器在 `scripts/`,Swift 原生界面与 Zcode 导航在 `native/`,统一 CLI 在 `bin/session-manager`。
- 统一验证:`bin/verify`(lint、仓库卫生、Python 测试、macOS 上的 Swift 测试,与 CI 同口径)。修复提交带 `Defect: <编号>` trailer,通过与否只认 verify 与 CI 输出,不手写。约定与护栏见 docs/specs/delivery-harness.md;harness 引擎是独立项目 delivery-harness(装在 `.harness/engine/`,只能经 `upgrade` 整体替换),引擎的开发、待办与路线都在该仓库(本机 `../delivery-harness`)进行,本仓库只经升级 PR 接收新版本。
- 统一验证:`bin/verify`(lint、仓库卫生、Python 测试、macOS 上的 Swift 测试,与 CI 同口径)。修复提交带 `Defect: <编号>` trailer,通过与否只认 verify 与 CI 输出,不手写。约定与护栏见 docs/specs/delivery-harness.md;harness 引擎是独立项目 delivery-harness(装在 `.harness/engine/`,只能经 `upgrade` 整体替换),引擎的开发、待办与路线都在该仓库(本机 `../delivery-harness`)进行,本仓库只经升级 PR 接收新版本,升级流程(含迁移项处理)按 `../delivery-harness/docs/upgrading.md`。
- 新环境准备由 Agent 自行完成,不交给人(均幂等,可重复执行):`scratch/iterm-probe-venv` 缺失时按 README.zh-CN.md「快速上手」重建;`scratch/iterm-probe-venv/bin/python -m pip install -r requirements-dev.txt`;`bin/harness guard-git install`;最后 `bin/verify`,它会检查前两步。
- Agent 工具的项目守卫需要人确认一次信任,Agent 不得代为授权(自授信任等于执行者给自己放行):Agent 不得替执行方信任槽位或仓库里执行方能改的项目文件。`bin/dispatch` 派发 Pi 时用 `-na` 忽略槽位中的全部项目文件、`-e` 显式加载从 origin/main 导出的守卫,守卫来自经用户批准合并的 harness,不需要也不构成对槽位的信任(用户 2026-09-28 确认)。开工时自查,未信任就把命令交给用户:Zcode 用 `zcode hooks trust status --workspace <仓库根>` 查看,按其提示由用户 `grant`;Pi 由用户在仓库根启动 `pi` 执行 `/trust`;Claude Code 首次启动时由用户确认项目钩子;OpenCode 无需确认。未信任时 Agent 层守卫不生效,只剩 git 与服务端两层。
- 派发与评审:执行方任务先写任务书(`docs/templates/task.md`,合并后)再用 `bin/dispatch run <任务书>` 派发,不在主目录运行执行方;设计方自己实现的工作也写任务书,与实现同一个 PR。R2 以上 PR 的独立评审用 `bin/dispatch review`(本机常驻 `--watch`)。现状与下一阶段见 docs/review/2026-09-29-harness-status.md。
Expand Down
Loading