@hunter-harness/workflow-harness 0.4.1 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/harness/bundles/general/pi/.harness-build.json +1 -1
  2. package/harness/bundles/general/pi/harness-archive/SKILL.md +1 -1
  3. package/harness/bundles/general/pi/harness-codebase-map/SKILL.md +1 -1
  4. package/harness/bundles/general/pi/harness-execute/SKILL.md +1 -1
  5. package/harness/bundles/general/pi/harness-knowledge-ingest/SKILL.md +1 -1
  6. package/harness/bundles/general/pi/harness-knowledge-query/SKILL.md +1 -1
  7. package/harness/bundles/general/pi/harness-plan/SKILL.md +6 -7
  8. package/harness/bundles/general/pi/harness-pull/SKILL.md +1 -1
  9. package/harness/bundles/general/pi/harness-push/SKILL.md +1 -1
  10. package/harness/bundles/general/pi/harness-review/SKILL.md +2 -11
  11. package/harness/bundles/general/pi/harness-run/SKILL.md +1 -1
  12. package/harness/bundles/general/pi/harness-submit/SKILL.md +1 -1
  13. package/harness/bundles/general/pi/harness-sync/SKILL.md +1 -1
  14. package/harness/bundles/general/pi/harness-test/SKILL.md +1 -1
  15. package/harness/bundles/java/pi/.harness-build.json +1 -1
  16. package/harness/bundles/java/pi/harness-apidoc/SKILL.md +1 -1
  17. package/harness/bundles/java/pi/harness-archive/SKILL.md +1 -1
  18. package/harness/bundles/java/pi/harness-codebase-map/SKILL.md +1 -1
  19. package/harness/bundles/java/pi/harness-execute/SKILL.md +1 -1
  20. package/harness/bundles/java/pi/harness-knowledge-ingest/SKILL.md +1 -1
  21. package/harness/bundles/java/pi/harness-knowledge-query/SKILL.md +1 -1
  22. package/harness/bundles/java/pi/harness-package/SKILL.md +1 -1
  23. package/harness/bundles/java/pi/harness-plan/SKILL.md +6 -7
  24. package/harness/bundles/java/pi/harness-pull/SKILL.md +1 -1
  25. package/harness/bundles/java/pi/harness-push/SKILL.md +1 -1
  26. package/harness/bundles/java/pi/harness-review/SKILL.md +2 -11
  27. package/harness/bundles/java/pi/harness-run/SKILL.md +1 -1
  28. package/harness/bundles/java/pi/harness-submit/SKILL.md +1 -1
  29. package/harness/bundles/java/pi/harness-sync/SKILL.md +1 -1
  30. package/harness/bundles/java/pi/harness-test/SKILL.md +1 -1
  31. package/harness/manifests/general/pi.json +14 -14
  32. package/harness/manifests/java/pi.json +16 -16
  33. package/hunter-workflow-family.json +2 -2
  34. package/package.json +1 -1
@@ -2,5 +2,5 @@
2
2
  "schemaVersion": 1,
3
3
  "overlay": "none",
4
4
  "agent": "pi",
5
- "coreHash": "ec59ac2389d9dce9"
5
+ "coreHash": "3719b9e9d98df0f9"
6
6
  }
@@ -3,7 +3,7 @@ name: harness-archive
3
3
  description: 归档所有变更产出(计划/测试报告/审查/SQL/API文档)到 .harness/archive/,含归档元数据。仅当用户显式调用
4
4
  /harness-archive 时使用;不得被其他阶段 skill 自动接续触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
7
7
  # harness-archive — 变更归档
8
8
 
9
9
  ## Purpose
@@ -3,7 +3,7 @@ name: harness-codebase-map
3
3
  description: 分析现有代码库并生成 .harness/codebase/map/
4
4
  下的结构化代码库地图。用于陌生项目理解、重大改造前梳理、harness-sync 提示 map 过期后的人工刷新。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
7
7
  # harness-codebase-map — 代码库地图
8
8
 
9
9
  ## Purpose
@@ -4,7 +4,7 @@ description: 执行阶段:按变更簇执行 TDD
4
4
  编码循环(RED→GREEN→REFACTOR→编译验证),随后完成单元/接口/数据兼容验证并输出测试报告。仅当用户显式调用
5
5
  /harness-execute 时使用;不得因用户提到编码/实现/测试就自动触发,也不得被其他阶段 skill 自动接续。
6
6
  ---
7
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
7
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
8
8
  # harness-execute — 执行(编码 + 验证)
9
9
 
10
10
  > 2026-08 阶段合并:原 `run`(编码)与 `test`(验证)合并为单一 `execute` 阶段。
@@ -2,7 +2,7 @@
2
2
  name: harness-knowledge-ingest
3
3
  description: 确认归档 ZIP 已上传并由 Hunter Platform 在服务端解包、校验和入库。客户端不再构建或维护本地知识索引。
4
4
  ---
5
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
5
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
6
6
  # harness-knowledge-ingest
7
7
 
8
8
  知识 ingest 完全由 Hunter Platform 负责。归档完成时,客户端生成一个确定性 ZIP;
@@ -2,7 +2,7 @@
2
2
  name: harness-knowledge-query
3
3
  description: 在规划、实现或排查前,通过 hunter-harness CLI 查询远端项目知识库。远端不可用时直接报告不可用,不建立本地索引或离线回退。
4
4
  ---
5
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
5
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
6
6
  # harness-knowledge-query
7
7
 
8
8
  项目知识以 Hunter Platform 的服务端索引为唯一真源。客户端只提交查询并消费结果:
@@ -3,7 +3,7 @@ name: harness-plan
3
3
  description: 将需求转化为设计文档+实施计划+完整测试场景表,必须在编码前完成。仅当用户显式调用 /harness-plan 或明确要求进入
4
4
  Harness 规划阶段时使用;不得因用户描述需求就自动触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
7
7
  # harness-plan — 需求规划
8
8
 
9
9
  ## Purpose
@@ -56,13 +56,12 @@ description: 将需求转化为设计文档+实施计划+完整测试场景表
56
56
  内化为 `protocols.md`:`clarification-protocol`、`decision-grilling-protocol`、`implementation-planning-protocol`。不运行时调用 Superpowers/grill-me。
57
57
 
58
58
  <!-- @section-id plan.delegate -->
59
- ## 执行路由(inline 优先)
60
-
61
- - **阶段 3 探索默认 inline**:主会话直接使用 CodeGraph/Read,简单修复和常规跨文件变更不得为“隔离上下文”额外启动 agent。
62
- - **仅高复杂度探索考虑委派**:涉及多个独立模块、陌生大型代码库或可并行的独立调查时,才执行一次 `python <skills-root>/scripts/harness_preflight.py check-agents --skills-root <skills-root> --agent harness-explorer --json`。只有 `executionMode=delegated` 才委派;`executionMode=inline` 是正常路径,静默继续;`unavailable` 只记录安装问题后 inline。
63
- - **阶段 7.5 evaluator**:仅 `--adversarial` 或 auth/支付/迁移/并发等高风险规划启用;需要固定 agent 时才预检。无论预检 inline、spawn 失败、空返回或只有元数据,都立即由主会话完成同一对抗检查,`fallbackPolicy=inline-no-retry`。
64
- - 日志记录 `executionMode=inline|delegated`;只有真实定义损坏或 spawn 失败才记 issue。正常 inline 不得显示“subagent 不可用”告警。
59
+ ## 执行路由(宿主原生、无固定 agent 预检)
65
60
 
61
+ - 阶段 3 默认由主会话直接使用 CodeGraph/Read 完成探索,**不运行 `check-agents --agent harness-explorer`**。
62
+ - pi 本体没有内置隔离任务工具;只有多个独立模块、陌生大型代码库或可并行调查等高复杂度任务,且环境已安装 pi-subagents 扩展(提供 `subagent` 工具)时,才可临时委派一次只读探索。
63
+ - 阶段 7.5 仅 `--adversarial` 或 auth/支付/迁移/并发等高风险规划启用;可用 pi-subagents 临时隔离任务,否则主会话执行同一对抗检查。
64
+ - spawn 失败、空返回、0 tool uses、仅 "Done" 或元数据时立即 inline,`fallbackPolicy=inline-no-retry`。正常 inline 只记 `decision`,不显示 subagent 不可用告警。
66
65
  ## Workflow 概要
67
66
 
68
67
  | 阶段 | 动作 |
@@ -3,7 +3,7 @@ name: harness-pull
3
3
  description: 从 Hunter Platform 下拉配置/规则/架构/指令(及显式来源分支的分支文件恢复)。仅当用户显式调用
4
4
  /harness-pull 或明确说'从平台拉取/恢复'时使用;不得自动触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
7
7
  # harness-pull — 从 Hunter Platform 下拉与恢复
8
8
 
9
9
  ## Purpose
@@ -3,7 +3,7 @@ name: harness-push
3
3
  description: 上传本地配置/规则/架构/指令(及显式归档)到 Hunter Platform。仅当用户显式调用 /harness-push
4
4
  或明确说'上传到平台'时使用;不得因存在本地修改就自动触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
7
7
  # harness-push — 上传到 Hunter Platform
8
8
 
9
9
  ## Purpose
@@ -4,7 +4,7 @@ description: 6维度代码审查(架构/安全/规范/兼容/测试/性能)
4
4
  .harness/context-index.json)和测试场景表,在隔离上下文运行。仅当用户显式调用 /harness-review 时使用;不得在
5
5
  test 结束后自动接续执行。
6
6
  ---
7
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
7
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
8
8
  # harness-review — 代码审查
9
9
 
10
10
  ## Purpose
@@ -53,16 +53,7 @@ description: 6维度代码审查(架构/安全/规范/兼容/测试/性能)
53
53
  <!-- @section-id review.delegate -->
54
54
  ### 2. 审查执行(独立评审优先)
55
55
 
56
- review 默认优先在独立上下文执行,避免主会话已形成的实现结论影响审查。阶段开始后只做一次能力判定:固定 reviewer 可用时执行 `python <skills-root>/scripts/harness_preflight.py check-agents --skills-root <skills-root> --agent harness-reviewer --json`;宿主提供通用隔离任务能力时可直接委派一次只读审查。委派只读取 diff、规则和测试证据,主会话负责最终核验与落盘。
57
-
58
- 无隔离能力、定义损坏、spawn 失败、空返回或只有元数据时,不重试,立即由主会话按同一 6 维度检查清单完成审查。无论是否委派,都必须追加一条结构化 `decision` 事件:`--execution-mode delegated|inline` 标明执行方式;委派时写 `--executor-agent harness-reviewer --decision-reason-code REVIEW_DELEGATED`;回退时只写一个 `--fallback-reason-code REVIEW_INLINE_UNAVAILABLE|REVIEW_INLINE_SPAWN_FAILED|REVIEW_INLINE_INVALID_RESULT`。`decision` 和 `reason` 必须用中文完整说明,禁止把原因码拼进正文。正常主会话评审是可接受结果,不显示成流程故障;`fallbackPolicy=inline-no-retry`。
59
-
60
- 项目规模小、风险低或没有 CodeGraph 都不是跳过独立评审的理由。原因码是稳定机器字段,仅用于协议与技术详情;面向用户的事件摘要必须写成「已使用独立评审」或「当前环境没有可用的隔离评审能力,已由主会话完成评审」等中文说明。
61
-
62
- 3. **持久化报告与事实 sidecar(强制,主会话)** — Agent 返回后主会话 Write 到 `reports/review/review-report-*.md`,并把同一批发现写成临时 JSON 后调用 `python <skills-root>/scripts/harness_review.py write-findings --change-dir <change-dir> --input <findings.json>`。每条发现必须填写 `fixbackAction=code|manual|workflow`:只有确实需要修改产品代码的项使用 `code`;人工验收用 `manual`;流程、暂存或工具使用建议用 `workflow`。权威计数来自 `reports/review/review-findings.json`,不是 Markdown。任一写入缺失 → 评审未完整结束,不得关门。
63
- 4. **生成修复反馈(原生协议)** — 若报告存在 RED/YELLOW 问题,执行 `protocols.md` 的 `review-fixback-protocol`,将问题转化为结构化 fixback 清单并落盘到 `.harness/changes/<change-name>/reports/review/fixback-YYYYMMDD-HHmm.md`;随后把 disposition 临时 JSON 交给 `python <skills-root>/scripts/harness_review.py write-dispositions --change-dir <change-dir> --input <dispositions.json>`,权威状态写入 `reports/review/fixback-dispositions.json`。若无 RED/YELLOW,也必须写空 findings sidecar,并记录 `review-fixback-protocol: skipped(no findings)`。不调用 Superpowers `receiving-code-review`,也不记录外部 skill 降级。
64
- 5. **收尾** — 先写完 `review-findings.json` 与 `fixback-dispositions.json`,且两者 `runId` 必须等于本轮 Review;每个 finding 必须有 disposition。随后只调用一次 gate close,由门禁校验 sidecar、写 `phase.end` 与交接;缺失或不一致时保持 Review 未结束并按恢复提示补齐。控制台输出摘要。
65
-
56
+ 环境已安装 pi-subagents 扩展(提供 `subagent` 工具)时,默认优先临时委派一次只读审查,**不要求安装固定 `harness-reviewer`,也不运行固定 `harness-reviewer` 预检**。子任务只读取 diff、规则和测试证据;主会话核验并写报告。无法委派、spawn 失败、空返回或无报告正文 不 retry,继续主会话审查。每次都记一条 `decision`,用 `REVIEW_DELEGATED` 或相应 `REVIEW_INLINE_*` 原因码说明是否委派及原因;正常 inline 不显示为故障。
66
57
  ## Review 定位(重要)
67
58
 
68
59
  **harness-review 是参考性代码审查阶段,不是硬门禁。**
@@ -3,7 +3,7 @@ name: harness-run
3
3
  description: 按变更簇执行 TDD 编码循环(RED→GREEN→REFACTOR→编译验证),逐变更簇实现计划中的任务。仅当用户显式调用
4
4
  /harness-run 时使用;不得因用户提到编码/实现就自动触发,也不得被其他阶段 skill 自动接续。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
7
7
  # harness-run — 需求编码
8
8
 
9
9
  > **2026-08 阶段合并**:原 `run`(编码)与 `test`(验证)合并为单一 `execute` 阶段,
@@ -3,7 +3,7 @@ name: harness-submit
3
3
  description: 最终提交封装:验证→中文 commit→提交/推送;worktree 模式含 --no-ff 合并回主分支。仅当用户显式调用
4
4
  /harness-submit(或 /harness-merge 重入合并段)时使用;用户口头说'提交/commit/push'时必须先确认,不得自动触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
7
7
  # harness-submit — 最终提交(含 worktree 合并)
8
8
 
9
9
  ## Purpose
@@ -4,7 +4,7 @@ description: Use when the user asks to synchronize, refresh, or validate Harness
4
4
  metadata, adapters, remote knowledge ownership, instruction entrypoints,
5
5
  config origins, or CodeGraph status.
6
6
  ---
7
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
7
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
8
8
  # harness-sync
9
9
 
10
10
  ## Purpose
@@ -3,7 +3,7 @@ name: harness-test
3
3
  description: 测试执行:读取场景表,执行单元测试+API接口测试+数据兼容验证,输出测试报告。仅当用户显式调用 /harness-test
4
4
  时使用;不得在 run 结束后自动接续执行。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=ec59ac2389d9dce9; overlay=none; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=3719b9e9d98df0f9; overlay=none; agent=pi; do not edit -->
7
7
  # harness-test — 测试执行
8
8
 
9
9
  > **2026-08 阶段合并**:原 `run`(编码)与 `test`(验证)合并为单一 `execute` 阶段,
@@ -2,5 +2,5 @@
2
2
  "schemaVersion": 1,
3
3
  "overlay": "java",
4
4
  "agent": "pi",
5
- "coreHash": "45b278c44cd66b19"
5
+ "coreHash": "c6237736626a939b"
6
6
  }
@@ -3,7 +3,7 @@ name: harness-apidoc
3
3
  description: 从 Java 后端代码生成结构化前端 API 文档(Controller/VO/ErrorCode)。仅当用户显式调用
4
4
  /harness-apidoc 时使用,不得自动触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
7
7
  # harness-apidoc — 前端接口文档(Java overlay)
8
8
 
9
9
  ## Purpose
@@ -3,7 +3,7 @@ name: harness-archive
3
3
  description: 归档所有变更产出(计划/测试报告/审查/SQL/API文档)到 .harness/archive/,含归档元数据。仅当用户显式调用
4
4
  /harness-archive 时使用;不得被其他阶段 skill 自动接续触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
7
7
  # harness-archive — 变更归档
8
8
 
9
9
  ## Purpose
@@ -3,7 +3,7 @@ name: harness-codebase-map
3
3
  description: 分析现有代码库并生成 .harness/codebase/map/
4
4
  下的结构化代码库地图。用于陌生项目理解、重大改造前梳理、harness-sync 提示 map 过期后的人工刷新。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
7
7
  # harness-codebase-map — 代码库地图
8
8
 
9
9
  ## Purpose
@@ -4,7 +4,7 @@ description: 执行阶段:按变更簇执行 TDD
4
4
  编码循环(RED→GREEN→REFACTOR→编译验证),随后完成单元/接口/数据兼容验证并输出测试报告。仅当用户显式调用
5
5
  /harness-execute 时使用;不得因用户提到编码/实现/测试就自动触发,也不得被其他阶段 skill 自动接续。
6
6
  ---
7
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
7
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
8
8
  # harness-execute — 执行(编码 + 验证)
9
9
 
10
10
  > 2026-08 阶段合并:原 `run`(编码)与 `test`(验证)合并为单一 `execute` 阶段。
@@ -2,7 +2,7 @@
2
2
  name: harness-knowledge-ingest
3
3
  description: 确认归档 ZIP 已上传并由 Hunter Platform 在服务端解包、校验和入库。客户端不再构建或维护本地知识索引。
4
4
  ---
5
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
5
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
6
6
  # harness-knowledge-ingest
7
7
 
8
8
  知识 ingest 完全由 Hunter Platform 负责。归档完成时,客户端生成一个确定性 ZIP;
@@ -2,7 +2,7 @@
2
2
  name: harness-knowledge-query
3
3
  description: 在规划、实现或排查前,通过 hunter-harness CLI 查询远端项目知识库。远端不可用时直接报告不可用,不建立本地索引或离线回退。
4
4
  ---
5
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
5
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
6
6
  # harness-knowledge-query
7
7
 
8
8
  项目知识以 Hunter Platform 的服务端索引为唯一真源。客户端只提交查询并消费结果:
@@ -2,7 +2,7 @@
2
2
  name: harness-package
3
3
  description: 增量模块打包:拉取最新→编译验证→mvn package→汇总 jar/war。仅当用户显式调用 /harness-package 时使用,不得自动触发。
4
4
  ---
5
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
5
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
6
6
  # harness-package — 增量模块打包(Java overlay)
7
7
 
8
8
  ## Purpose
@@ -3,7 +3,7 @@ name: harness-plan
3
3
  description: 将需求转化为设计文档+实施计划+完整测试场景表,必须在编码前完成。仅当用户显式调用 /harness-plan 或明确要求进入
4
4
  Harness 规划阶段时使用;不得因用户描述需求就自动触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
7
7
  # harness-plan — 需求规划
8
8
 
9
9
  ## Purpose
@@ -56,13 +56,12 @@ description: 将需求转化为设计文档+实施计划+完整测试场景表
56
56
  内化为 `protocols.md`:`clarification-protocol`、`decision-grilling-protocol`、`implementation-planning-protocol`。不运行时调用 Superpowers/grill-me。
57
57
 
58
58
  <!-- @section-id plan.delegate -->
59
- ## 执行路由(inline 优先)
60
-
61
- - **阶段 3 探索默认 inline**:主会话直接使用 CodeGraph/Read,简单修复和常规跨文件变更不得为“隔离上下文”额外启动 agent。
62
- - **仅高复杂度探索考虑委派**:涉及多个独立模块、陌生大型代码库或可并行的独立调查时,才执行一次 `python <skills-root>/scripts/harness_preflight.py check-agents --skills-root <skills-root> --agent harness-explorer --json`。只有 `executionMode=delegated` 才委派;`executionMode=inline` 是正常路径,静默继续;`unavailable` 只记录安装问题后 inline。
63
- - **阶段 7.5 evaluator**:仅 `--adversarial` 或 auth/支付/迁移/并发等高风险规划启用;需要固定 agent 时才预检。无论预检 inline、spawn 失败、空返回或只有元数据,都立即由主会话完成同一对抗检查,`fallbackPolicy=inline-no-retry`。
64
- - 日志记录 `executionMode=inline|delegated`;只有真实定义损坏或 spawn 失败才记 issue。正常 inline 不得显示“subagent 不可用”告警。
59
+ ## 执行路由(宿主原生、无固定 agent 预检)
65
60
 
61
+ - 阶段 3 默认由主会话直接使用 CodeGraph/Read 完成探索,**不运行 `check-agents --agent harness-explorer`**。
62
+ - pi 本体没有内置隔离任务工具;只有多个独立模块、陌生大型代码库或可并行调查等高复杂度任务,且环境已安装 pi-subagents 扩展(提供 `subagent` 工具)时,才可临时委派一次只读探索。
63
+ - 阶段 7.5 仅 `--adversarial` 或 auth/支付/迁移/并发等高风险规划启用;可用 pi-subagents 临时隔离任务,否则主会话执行同一对抗检查。
64
+ - spawn 失败、空返回、0 tool uses、仅 "Done" 或元数据时立即 inline,`fallbackPolicy=inline-no-retry`。正常 inline 只记 `decision`,不显示 subagent 不可用告警。
66
65
  ## Workflow 概要
67
66
 
68
67
  | 阶段 | 动作 |
@@ -3,7 +3,7 @@ name: harness-pull
3
3
  description: 从 Hunter Platform 下拉配置/规则/架构/指令(及显式来源分支的分支文件恢复)。仅当用户显式调用
4
4
  /harness-pull 或明确说'从平台拉取/恢复'时使用;不得自动触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
7
7
  # harness-pull — 从 Hunter Platform 下拉与恢复
8
8
 
9
9
  ## Purpose
@@ -3,7 +3,7 @@ name: harness-push
3
3
  description: 上传本地配置/规则/架构/指令(及显式归档)到 Hunter Platform。仅当用户显式调用 /harness-push
4
4
  或明确说'上传到平台'时使用;不得因存在本地修改就自动触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
7
7
  # harness-push — 上传到 Hunter Platform
8
8
 
9
9
  ## Purpose
@@ -4,7 +4,7 @@ description: 6维度代码审查(架构/安全/规范/兼容/测试/性能)
4
4
  .harness/context-index.json)和测试场景表,在隔离上下文运行。仅当用户显式调用 /harness-review 时使用;不得在
5
5
  test 结束后自动接续执行。
6
6
  ---
7
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
7
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
8
8
  # harness-review — 代码审查
9
9
 
10
10
  ## Purpose
@@ -53,16 +53,7 @@ description: 6维度代码审查(架构/安全/规范/兼容/测试/性能)
53
53
  <!-- @section-id review.delegate -->
54
54
  ### 2. 审查执行(独立评审优先)
55
55
 
56
- review 默认优先在独立上下文执行,避免主会话已形成的实现结论影响审查。阶段开始后只做一次能力判定:固定 reviewer 可用时执行 `python <skills-root>/scripts/harness_preflight.py check-agents --skills-root <skills-root> --agent harness-reviewer --json`;宿主提供通用隔离任务能力时可直接委派一次只读审查。委派只读取 diff、规则和测试证据,主会话负责最终核验与落盘。
57
-
58
- 无隔离能力、定义损坏、spawn 失败、空返回或只有元数据时,不重试,立即由主会话按同一 6 维度检查清单完成审查。无论是否委派,都必须追加一条结构化 `decision` 事件:`--execution-mode delegated|inline` 标明执行方式;委派时写 `--executor-agent harness-reviewer --decision-reason-code REVIEW_DELEGATED`;回退时只写一个 `--fallback-reason-code REVIEW_INLINE_UNAVAILABLE|REVIEW_INLINE_SPAWN_FAILED|REVIEW_INLINE_INVALID_RESULT`。`decision` 和 `reason` 必须用中文完整说明,禁止把原因码拼进正文。正常主会话评审是可接受结果,不显示成流程故障;`fallbackPolicy=inline-no-retry`。
59
-
60
- 项目规模小、风险低或没有 CodeGraph 都不是跳过独立评审的理由。原因码是稳定机器字段,仅用于协议与技术详情;面向用户的事件摘要必须写成「已使用独立评审」或「当前环境没有可用的隔离评审能力,已由主会话完成评审」等中文说明。
61
-
62
- 3. **持久化报告与事实 sidecar(强制,主会话)** — Agent 返回后主会话 Write 到 `reports/review/review-report-*.md`,并把同一批发现写成临时 JSON 后调用 `python <skills-root>/scripts/harness_review.py write-findings --change-dir <change-dir> --input <findings.json>`。每条发现必须填写 `fixbackAction=code|manual|workflow`:只有确实需要修改产品代码的项使用 `code`;人工验收用 `manual`;流程、暂存或工具使用建议用 `workflow`。权威计数来自 `reports/review/review-findings.json`,不是 Markdown。任一写入缺失 → 评审未完整结束,不得关门。
63
- 4. **生成修复反馈(原生协议)** — 若报告存在 RED/YELLOW 问题,执行 `protocols.md` 的 `review-fixback-protocol`,将问题转化为结构化 fixback 清单并落盘到 `.harness/changes/<change-name>/reports/review/fixback-YYYYMMDD-HHmm.md`;随后把 disposition 临时 JSON 交给 `python <skills-root>/scripts/harness_review.py write-dispositions --change-dir <change-dir> --input <dispositions.json>`,权威状态写入 `reports/review/fixback-dispositions.json`。若无 RED/YELLOW,也必须写空 findings sidecar,并记录 `review-fixback-protocol: skipped(no findings)`。不调用 Superpowers `receiving-code-review`,也不记录外部 skill 降级。
64
- 5. **收尾** — 先写完 `review-findings.json` 与 `fixback-dispositions.json`,且两者 `runId` 必须等于本轮 Review;每个 finding 必须有 disposition。随后只调用一次 gate close,由门禁校验 sidecar、写 `phase.end` 与交接;缺失或不一致时保持 Review 未结束并按恢复提示补齐。控制台输出摘要。
65
-
56
+ 环境已安装 pi-subagents 扩展(提供 `subagent` 工具)时,默认优先临时委派一次只读审查,**不要求安装固定 `harness-reviewer`,也不运行固定 `harness-reviewer` 预检**。子任务只读取 diff、规则和测试证据;主会话核验并写报告。无法委派、spawn 失败、空返回或无报告正文 不 retry,继续主会话审查。每次都记一条 `decision`,用 `REVIEW_DELEGATED` 或相应 `REVIEW_INLINE_*` 原因码说明是否委派及原因;正常 inline 不显示为故障。
66
57
  ## Review 定位(重要)
67
58
 
68
59
  **harness-review 是参考性代码审查阶段,不是硬门禁。**
@@ -3,7 +3,7 @@ name: harness-run
3
3
  description: 按变更簇执行 TDD 编码循环(RED→GREEN→REFACTOR→编译验证),逐变更簇实现计划中的任务。仅当用户显式调用
4
4
  /harness-run 时使用;不得因用户提到编码/实现就自动触发,也不得被其他阶段 skill 自动接续。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
7
7
  # harness-run — 需求编码
8
8
 
9
9
  > **2026-08 阶段合并**:原 `run`(编码)与 `test`(验证)合并为单一 `execute` 阶段,
@@ -3,7 +3,7 @@ name: harness-submit
3
3
  description: 最终提交封装:验证→中文 commit→提交/推送;worktree 模式含 --no-ff 合并回主分支。仅当用户显式调用
4
4
  /harness-submit(或 /harness-merge 重入合并段)时使用;用户口头说'提交/commit/push'时必须先确认,不得自动触发。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
7
7
  # harness-submit — 最终提交(含 worktree 合并)
8
8
 
9
9
  ## Purpose
@@ -4,7 +4,7 @@ description: Use when the user asks to synchronize, refresh, or validate Harness
4
4
  metadata, adapters, remote knowledge ownership, instruction entrypoints,
5
5
  config origins, or CodeGraph status.
6
6
  ---
7
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
7
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
8
8
  # harness-sync
9
9
 
10
10
  ## Purpose
@@ -3,7 +3,7 @@ name: harness-test
3
3
  description: 测试执行:读取场景表,执行单元测试+API接口测试+数据兼容验证,输出测试报告。仅当用户显式调用 /harness-test
4
4
  时使用;不得在 run 结束后自动接续执行。
5
5
  ---
6
- <!-- generated by harness_deploy.py; core=45b278c44cd66b19; overlay=java; agent=pi; do not edit -->
6
+ <!-- generated by harness_deploy.py; core=c6237736626a939b; overlay=java; agent=pi; do not edit -->
7
7
  # harness-test — 测试执行
8
8
 
9
9
  > **2026-08 阶段合并**:原 `run`(编码)与 `test`(验证)合并为单一 `execute` 阶段,
@@ -25,7 +25,7 @@
25
25
  "files": [
26
26
  {
27
27
  "path": ".harness-build.json",
28
- "sha256": "4e7f4ca7281cb2307f4e0e47ad13efedce6154bd23edc49bd2be430f33a7c720"
28
+ "sha256": "32060ee4c4106a00a7a720a2681f9dcada8f49acfa6218f19296a5e95bb49df7"
29
29
  },
30
30
  {
31
31
  "path": "CONTEXT.md",
@@ -85,7 +85,7 @@
85
85
  },
86
86
  {
87
87
  "path": "harness-archive/SKILL.md",
88
- "sha256": "5d2669b4bbd3aff22900514bece1ea49b549a514f0595579f23a329dd7de0e3e"
88
+ "sha256": "cd7a8885c935553f0038fa322c5c2de5890f9ef9cb4af0b2dee0a76e9cf05954"
89
89
  },
90
90
  {
91
91
  "path": "harness-archive/templates/summary-data-template.json",
@@ -101,7 +101,7 @@
101
101
  },
102
102
  {
103
103
  "path": "harness-codebase-map/SKILL.md",
104
- "sha256": "a98f45db6b5d7f2c7abe0c22967fec7b1e757e14bfecb24e83b3d94ced1dbc2e"
104
+ "sha256": "dcdc58e86cf58820e3ec14493262e27e66051633da92344d1296126d01ede1d9"
105
105
  },
106
106
  {
107
107
  "path": "harness-codebase-map/templates/ARCHITECTURE.md",
@@ -141,15 +141,15 @@
141
141
  },
142
142
  {
143
143
  "path": "harness-execute/SKILL.md",
144
- "sha256": "a7c7d43b7e9144849d4037e4d5d0d238f4910d28dede8959b29db787c0a48932"
144
+ "sha256": "8b4fcd8b18873eb55c366689e44a7c84ecc79644310475f5d08a626b4eca1b3e"
145
145
  },
146
146
  {
147
147
  "path": "harness-knowledge-ingest/SKILL.md",
148
- "sha256": "f1e5d4814f6b36b8212467827fee65a1c07c0de36933fb5794d6b956be017a28"
148
+ "sha256": "c10e8ce4f0b5d56c8ea4b6fc3d95235a57f20cdaa9dae57f8f8a673aad22cb3d"
149
149
  },
150
150
  {
151
151
  "path": "harness-knowledge-query/SKILL.md",
152
- "sha256": "13adf575fd96d25d8560fba5d3e41057d76f13a4505492001fb8969e0f6f2f01"
152
+ "sha256": "6c3cf5d13ebca6e260b4fa3d668a4c81bc6841fe59f7d3aecf8e9b197857c2a7"
153
153
  },
154
154
  {
155
155
  "path": "harness-plan/checklist.md",
@@ -165,15 +165,15 @@
165
165
  },
166
166
  {
167
167
  "path": "harness-plan/SKILL.md",
168
- "sha256": "ab6beb876f725c43d5646f550bd03c20560f7cac5b6c8aa98575d1398e9b97b0"
168
+ "sha256": "7fd11cfc8679eefbb4be980160172df305121aef22bf2d3ae294ab813c3c27af"
169
169
  },
170
170
  {
171
171
  "path": "harness-pull/SKILL.md",
172
- "sha256": "7142fcb98ea8079fb7ba50dc15d194fbf5e05a40b8dbecd0f4fcf20dcf310f9c"
172
+ "sha256": "f63de14fcd18eb1451a5314f9c0f759786e2cb2bbe65cc9908b0cf0a8f734a2f"
173
173
  },
174
174
  {
175
175
  "path": "harness-push/SKILL.md",
176
- "sha256": "ff64c531536576150c7735b1b7a08de69f80ced763ae05c656d900ad07449751"
176
+ "sha256": "10a1fd4ce6d99c8ba04a1b442c0f25518bde27afab7694bb878163edd19408a8"
177
177
  },
178
178
  {
179
179
  "path": "harness-review/checklist.md",
@@ -189,7 +189,7 @@
189
189
  },
190
190
  {
191
191
  "path": "harness-review/SKILL.md",
192
- "sha256": "58ef4570144be43eefbe2bb7d60bcb1d0324f038a4e817d0e8ec6980cbe55755"
192
+ "sha256": "b45eeeb02fd784d52cd72a647c2166f115ddac750343db7cab239341114e314a"
193
193
  },
194
194
  {
195
195
  "path": "harness-run/checklist.md",
@@ -205,7 +205,7 @@
205
205
  },
206
206
  {
207
207
  "path": "harness-run/SKILL.md",
208
- "sha256": "c16d9561dde1ebe72da327f4438ff1c468f65eeaac9a378f93c3768d6559d440"
208
+ "sha256": "c009a2f970b9f62db3682d3bc5d25f6d83d1f8f3850eb12a4dd78bf3771b3251"
209
209
  },
210
210
  {
211
211
  "path": "harness-submit/checklist.md",
@@ -217,7 +217,7 @@
217
217
  },
218
218
  {
219
219
  "path": "harness-submit/SKILL.md",
220
- "sha256": "fd112b889ecc3a6ef9d30a05fecf9c5615a214a8186a03d38de4332a26277e5c"
220
+ "sha256": "e5a92c2d488a34efa12fd823e81bde7f95711b2bcfa8292a3e4072df60a77733"
221
221
  },
222
222
  {
223
223
  "path": "harness-sync/reference.md",
@@ -225,7 +225,7 @@
225
225
  },
226
226
  {
227
227
  "path": "harness-sync/SKILL.md",
228
- "sha256": "e5a5e1fe90b55d2fc29115df974639a0d61b784f51d0b0274d8d150758fa3cfe"
228
+ "sha256": "7dcfd43480e5e594df13b6ebea5d25924ebe850fe7bc7e94018ccc4d04b5e824"
229
229
  },
230
230
  {
231
231
  "path": "harness-test/checklist.md",
@@ -249,7 +249,7 @@
249
249
  },
250
250
  {
251
251
  "path": "harness-test/SKILL.md",
252
- "sha256": "4b927c5ffd02650e4ba358bf01475c91674d36dc63b6afb32c2ac3fc046c02af"
252
+ "sha256": "6ed2c8df0a1fd2e65a51c586c7b57c93c633bbb84ec4c85e6eb139a9ba5e3bf5"
253
253
  },
254
254
  {
255
255
  "path": "protocols/archive-report-protocol.md",
@@ -25,7 +25,7 @@
25
25
  "files": [
26
26
  {
27
27
  "path": ".harness-build.json",
28
- "sha256": "6eef866821581063c3ab17b38eaf0758730005a0d92fbbcb0bb0db86788fc6e4"
28
+ "sha256": "8fbea78873956bc3fd98894713e07335876292419a9f8445a9320124aaa626c1"
29
29
  },
30
30
  {
31
31
  "path": "CONTEXT.md",
@@ -81,7 +81,7 @@
81
81
  },
82
82
  {
83
83
  "path": "harness-apidoc/SKILL.md",
84
- "sha256": "78dc1a017f7b2f83936b5bdcdcf89b69967295ea0f4cd27469614ed2151704c5"
84
+ "sha256": "aa8bfa09ddc525a41d1bef78c61741926798b4c5e39bfb9309982375fe6b1c7e"
85
85
  },
86
86
  {
87
87
  "path": "harness-archive/checklist.md",
@@ -97,7 +97,7 @@
97
97
  },
98
98
  {
99
99
  "path": "harness-archive/SKILL.md",
100
- "sha256": "547a221432e523ec7d7a0fc9ab733dd3c690f2398e02aea6a3b6208badbab41f"
100
+ "sha256": "7f7623e011ff204c65d388553fbd260b6024bf6e8b93e4337119b43ba8497244"
101
101
  },
102
102
  {
103
103
  "path": "harness-archive/templates/summary-data-template.json",
@@ -113,7 +113,7 @@
113
113
  },
114
114
  {
115
115
  "path": "harness-codebase-map/SKILL.md",
116
- "sha256": "6abc5524e79576b581fee734642af106a7c27df340b418212cfde49a7939de6f"
116
+ "sha256": "ce9f438428dfc700fe391bd68a40cf82c6cf3d5093393ef52da8b65535201044"
117
117
  },
118
118
  {
119
119
  "path": "harness-codebase-map/templates/ARCHITECTURE.md",
@@ -153,15 +153,15 @@
153
153
  },
154
154
  {
155
155
  "path": "harness-execute/SKILL.md",
156
- "sha256": "b03a333d0227ad24c57364a05884adc548db9cb088b65a778cdf799aa72696a5"
156
+ "sha256": "6f3dc962c8ae42e6be7650e3f465b300ef5e37597097a1783f325e66155f4e18"
157
157
  },
158
158
  {
159
159
  "path": "harness-knowledge-ingest/SKILL.md",
160
- "sha256": "f2ef13c279a787ce1e2f77419ea3d9084e571bcc9ae79a2ea5c919c418376bbb"
160
+ "sha256": "7b0d5a89581cb350cf1b5b4c325e9d1479aa2f4999fc9820947617841ebc50a0"
161
161
  },
162
162
  {
163
163
  "path": "harness-knowledge-query/SKILL.md",
164
- "sha256": "f068ed21f85433261654b24718041816b5c1d7846e5ccaa0334993e24f426c25"
164
+ "sha256": "5f29e2846320c1a49cd66d47467136335c1adca69af9332a9e83002facd1a40c"
165
165
  },
166
166
  {
167
167
  "path": "harness-package/checklist.md",
@@ -173,7 +173,7 @@
173
173
  },
174
174
  {
175
175
  "path": "harness-package/SKILL.md",
176
- "sha256": "37601a6c9a1f859f1e9183f649708974e3436512bb34a110b9700ed8856b6fbc"
176
+ "sha256": "26510eccb3520cc9a649bf559dad1fb383c5ac3c48c8a97ac7188d437b6c22fc"
177
177
  },
178
178
  {
179
179
  "path": "harness-plan/checklist.md",
@@ -189,15 +189,15 @@
189
189
  },
190
190
  {
191
191
  "path": "harness-plan/SKILL.md",
192
- "sha256": "f36ed6a958b3df8d165c6763d3ec3c8acfb2cd8fbba6fdbf60bed9e21316b1cb"
192
+ "sha256": "4a20dbc71252f0433412b2b348aca7ed548c5edafad00557cdf1120752d819d7"
193
193
  },
194
194
  {
195
195
  "path": "harness-pull/SKILL.md",
196
- "sha256": "d1803905f3aa599dfcf4c0caf2ed2e36e00fcb7ea806776fdc7cf96ff5babcf7"
196
+ "sha256": "cae73f7d47fb85e598e1061d7c53e57c0f565a2cbb685e5f2fad762aae8fa070"
197
197
  },
198
198
  {
199
199
  "path": "harness-push/SKILL.md",
200
- "sha256": "04e008aae6e1df0b6b3db64aea83e84b3d46b3e144bb3e04ff4c7b37c5837449"
200
+ "sha256": "3c7f5c6d49a990bb770b4943be82dc89b3f79161610685195384c0af8c6c1b41"
201
201
  },
202
202
  {
203
203
  "path": "harness-review/checklist.md",
@@ -213,7 +213,7 @@
213
213
  },
214
214
  {
215
215
  "path": "harness-review/SKILL.md",
216
- "sha256": "057ce89a1d6b8615862477938665b618f4770c16a3b262b9a2b804adccae8428"
216
+ "sha256": "032d4cd835c036c9b5c4fcaa9ecfabba19cb6ca5cd73b6125e6dc16dded68e54"
217
217
  },
218
218
  {
219
219
  "path": "harness-run/checklist.md",
@@ -229,7 +229,7 @@
229
229
  },
230
230
  {
231
231
  "path": "harness-run/SKILL.md",
232
- "sha256": "5a812005b95b3f9c0afbe7718950fb7fead3d126fa8c09d08c8802fce9e43873"
232
+ "sha256": "0a0da2a5197c526dedfea71c00c86798c02ca797d4929dc690619be3c6fb9dab"
233
233
  },
234
234
  {
235
235
  "path": "harness-submit/checklist.md",
@@ -241,7 +241,7 @@
241
241
  },
242
242
  {
243
243
  "path": "harness-submit/SKILL.md",
244
- "sha256": "44cc1e32e15d4d547248d416575fd51449369c28560008cbbbe19fd18a969091"
244
+ "sha256": "f3045507e11bf0136bf82bd2e3fbb98d354aa5b759a8c1b5e363761daf439f2a"
245
245
  },
246
246
  {
247
247
  "path": "harness-sync/reference.md",
@@ -249,7 +249,7 @@
249
249
  },
250
250
  {
251
251
  "path": "harness-sync/SKILL.md",
252
- "sha256": "43158e286747d864f00b2d9988aa68d88274058ced160838f6e1e4bd3b49ea5a"
252
+ "sha256": "70016f85595384426b41c16174790c86f6066c748d4032485a08814f3aa6169f"
253
253
  },
254
254
  {
255
255
  "path": "harness-test/checklist.md",
@@ -273,7 +273,7 @@
273
273
  },
274
274
  {
275
275
  "path": "harness-test/SKILL.md",
276
- "sha256": "d0f4319245c4221346557f159aab7d3b122b247ee4907bbf6969d81e5dd11022"
276
+ "sha256": "0c1c1c4309d5cd354847ccbb57e0049ec8723ca56d9b44afc747f1ddcddc3dde"
277
277
  },
278
278
  {
279
279
  "path": "protocols/archive-report-protocol.md",
@@ -7,9 +7,9 @@
7
7
  "java"
8
8
  ],
9
9
  "bundle_version": "0.2.73",
10
- "content_sha256": "sha256:322d245603a62338e9b15f2231306e93ca89682b136900d4e9c96d7715aa5020",
10
+ "content_sha256": "sha256:76ab096e6346d1ddb4959be2c460e9a70e25f5ba79fa0f53c3149c3cae954b1f",
11
11
  "minimumCliVersion": "0.2.92",
12
- "workflowPackageVersion": "0.4.1",
12
+ "workflowPackageVersion": "0.4.2",
13
13
  "capabilities": [
14
14
  "sync@2",
15
15
  "rules-sync@1",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hunter-harness/workflow-harness",
3
- "version": "0.4.1",
3
+ "version": "0.4.2",
4
4
  "description": "Harness workflow family data package (bundles, manifests, migrations)",
5
5
  "license": "MIT",
6
6
  "type": "module",