easy-coding-harness 1.0.0-beta.0 → 1.0.0-beta.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.
package/CHANGELOG.md CHANGED
@@ -6,6 +6,30 @@
6
6
  - `y`:常规功能升级
7
7
  - `z`:日常 bug 修复
8
8
 
9
+ ## 1.0.0-beta.2
10
+
11
+ - 核心 Java Javadoc 规则新增接口文档继承例外:接口方法已有完整、准确且可访问的
12
+ Javadoc,且实现没有增加该接口方法文档未说明的契约、约束、副作用或其他实现特有行为时,
13
+ 实现方法无需重复注释,也不为
14
+ 满足普通门禁添加空洞的 `{@inheritDoc}`。
15
+ - 实现包含事务、幂等、缓存、重试、异常转换、线程安全、性能限制等接口未说明的特殊行为,
16
+ 或项目硬规则明确要求时,仍必须记录实现差异;字段、构造方法与普通方法的原有规则不变。
17
+ - 兼容旧项目的泛化 Javadoc 规则:仅有“每个核心 Java 方法都写 Javadoc”不会覆盖本例外,
18
+ 只有项目明确要求实现方法重复接口 Javadoc 时才覆盖;`ec-init` 生成规则时使用相同边界。
19
+ - IMPLEMENT、QUALITY、Lite 与 Claude Code、Codex、Qoder 三平台 Agent 统一使用新语义,
20
+ 并新增安装和 `1.0.0-beta.1` 升级回归,防止执行侧合理省略后被审查侧重新误报。
21
+
22
+ ## 1.0.0-beta.1
23
+
24
+ - ANALYSIS 的方案展示改为持久方案回执:后续仍有工具调用时,先前文本只算可能被宿主折叠的
25
+ 过程展示;原生选择返回或迁移调用结束后,最终消息会重新包含核心方案、验收、Workflow、
26
+ 风险与完整 Dev-Spec 链接/路径,不再被一句确认提示覆盖。
27
+ - Guard/Confirm 的取消、超时、空结果或无效结果继续保留 `pending_transition`,并在最终回执中
28
+ 重现完整选择;确认成功会注明接受的分支和目标阶段。Auto 不新增确认或停顿,只把完整
29
+ Dev-Spec 入口带入同轮下一条持久最终消息。
30
+ - 修复只调整 Agent 展示协议与三平台模板测试,不依赖客户端字符串匹配,不改变状态机、
31
+ 状态 API、任务文件或审批模式语义。
32
+
9
33
  ## 1.0.0-beta.0
10
34
 
11
35
  - 正常修改任务统一使用 `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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "easy-coding-harness",
3
- "version": "1.0.0-beta.0",
3
+ "version": "1.0.0-beta.2",
4
4
  "description": "CLI scaffold for installing Easy Coding harness files into agent-native directories.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -25,6 +25,14 @@ complete exactly that unit. Your reply IS the return value, not a message to a h
25
25
  - Every method and field in a new core Java class, and every added or materially modified method
26
26
  or field in an existing core Java class, must have meaningful multiline Javadoc; use `//` for
27
27
  ordinary one-line notes and comment complex logic where intent or constraints are not obvious.
28
+ An implementation method may omit repeated Javadoc only when its interface method has
29
+ meaningful, accurate, accessible Javadoc and it adds no implementation-specific contract,
30
+ constraint, side effect, or other behavior beyond that documented interface method's contract.
31
+ Document implementation-specific behavior and explicit project hard rules. Do not add an empty
32
+ `{@inheritDoc}` block solely to satisfy the normal rule. A generic project rule requiring
33
+ Javadoc on every core Java method does not by itself override the documented interface method
34
+ exception. Only an explicit project rule requiring implementation methods to repeat interface
35
+ Javadoc does.
28
36
  - Do not change unrelated comments, formatting, imports, names, or code. Keep one blank line
29
37
  between coherent logic sections and revert formatter spillover outside the requested scope.
30
38
  - Treat acceptance criteria, test points, contracts, and risks in the card as required inputs.
@@ -20,7 +20,13 @@ dimension named in your task card. Your reply IS the return value.
20
20
  cleanup solely as generic best practice. Flag unjustified local-style deviations, speculative
21
21
  layers, fragmented one-use micro-methods, constants created only for a getter return, and
22
22
  missing multiline Javadoc on any method/field in a new core Java class or any added/materially
23
- modified method/field in an existing core Java class.
23
+ modified method/field in an existing core Java class. Do not flag an implementation method when
24
+ the interface method it implements has meaningful, accurate, accessible Javadoc and it adds no
25
+ implementation-specific contract, constraint, side effect, or other behavior beyond that
26
+ documented interface method's contract; require Javadoc for implementation-specific behavior
27
+ or an explicit project hard rule. A generic project rule requiring Javadoc on every core Java
28
+ method does not by itself override the documented interface method exception. Only an explicit
29
+ project rule requiring implementation methods to repeat interface Javadoc does.
24
30
  - Treat unrelated comment, formatting, import, naming, or refactor changes as minimum-diff
25
31
  violations. Do not ask to clean up untouched legacy code.
26
32
  - On the first pass, report the complete in-scope finding set. On a repair pass, review only the
@@ -24,6 +24,13 @@ Hard constraints:
24
24
  - Every method and field in a new core Java class, and every added or materially modified method
25
25
  or field in an existing core Java class, must have meaningful multiline Javadoc; use // for
26
26
  ordinary one-line notes and comment complex logic where intent or constraints are not obvious.
27
+ An implementation method may omit repeated Javadoc only when its interface method has
28
+ meaningful, accurate, accessible Javadoc and it adds no implementation-specific contract,
29
+ constraint, side effect, or other behavior beyond that documented interface method's contract.
30
+ Document implementation-specific behavior and explicit project hard rules. Do not add an empty
31
+ {@inheritDoc} block solely to satisfy the normal rule. A generic project rule requiring Javadoc
32
+ on every core Java method does not by itself override the documented interface method exception.
33
+ Only an explicit project rule requiring implementation methods to repeat interface Javadoc does.
27
34
  - Do not change unrelated comments, formatting, imports, names, or code. Keep one blank line
28
35
  between coherent logic sections and revert formatter spillover outside the requested scope.
29
36
  - Treat acceptance criteria, test points, contracts, and risks in the card as required inputs.
@@ -19,7 +19,13 @@ Stance:
19
19
  cleanup solely as generic best practice. Flag unjustified local-style deviations, speculative
20
20
  layers, fragmented one-use micro-methods, constants created only for a getter return, and
21
21
  missing multiline Javadoc on any method/field in a new core Java class or any added/materially
22
- modified method/field in an existing core Java class.
22
+ modified method/field in an existing core Java class. Do not flag an implementation method when
23
+ the interface method it implements has meaningful, accurate, accessible Javadoc and it adds no
24
+ implementation-specific contract, constraint, side effect, or other behavior beyond that
25
+ documented interface method's contract; require Javadoc for implementation-specific behavior
26
+ or an explicit project hard rule. A generic project rule requiring Javadoc on every core Java
27
+ method does not by itself override the documented interface method exception. Only an explicit
28
+ project rule requiring implementation methods to repeat interface Javadoc does.
23
29
  - Treat unrelated comment, formatting, import, naming, or refactor changes as minimum-diff
24
30
  violations. Do not ask to clean up untouched legacy code.
25
31
  - On the first pass, report the complete in-scope finding set. On a repair pass, review only the
@@ -153,7 +153,10 @@ agent must be able to see what was generated and on what evidence.
153
153
  preference for single responsibility into a generic demand for many one-use helpers
154
154
  - Literal and constant conventions, including when local magic values are accepted and when
155
155
  a stable domain/config/protocol value is promoted to a named constant
156
- - Javadoc/doc-comment coverage for core code and the inline-comment style used for complex logic
156
+ - Javadoc/doc-comment coverage for core code and the inline-comment style used for complex
157
+ logic. A generic project rule requiring Javadoc on every core Java method does not by itself
158
+ override the documented interface method exception. Only project evidence explicitly
159
+ requiring implementation methods to repeat interface Javadoc does
157
160
  - Import ordering and formatter/linter in use (read their configs)
158
161
  Structure as one section per language plus a General section. Every rule must be
159
162
  mechanically checkable — "be clean" is not a rule; "exported functions carry explicit
@@ -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, present a concise session summary instead of
266
- pasting the full `dev-spec.md`. The summary must contain:
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
- Then request or auto-apply ANALYSIS -> IMPLEMENT according to `effective_approval_mode`.
282
- The state API atomically freezes the proposal when the transition is applied. `approval_mode`
283
- controls waiting; it never changes the selected execution depth.
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
 
@@ -63,6 +63,15 @@ Communicate with the user in the user's language.
63
63
  a getter.
64
64
  12. In a newly added core Java class, every method and field requires meaningful Javadoc. In an
65
65
  existing core Java class, every added or materially modified method and field requires it.
66
+ An implementation method may omit its own Javadoc when the interface method it implements has
67
+ meaningful, accurate, accessible Javadoc and the implementation adds no implementation-specific
68
+ contract, constraint, side effect, or other behavior beyond that documented interface method's
69
+ contract. Do not add an empty `{@inheritDoc}` block solely to satisfy this normal rule. Add
70
+ implementation Javadoc for any implementation-specific behavior or when an explicit project
71
+ hard rule requires it. A generic project rule requiring Javadoc on every core Java method
72
+ does not by itself override the
73
+ documented interface method exception. Only an explicit project rule requiring implementation
74
+ methods to repeat interface Javadoc does.
66
75
  Add focused inline comments to core or complex logic to explain intent, constraints, or
67
76
  non-obvious tradeoffs. Do not mass-retrofit untouched legacy code, and for non-Java code
68
77
  follow the language's doc-comment form plus the evidenced project convention. Java Javadoc
@@ -136,8 +145,9 @@ checks:[], issues:[], needs_attention:[]
136
145
  hard/contract dependencies are ready; do not batch-start dependent tasks at the initial
137
146
  IMPLEMENT boundary.
138
147
  Populate `Code Comments` on every code task card with the resolved user-facing host Agent
139
- author value, the field/member/constant rules, and the core Java Javadoc rule above. Populate
140
- `Local Baseline` from the Unit's analyzed evidence; sub-agents do not read this Skill.
148
+ author value, the field/member/constant rules, and the core Java Javadoc rule above, including
149
+ its documented-interface exception. Populate `Local Baseline` from the Unit's analyzed
150
+ evidence; sub-agents do not read this Skill.
141
151
  2. Execute according to dependency order and selected owner.
142
152
  3. For non-TDD work, do not run tests; self-audit scope, contracts, TODOs, and introduced warnings.
143
153
  For TDD, run only the lifecycle commands required by RED/GREEN/REFACTOR. Also audit new author
@@ -183,5 +193,6 @@ conversation overhead while keeping work observable.
183
193
  - [ ] New author attributions use the user-facing host `<Current Agent Name> with Easy Coding`.
184
194
  - [ ] Every new model field and every non-obvious documented member follows the local comment rule.
185
195
  - [ ] Every method/field in a new core Java class, and every added or materially modified one in
186
- an existing core Java class, has Javadoc.
196
+ an existing core Java class, has Javadoc unless it qualifies for the documented-interface
197
+ implementation exception.
187
198
  - [ ] The task enters QUALITY, regardless of workflow mode.
@@ -63,8 +63,15 @@ For an explicit repository mutation:
63
63
  cannot be a target. Then implement only those files.
64
64
  5. If scope expands, stop, replace the proposal, and confirm again.
65
65
  6. Apply local style, core Java Javadoc, logical blank lines, and minimum modification exactly as
66
- normal Easy Coding. Do not run tests by default; run only a command explicitly requested by
67
- the user or mandated by a project/global hard rule.
66
+ normal Easy Coding. This includes the implementation exception for a documented interface method:
67
+ omit repeated Javadoc only when the interface method has meaningful, accurate, accessible
68
+ Javadoc and the implementation adds no implementation-specific contract, constraint, side
69
+ effect, or other behavior beyond that documented interface method's contract.
70
+ Document implementation-specific behavior and obey explicit project hard rules. A generic
71
+ project rule requiring Javadoc on every core Java method does not by itself override the
72
+ documented interface method exception. Only an explicit project rule requiring implementation
73
+ methods to repeat interface Javadoc does. Do not run tests by default; run only a command
74
+ explicitly requested by the user or mandated by a project/global hard rule.
68
75
  7. Report changed files and any command actually run, then call
69
76
  `complete-lite-proposal --digest <digest>`. Completion fails if no confirmed target changed,
70
77
  another file changed after confirmation, or Git HEAD moved. Re-present the proposal rather
@@ -59,6 +59,16 @@ Review only the confirmed diff and its direct interactions. Check acceptance beh
59
59
  compatibility, security/correctness, test design, nearest local style, required core Java
60
60
  Javadoc, logical blank-line grouping, and minimum modification.
61
61
 
62
+ Do not report missing Javadoc on an implementation method when its interface method has
63
+ meaningful, accurate, accessible Javadoc and the implementation adds no implementation-specific
64
+ contract, constraint, side effect, or other behavior beyond that documented interface method's
65
+ contract. Require implementation Javadoc for implementation-specific behavior or when an explicit
66
+ project hard rule requires it.
67
+
68
+ A generic project rule requiring Javadoc on every core Java method does not by itself override the
69
+ documented interface method exception. Only an explicit project rule requiring implementation
70
+ methods to repeat interface Javadoc does.
71
+
62
72
  Do not demand defensive null checks, constant extraction, abstractions, method splitting,
63
73
  comments, formatting, or cleanup solely as generic best practice. Do not report unrelated legacy
64
74
  issues as task findings. The first review must report the complete in-scope finding set; after a
@@ -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; show the fallback when control returns only if it is
76
- not already visible, and never retry native choice in that turn. On resume, consume a matching
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 summary with an absolute local link/path to the full dev-spec.md; never paste the full
93
- artifact by default. The final artifact contains neither `[阶段:ANALYSIS]` nor a
94
- `待用户决策` section.
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; show the fallback when control returns only if it is
74
- not already visible, and never retry native choice in that turn. On resume, consume a matching
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 summary with an absolute local link/path to the full dev-spec.md; never paste the full
91
- artifact by default. The final artifact contains neither `[阶段:ANALYSIS]` nor a
92
- `待用户决策` section.
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.
@@ -27,6 +27,14 @@ complete exactly that unit. Your reply IS the return value, not a message to a h
27
27
  - Every method and field in a new core Java class, and every added or materially modified method
28
28
  or field in an existing core Java class, must have meaningful multiline Javadoc; use `//` for
29
29
  ordinary one-line notes and comment complex logic where intent or constraints are not obvious.
30
+ An implementation method may omit repeated Javadoc only when its interface method has
31
+ meaningful, accurate, accessible Javadoc and it adds no implementation-specific contract,
32
+ constraint, side effect, or other behavior beyond that documented interface method's contract.
33
+ Document implementation-specific behavior and explicit project hard rules. Do not add an empty
34
+ `{@inheritDoc}` block solely to satisfy the normal rule. A generic project rule requiring
35
+ Javadoc on every core Java method does not by itself override the documented interface method
36
+ exception. Only an explicit project rule requiring implementation methods to repeat interface
37
+ Javadoc does.
30
38
  - Do not change unrelated comments, formatting, imports, names, or code. Keep one blank line
31
39
  between coherent logic sections and revert formatter spillover outside the requested scope.
32
40
  - Treat acceptance criteria, test points, contracts, and risks in the card as required inputs.
@@ -22,7 +22,13 @@ dimension named in your task card. Your reply IS the return value.
22
22
  cleanup solely as generic best practice. Flag unjustified local-style deviations, speculative
23
23
  layers, fragmented one-use micro-methods, constants created only for a getter return, and
24
24
  missing multiline Javadoc on any method/field in a new core Java class or any added/materially
25
- modified method/field in an existing core Java class.
25
+ modified method/field in an existing core Java class. Do not flag an implementation method when
26
+ the interface method it implements has meaningful, accurate, accessible Javadoc and it adds no
27
+ implementation-specific contract, constraint, side effect, or other behavior beyond that
28
+ documented interface method's contract; require Javadoc for implementation-specific behavior
29
+ or an explicit project hard rule. A generic project rule requiring Javadoc on every core Java
30
+ method does not by itself override the documented interface method exception. Only an explicit
31
+ project rule requiring implementation methods to repeat interface Javadoc does.
26
32
  - Treat unrelated comment, formatting, import, naming, or refactor changes as minimum-diff
27
33
  violations. Do not ask to clean up untouched legacy code.
28
34
  - On the first pass, report the complete in-scope finding set. On a repair pass, review only the