easy-coding-harness 1.0.0-beta.0 → 1.0.0-beta.1
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.
- package/CHANGELOG.md +11 -0
- package/README.md +2 -1
- package/package.json +1 -1
- package/templates/common/skills/ec-analysis/SKILL.md +15 -5
- package/templates/common/skills/ec-workflow/SKILL.md +10 -1
- package/templates/main-constraint/AGENTS.md.tpl +12 -6
- package/templates/main-constraint/CLAUDE.md.tpl +12 -6
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,17 @@
|
|
|
6
6
|
- `y`:常规功能升级
|
|
7
7
|
- `z`:日常 bug 修复
|
|
8
8
|
|
|
9
|
+
## 1.0.0-beta.1
|
|
10
|
+
|
|
11
|
+
- ANALYSIS 的方案展示改为持久方案回执:后续仍有工具调用时,先前文本只算可能被宿主折叠的
|
|
12
|
+
过程展示;原生选择返回或迁移调用结束后,最终消息会重新包含核心方案、验收、Workflow、
|
|
13
|
+
风险与完整 Dev-Spec 链接/路径,不再被一句确认提示覆盖。
|
|
14
|
+
- Guard/Confirm 的取消、超时、空结果或无效结果继续保留 `pending_transition`,并在最终回执中
|
|
15
|
+
重现完整选择;确认成功会注明接受的分支和目标阶段。Auto 不新增确认或停顿,只把完整
|
|
16
|
+
Dev-Spec 入口带入同轮下一条持久最终消息。
|
|
17
|
+
- 修复只调整 Agent 展示协议与三平台模板测试,不依赖客户端字符串匹配,不改变状态机、
|
|
18
|
+
状态 API、任务文件或审批模式语义。
|
|
19
|
+
|
|
9
20
|
## 1.0.0-beta.0
|
|
10
21
|
|
|
11
22
|
- 正常修改任务统一使用 `INIT → ANALYSIS → IMPLEMENT → QUALITY → MEMORY → COMPLETE`;
|
package/README.md
CHANGED
|
@@ -89,7 +89,8 @@ any stage --[user abort via ec-task-close]--> CLOSED
|
|
|
89
89
|
execution plan 实际修改的 Git root 计算,用户可在机械风险下限之上调整。
|
|
90
90
|
- ANALYSIS 会先通过问答闭合影响技术路线、接口、模型、状态、范围或验收的实质性问题,
|
|
91
91
|
并在 Dev-Spec 中记录唯一的 `decision_status: closed`。会话只展示核心方案、验收摘要、
|
|
92
|
-
Workflow Mode 与主要风险;完整 `dev-spec.md`
|
|
92
|
+
Workflow Mode 与主要风险;完整 `dev-spec.md` 通过绝对本地链接或路径按需查看。原生选择
|
|
93
|
+
返回或迁移调用结束后的最终消息会重复紧凑方案回执与完整入口,避免前置过程消息折叠后丢失。
|
|
93
94
|
- Java TDD 默认关闭;优先级为 session 覆盖 > 项目配置 > `false/90%`。首次开启前必须运行 `ec-tdd-init`,只建设 JUnit/JaCoCo/GitLab 增量覆盖率基础设施,不补存量业务单测;readiness 通过后才允许显式开启。开启后在 ANALYSIS → IMPLEMENT 冻结开关、baseline 与阈值,只验收本任务新增/修改生产代码行,执行 RED/GREEN/REFACTOR(纯重构使用 characterization GREEN → GREEN),并要求本地单测通过、本地差异覆盖率达到冻结阈值。GitLab TEST-stage job 仍会生成,但远程 pipeline 结果不属于 Harness 验收证据,也不会触发中间提交推送。关闭时普通任务不扫描 CI/JaCoCo、不增加命令或提高原工作流验收深度。
|
|
94
95
|
- 所有修改任务都进入 QUALITY;纯对话分析、解释、报告和只读 review 保持 Ready,不创建任务。文档或配置一旦写入仓库,仍走完整状态机。
|
|
95
96
|
- `QUALITY` 同时编排只读 Review Gate 与 Verification Gate。Fast 使用主 Agent 聚焦自审和最小定向验证,Standard 使用一个独立 reviewer 与受影响检查,Strict 使用至少两个独立维度并只对实际修改仓库运行完整适用检查。两个 Gate 绑定同一候选指纹和 attempt,必须完成或明确取消后才形成一次 Repair Bundle;代码/测试缺陷回 IMPLEMENT,契约歧义优先回 ANALYSIS并保留同轮其他缺陷,环境问题留在 QUALITY 重试;候选漂移会审计为 cancelled 并强制先回 IMPLEMENT。
|
package/package.json
CHANGED
|
@@ -262,8 +262,8 @@ while still in ANALYSIS.
|
|
|
262
262
|
|
|
263
263
|
## User presentation and transition
|
|
264
264
|
|
|
265
|
-
After decision closure and before the boundary,
|
|
266
|
-
pasting the full `dev-spec.md`. The
|
|
265
|
+
After decision closure and before the boundary, prepare a concise proposal receipt instead of
|
|
266
|
+
pasting the full `dev-spec.md`. The receipt must contain:
|
|
267
267
|
|
|
268
268
|
- the core solution and affected scope/units;
|
|
269
269
|
- acceptance and test-strategy highlights;
|
|
@@ -278,9 +278,19 @@ copyable absolute path. Do not dump the full artifact merely because the client
|
|
|
278
278
|
If the user asks to inspect the full plan, open or read that stored file on demand using the
|
|
279
279
|
current Agent's supported file capability.
|
|
280
280
|
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
281
|
+
The proposal receipt must survive the client boundary. Assistant text emitted before a later
|
|
282
|
+
tool call is only a process presentation: a host may group or collapse it, so it does not satisfy
|
|
283
|
+
the durable receipt requirement. For a confirmation-required ANALYSIS -> IMPLEMENT edge, the last
|
|
284
|
+
assistant response after a native choice returns or a matching transition call completes must be
|
|
285
|
+
self-contained. Repeat the compact receipt and full Dev-Spec link/path even when the same content
|
|
286
|
+
was visible before the tool call. If the edge remains pending, also repeat the complete choices;
|
|
287
|
+
if it was confirmed, identify the accepted branch and target stage. Never reduce this response to
|
|
288
|
+
only a confirmation prompt or transition result.
|
|
289
|
+
|
|
290
|
+
For an automatic edge, do not add a pause or turn it into a confirmation gate. Apply the edge and
|
|
291
|
+
carry the full Dev-Spec link/path into the next durable final response in the same turn. The state
|
|
292
|
+
API atomically freezes the proposal when the transition is applied. `approval_mode` controls
|
|
293
|
+
waiting; it never changes the selected execution depth.
|
|
284
294
|
|
|
285
295
|
## Gates
|
|
286
296
|
|
|
@@ -167,9 +167,18 @@ choice set before invoking the platform's native choice UI:
|
|
|
167
167
|
Preserve `pending_transition` on cancellation, timeout, or invalid UI output. A later ordinary
|
|
168
168
|
reply may consume it. Use `confirm-transition` only for a matching stored edge.
|
|
169
169
|
|
|
170
|
+
Text emitted before a later tool call is a non-durable process presentation because the host may
|
|
171
|
+
group or collapse it. For ANALYSIS -> IMPLEMENT, preserve the compact proposal receipt produced by
|
|
172
|
+
`ec-analysis`. After a native choice returns or a matching transition call completes, the last
|
|
173
|
+
assistant response in that turn must repeat the receipt and full Dev-Spec link/path even if they
|
|
174
|
+
were already visible. When the edge remains pending, include the complete numbered fallback;
|
|
175
|
+
when confirmed, name the accepted branch and target stage. An empty, cancelled, timed-out, or
|
|
176
|
+
invalid native result is not grounds to omit this final receipt.
|
|
177
|
+
|
|
170
178
|
Use `auto-transition` only when the state API says the edge is automatic. Mechanical gates
|
|
171
179
|
(analysis artifacts and proposal, review fingerprint, verification fingerprint, memory
|
|
172
|
-
completion) apply in every approval mode.
|
|
180
|
+
completion) apply in every approval mode. An automatic ANALYSIS -> IMPLEMENT edge must not pause;
|
|
181
|
+
carry its full Dev-Spec link/path into the next durable final response in the same turn.
|
|
173
182
|
|
|
174
183
|
`[easy-coding:acceptance-drift-confirmation-required]` is a narrow exception to automatic-edge
|
|
175
184
|
handling. Call `inspect-transition-drift`, present every returned patch/binary/mode change and the
|
|
@@ -72,10 +72,15 @@ First run `ec-init`; daily work goes through `ec-workflow`.
|
|
|
72
72
|
explicitly guarantees an indefinite wait; disable or omit automatic timeout/resolution in that
|
|
73
73
|
case. Otherwise pre-render the matching numbered fallback before invoking native choice once,
|
|
74
74
|
so timeout cannot remove the user's path forward. Empty, dismissed, timed-out, or unparseable
|
|
75
|
-
native results preserve the pending edge;
|
|
76
|
-
|
|
75
|
+
native results preserve the pending edge; never retry native choice in that turn. On resume,
|
|
76
|
+
consume a matching
|
|
77
77
|
numbered reply against the stored edge before re-presenting the gate. Never degrade to only
|
|
78
|
-
"reply confirm".
|
|
78
|
+
"reply confirm". Text shown before a later tool call is non-durable because the
|
|
79
|
+
host may group or collapse it. For ANALYSIS -> IMPLEMENT, the last assistant response after a
|
|
80
|
+
native choice or transition call must repeat a compact core-solution, acceptance, workflow,
|
|
81
|
+
and risk receipt plus the full Dev-Spec link/path, even if already visible. Repeat the complete
|
|
82
|
+
fallback while the edge is pending; after confirmation, identify the accepted branch and target
|
|
83
|
+
stage. Auto adds no pause and carries the Dev-Spec link/path into the next durable final response.
|
|
79
84
|
- When `[easy-coding:no-harness]` is injected, do not emit an Easy Coding status line and ignore
|
|
80
85
|
only Easy Coding workflow/stage orchestration for this session. Continue honoring every
|
|
81
86
|
non-Easy-Coding skill, hook, and instruction. Do not clear or mutate the suspended task.
|
|
@@ -89,9 +94,10 @@ First run `ec-init`; daily work goes through `ec-workflow`.
|
|
|
89
94
|
each confirmed answer and its evidence in `### 决策闭环`. Only after all material decisions are
|
|
90
95
|
resolved may the agent set the single `decision_status: closed`, finalize the artifacts, and
|
|
91
96
|
propose IMPLEMENT. The session presentation is a concise core-solution, acceptance, workflow,
|
|
92
|
-
and risk
|
|
93
|
-
|
|
94
|
-
|
|
97
|
+
and risk receipt with an absolute local link/path to the full dev-spec.md; repeat that durable
|
|
98
|
+
receipt after a later native choice or transition call instead of relying on collapsible process
|
|
99
|
+
text; never paste the full artifact by default. The final artifact contains neither
|
|
100
|
+
`[阶段:ANALYSIS]` nor a `待用户决策` section.
|
|
95
101
|
- QUALITY contains fingerprinted Review and Verification Gates. Review evidence must match the final
|
|
96
102
|
implementation; verification evidence must match final implementation and config. The frozen
|
|
97
103
|
workflow mode selects targeted, impacted, or full commands without weakening the green gate.
|
|
@@ -70,10 +70,15 @@ First run `/ec-init`; daily work goes through `/ec-workflow`.
|
|
|
70
70
|
explicitly guarantees an indefinite wait; disable or omit automatic timeout/resolution in that
|
|
71
71
|
case. Otherwise pre-render the matching numbered fallback before invoking native choice once,
|
|
72
72
|
so timeout cannot remove the user's path forward. Empty, dismissed, timed-out, or unparseable
|
|
73
|
-
native results preserve the pending edge;
|
|
74
|
-
|
|
73
|
+
native results preserve the pending edge; never retry native choice in that turn. On resume,
|
|
74
|
+
consume a matching
|
|
75
75
|
numbered reply against the stored edge before re-presenting the gate. Never degrade to only
|
|
76
|
-
"reply confirm".
|
|
76
|
+
"reply confirm". Text shown before a later tool call is non-durable because the
|
|
77
|
+
host may group or collapse it. For ANALYSIS -> IMPLEMENT, the last assistant response after a
|
|
78
|
+
native choice or transition call must repeat a compact core-solution, acceptance, workflow,
|
|
79
|
+
and risk receipt plus the full Dev-Spec link/path, even if already visible. Repeat the complete
|
|
80
|
+
fallback while the edge is pending; after confirmation, identify the accepted branch and target
|
|
81
|
+
stage. Auto adds no pause and carries the Dev-Spec link/path into the next durable final response.
|
|
77
82
|
- When `[easy-coding:no-harness]` is injected, do not emit an Easy Coding status line and ignore
|
|
78
83
|
only Easy Coding workflow/stage orchestration for this session. Continue honoring every
|
|
79
84
|
non-Easy-Coding skill, hook, and instruction. Do not clear or mutate the suspended task.
|
|
@@ -87,9 +92,10 @@ First run `/ec-init`; daily work goes through `/ec-workflow`.
|
|
|
87
92
|
each confirmed answer and its evidence in `### 决策闭环`. Only after all material decisions are
|
|
88
93
|
resolved may the agent set the single `decision_status: closed`, finalize the artifacts, and
|
|
89
94
|
propose IMPLEMENT. The session presentation is a concise core-solution, acceptance, workflow,
|
|
90
|
-
and risk
|
|
91
|
-
|
|
92
|
-
|
|
95
|
+
and risk receipt with an absolute local link/path to the full dev-spec.md; repeat that durable
|
|
96
|
+
receipt after a later native choice or transition call instead of relying on collapsible process
|
|
97
|
+
text; never paste the full artifact by default. The final artifact contains neither
|
|
98
|
+
`[阶段:ANALYSIS]` nor a `待用户决策` section.
|
|
93
99
|
- QUALITY contains fingerprinted Review and Verification Gates. Review evidence must match the final
|
|
94
100
|
implementation; verification evidence must match final implementation and config. The frozen
|
|
95
101
|
workflow mode selects targeted, impacted, or full commands without weakening the green gate.
|