harnessed 3.4.3 → 3.4.4

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/README.md +3 -0
  2. package/dist/cli.mjs +1084 -745
  3. package/dist/cli.mjs.map +1 -1
  4. package/dist/index.mjs +1 -1
  5. package/dist/index.mjs.map +1 -1
  6. package/package.json +1 -1
  7. package/workflows/auto/SKILL.md +10 -4
  8. package/workflows/capabilities.yaml +1 -1
  9. package/workflows/discuss/auto/SKILL.md +9 -4
  10. package/workflows/discuss/phase/SKILL.md +11 -29
  11. package/workflows/discuss/strategic/SKILL.md +11 -31
  12. package/workflows/discuss/subtask/SKILL.md +11 -29
  13. package/workflows/execute-task/SKILL.md +7 -6
  14. package/workflows/execute-task/workflow.yaml +93 -0
  15. package/workflows/plan/architecture/SKILL.md +11 -31
  16. package/workflows/plan/auto/SKILL.md +9 -4
  17. package/workflows/plan/phase/SKILL.md +11 -31
  18. package/workflows/research/SKILL.md +14 -1
  19. package/workflows/retro/SKILL.md +11 -29
  20. package/workflows/task/auto/SKILL.md +9 -4
  21. package/workflows/task/clarify/SKILL.md +11 -29
  22. package/workflows/task/code/SKILL.md +11 -31
  23. package/workflows/task/deliver/SKILL.md +12 -32
  24. package/workflows/task/test/SKILL.md +11 -31
  25. package/workflows/verify/auto/SKILL.md +9 -4
  26. package/workflows/verify/code-review/SKILL.md +11 -33
  27. package/workflows/verify/design/SKILL.md +11 -33
  28. package/workflows/verify/multispec/SKILL.md +11 -31
  29. package/workflows/verify/paranoid/SKILL.md +11 -35
  30. package/workflows/verify/progress/SKILL.md +11 -29
  31. package/workflows/verify/qa/SKILL.md +11 -31
  32. package/workflows/verify/security/SKILL.md +11 -33
  33. package/workflows/verify/simplify/SKILL.md +11 -31
  34. package/workflows/execute-task/phases.yaml +0 -73
@@ -47,39 +47,19 @@ Sister `workflows/judgments/stage-routing.yaml`:
47
47
  - ✅ **触发**: verify chain 末尾步骤 (所有其他 verify sub 已 ship, 准备 code 简化收尾)
48
48
  - ❌ **跳过**: verify chain 中间步骤 (避免过早简化干扰后续 review)
49
49
 
50
- <!-- v3.4.3-dual-path-invocation -->
51
50
  ## How to invoke
52
51
 
53
- **Preferred path** (when the upstream specialist is installed): use the SlashCommand tool to run `{{ capabilities.code-simplifier.cmd }}` — the upstream specialist takes over.
54
-
55
- **Fallback path** (when the upstream isn't installed or returns no result): use the Task tool to spawn a general-purpose subagent with this prompt:
56
-
57
- > You are a **Code Simplifier (tail step)**.
58
- >
59
- > **Mission**: Last step of verify chain (`phase.is_final_step == true`) after all reviews ship. Remove duplication / multi-purpose helpers / unused code / over-abstraction from the diff. Keep tests passing.
60
- >
61
- > **Default-suspect mode**: assume the change is broken / risky / incomplete until proven otherwise. Cite `file:line` for every finding; do not generalize.
62
- >
63
- > **Review checklist**:
64
- > 1. Look only at files changed in this phase — don't simplify unrelated code
65
- >
66
- > 2. Duplication: same logic in 2+ places → extract once, but only if both sites benefit
67
- >
68
- > 3. Dead code: unused exports / unreachable branches / commented-out blocks
69
- >
70
- > 4. Magic numbers used in >1 place → named constant
71
- >
72
- > 5. Over-abstraction: generics / interfaces with 1 implementer → inline
73
- >
74
- > 6. Comments that lie or duplicate the code → delete (no-comments-default karpathy rule)
75
- >
76
- > 7. Run tests after each simplification; revert if anything fails
77
- >
78
- > **Output format**: structured report with severity-classified findings (applied / candidate-flagged / skipped (too risky for final step)). One finding per line: `[severity] file:line — problem (one sentence); fix: suggested change`. If no findings, say so explicitly. No preamble, no end-of-report summary.
79
-
80
- (Role prompt is self-contained — works even when the upstream `code-simplifier` user-skill / plugin isn't installed.)
81
-
82
- (Sister `~/.claude/commands/verify-simplify.md` is also generated by `harnessed setup` so `/verify-simplify` is a real platform slash command — both files carry the same dual-path instruction. Previous v3.4.x `harnessed verify-simplify --apply` CLI claims are removed; that subcommand was never implemented.)
52
+ Use the Bash tool to run:
53
+
54
+ ```bash
55
+ echo "$ARGUMENTS" | harnessed run verify-simplify --task-stdin
56
+ ```
57
+
58
+ If `$ARGUMENTS` is empty, run `harnessed run verify-simplify` (no stdin pipe).
59
+
60
+ After completion, the Bash output prints a `Next:` hint on stderr suggesting the next stage. Decide whether to invoke based on conversation context — the hint is informational, not prescriptive.
61
+
62
+ <!-- harnessed-generated:v3.4.4 -->
83
63
 
84
64
  ## References
85
65
 
@@ -1,73 +0,0 @@
1
- # workflows/execute-task/phases.yaml — Phase v2.0-2.4 W1.1 v2 schema upgrade
2
- # Sister v1 (28L, ADR 0011 errata Phase 2.2 W3 T3.3 ship) → v2 (~60L, T2.4.W1.1).
3
- #
4
- # v2 delta (per PLAN.md L327-330 verbatim + RESEARCH § 3.3 + D-09 + D-10 + D-13):
5
- # - schema_version: harnessed.workflow.v2 (sister Phase 2.2 schemaVersion 7 surface)
6
- # - 02-code: on[] mattpocock route by condition (tdd-gate / grill-with-docs / zoom-out)
7
- # - 03-test: on[] diagnose if test_fail
8
- # - 04-deliver: capability + args + gate + parallelism + on[] + fallback (R20.10 explicit halt)
9
- #
10
- # Per-phase model tier (ADR 0011 errata / intel CD-2 § 第 4 条) — unchanged from v1.
11
- # Default table sourced from `.planning/intel/omc-comparison.md` § CD-2 (phase 2.2 W3 T3.3).
12
- # Override via CLI: `--model-tier inherit` (B-10 escape hatch).
13
- #
14
- # capability template — '{{ capabilities.<name>.cmd }}' resolves at workflow runtime
15
- # (sister D-02 gstack_prefix interpolation pattern from workflows/plan-feature/workflow.yaml).
16
- # gate / parallelism — 4-level ref 'judgments.<file>.<gate>.fires' pre-resolves via
17
- # T2.3.W0.4 judgmentResolver BEFORE expr-eval (per src/workflow/schema/workflow.ts L18-19).
18
-
19
- schema_version: harnessed.workflow.v2
20
- workflow: execute-task
21
- description: 子任务执行 workflow — 4-phase 真接 ralph-loop SDK + tdd-gate conditional + mattpocock route by condition
22
- phases:
23
- - id: 01-clarify
24
- name: brainstorming
25
- upstream: superpowers brainstorming
26
- capability: '{{ capabilities.superpowers-brainstorming.cmd }}'
27
- model: opus
28
- max_iterations: '{{ defaults.ralph_max_iterations.execute-task.01-clarify }}'
29
- gate: judgments.subtask-gate.brainstorming.fires
30
-
31
- - id: 02-code
32
- name: code (karpathy 心法 always-on + mattpocock conditional route)
33
- upstream: karpathy
34
- model: sonnet
35
- max_iterations: '{{ defaults.ralph_max_iterations.execute-task.02-code }}'
36
- on:
37
- - if: 'judgments.tdd-gate.tdd-strongly-suggested.fires'
38
- invoke: '{{ capabilities.tdd.cmd }}'
39
- - if: 'phase.spec_ambiguous == true'
40
- invoke: '{{ capabilities.grill-with-docs.cmd }}'
41
- - if: 'phase.unfamiliar_module == true'
42
- invoke: '{{ capabilities.zoom-out.cmd }}'
43
-
44
- - id: 03-test
45
- name: test (conditional TDD + diagnose on fail)
46
- upstream: superpowers TDD
47
- capability: '{{ capabilities.tdd.cmd }}'
48
- model: sonnet
49
- max_iterations: '{{ defaults.ralph_max_iterations.execute-task.03-test }}'
50
- on:
51
- - if: 'test_fail == true'
52
- invoke: '{{ capabilities.diagnose.cmd }}'
53
-
54
- - id: 04-deliver
55
- name: deliver (ralph-loop COMPLETE gate + max-iter fallback)
56
- upstream: ralph-loop
57
- capability: '{{ capabilities.ralph-loop.cmd }}'
58
- model: haiku
59
- args:
60
- completion_promise: COMPLETE
61
- max_iterations: '{{ defaults.ralph_max_iterations.execute-task.04-deliver }}'
62
- gate: judgments.parallelism-gate.fires
63
- parallelism: judgments.parallelism-gate.ralph-loop-wrapper.fires
64
- on:
65
- - if: 'subtask.lines >= 20 and subtask.type != "single_command_query"'
66
- invoke: '{{ capabilities.ralph-loop.cmd }}'
67
- - if: 'subtask.lines < 20 or subtask.type == "single_command_query"'
68
- action: skip
69
- fallback:
70
- max_iterations_exceeded:
71
- action: emit_warning_and_halt
72
- message: '⚠️ ralph-loop max-iterations ({{ args.max_iterations }}) exceeded for execute-task 04-deliver. Sub-task likely incomplete — see workflow engine catch handler for manual options.'
73
- exit_code: 1