create-harness-vibe-coding 0.8.7 → 0.8.9
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/README-CN.md +163 -105
- package/README.md +179 -244
- package/bin/create-harness-vibe-coding.js +2 -2
- package/docs/images/harness-architecture-light.png +0 -0
- package/docs/images/harness-architecture.drawio +164 -0
- package/docs/images/harness-icon.png +0 -0
- package/package.json +47 -44
- package/src/generator.js +41 -5
- package/src/index.js +86 -13
- package/src/prompts.js +37 -37
- package/templates/common/.claude/agents/architect-manager.md +45 -45
- package/templates/common/.claude/agents/architect.md +31 -31
- package/templates/common/.claude/agents/codebase-explorer.md +45 -0
- package/templates/common/.claude/agents/context-master.md +75 -75
- package/templates/common/.claude/agents/debugger.md +41 -41
- package/templates/common/.claude/agents/docs-researcher.md +41 -41
- package/templates/common/.claude/agents/explore-manager.md +41 -41
- package/templates/common/.claude/agents/implement-manager.md +49 -49
- package/templates/common/.claude/agents/implementer.md +40 -40
- package/templates/common/.claude/agents/memory-master.md +82 -64
- package/templates/common/.claude/agents/planner.md +34 -34
- package/templates/common/.claude/agents/researcher.md +41 -41
- package/templates/common/.claude/agents/review-manager.md +56 -56
- package/templates/common/.claude/agents/reviewer.md +34 -34
- package/templates/common/.claude/agents/task-scribe.md +70 -0
- package/templates/common/.claude/agents/verifier.md +29 -29
- package/templates/common/.claude/commands/wf-help.md +9 -5
- package/templates/common/.claude/commands/wf-update.md +24 -0
- package/templates/common/.claude/rules/ecc/common.md +57 -44
- package/templates/common/.claude/settings.json +13 -0
- package/templates/common/.claude/skills/subagent-orchestrator/SKILL.md +8 -4
- package/templates/common/.claude/skills/wf/SKILL.md +15 -8
- package/templates/common/.claude/skills/wf-auto/SKILL.md +10 -7
- package/templates/common/.claude/skills/wf-learn/SKILL.md +9 -2
- package/templates/common/.claude/skills/wf-max/SKILL.md +23 -5
- package/templates/common/.claude/skills/wf-readme/SKILL.md +49 -49
- package/templates/common/.claude/skills/wf-remove/SKILL.md +7 -7
- package/templates/common/.claude/skills/wf-update/SKILL.md +15 -2
- package/templates/common/.codex/hooks.json +17 -0
- package/templates/common/.harness-version +130 -45
- package/templates/common/.opencode/agents/architect-manager.md +52 -0
- package/templates/common/.opencode/agents/architect.md +35 -0
- package/templates/common/.opencode/agents/codebase-explorer.md +45 -0
- package/templates/common/.opencode/agents/context-master.md +81 -0
- package/templates/common/.opencode/agents/debugger.md +43 -0
- package/templates/common/.opencode/agents/docs-researcher.md +42 -0
- package/templates/common/.opencode/agents/explore-manager.md +49 -0
- package/templates/common/.opencode/agents/implement-manager.md +56 -0
- package/templates/common/.opencode/agents/implementer.md +42 -0
- package/templates/common/.opencode/agents/memory-master.md +88 -0
- package/templates/common/.opencode/agents/planner.md +38 -0
- package/templates/common/.opencode/agents/reflector.md +39 -0
- package/templates/common/.opencode/agents/researcher.md +42 -0
- package/templates/common/.opencode/agents/review-manager.md +63 -0
- package/templates/common/.opencode/agents/reviewer.md +37 -0
- package/templates/common/.opencode/agents/task-scribe.md +70 -0
- package/templates/common/.opencode/agents/tdd-guide.md +83 -0
- package/templates/common/.opencode/agents/test-writer.md +54 -0
- package/templates/common/.opencode/agents/verifier.md +37 -0
- package/templates/common/.opencode/commands/wf-auto-spark.md +15 -0
- package/templates/common/.opencode/commands/wf-auto.md +15 -0
- package/templates/common/.opencode/commands/wf-help.md +27 -0
- package/templates/common/.opencode/commands/wf-learn.md +15 -0
- package/templates/common/.opencode/commands/wf-max.md +15 -0
- package/templates/common/.opencode/commands/wf-readme.md +15 -0
- package/templates/common/.opencode/commands/wf-remove.md +15 -0
- package/templates/common/.opencode/commands/wf-review.md +15 -0
- package/templates/common/.opencode/commands/wf-update.md +24 -0
- package/templates/common/.opencode/commands/wf.md +15 -0
- package/templates/common/.opencode/plugins/harness-wf-status.mjs +135 -0
- package/templates/common/AGENTS.md +2 -29
- package/templates/common/CLAUDE.md +114 -88
- package/templates/common/Harness/ACCEPTANCE_PROTOCOL.md +2 -2
- package/templates/common/{MEMORY.md → Harness/MEMORY.md} +17 -4
- package/templates/common/Harness/MEMORY_PROTOCOL.md +80 -30
- package/templates/common/Harness/PROGRESS.md +17 -17
- package/templates/common/Harness/README.md +58 -19
- package/templates/common/{SETUP.md → Harness/SETUP.md} +278 -276
- package/templates/common/Harness/TASK_ARCHIVE.md +56 -0
- package/templates/common/Harness/WF-AUTO-ANGLES.md +170 -0
- package/templates/common/Harness/WF-AUTO-SPARK.md +10 -19
- package/templates/common/Harness/WF-AUTO.md +93 -167
- package/templates/common/Harness/WF-KERNEL.md +189 -0
- package/templates/common/Harness/WF-MAX.md +60 -328
- package/templates/common/Harness/WF-STATE.md +83 -0
- package/templates/common/Harness/WF.md +117 -237
- package/templates/common/Harness/agent-workflow.md +2 -2
- package/templates/common/Harness/architecture.md +124 -124
- package/templates/common/Harness/context-loading.md +111 -111
- package/templates/common/Harness/dispatch.md +43 -35
- package/templates/common/Harness/extension.md +66 -66
- package/templates/common/Harness/lifecycle.md +20 -20
- package/templates/common/Harness/research/PRD.md +56 -56
- package/templates/common/Harness/research/README.md +169 -169
- package/templates/common/Harness/research/research-results.md +66 -66
- package/templates/common/Harness/scripts/archive-tasks.mjs +239 -0
- package/templates/common/{scripts → Harness/scripts}/scan-clean.mjs +443 -416
- package/templates/common/{scripts → Harness/scripts}/validate-harness.mjs +691 -452
- package/templates/common/Harness/scripts/wf-auto-update-prompt.mjs +258 -0
- package/templates/common/{scripts → Harness/scripts}/wf-remove.mjs +56 -39
- package/templates/common/{scripts → Harness/scripts}/wf-update-check.mjs +632 -599
- package/templates/common/Harness/subagents.md +215 -214
- package/templates/common/Harness/tasks/_template/ARTIFACTS.md +2 -2
- package/templates/common/Harness/tasks/_template/NOTES.md +2 -2
- package/templates/common/Harness/tasks/_template/PLAN.md +5 -0
- package/templates/common/Harness/tasks/_template/STATE.json +23 -0
- package/templates/common/README.md +37 -37
- package/templates/common/memory/agent-lessons-patterns.md +22 -21
- package/templates/common/memory/routes.md +43 -0
- package/templates/common/memory/startup-hints.md +32 -0
- package/templates/common/memory/tool-usage-reflections.md +22 -21
- package/templates/common/memory/user-corrections-preferences.md +23 -21
- package/templates/common/opencode.json +19 -0
- package/templates/optional/catalog.json +49 -33
- package/templates/optional/skills/browser-e2e/.claude/skills/browser-e2e/SKILL.md +42 -42
- package/templates/optional/skills/browser-e2e/.claude/skills/wf-browser/SKILL.md +193 -193
- package/templates/optional/skills/browser-e2e/.opencode/commands/wf-browser.md +15 -0
- package/templates/optional/skills/browser-e2e/Harness/workflows/browser-e2e.md +48 -48
- package/templates/optional/skills/github-pr-review/.claude/skills/github-pr-review/SKILL.md +40 -40
- package/templates/optional/skills/github-pr-review/Harness/workflows/github-pr-review.md +28 -28
- package/templates/optional/skills/python-backend/.claude/skills/python-backend/SKILL.md +40 -40
- package/templates/optional/skills/python-backend/Harness/workflows/python-backend.md +34 -34
- package/templates/optional/skills/ts-react-frontend/.claude/skills/ts-react-frontend/SKILL.md +43 -43
- package/templates/optional/skills/ts-react-frontend/Harness/workflows/ts-react-frontend.md +34 -34
- package/templates/optional/skills/ui-ux-review/.claude/skills/ui-ux-review/SKILL.md +40 -40
- package/templates/optional/skills/ui-ux-review/Harness/workflows/ui-ux-review.md +26 -26
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# TASK_ARCHIVE — Task Archive Mechanism
|
|
2
|
+
|
|
3
|
+
Purpose: keep `Harness/tasks/` lean by archiving completed/abandoned tasks while preserving all evidence.
|
|
4
|
+
|
|
5
|
+
## Archive Location
|
|
6
|
+
|
|
7
|
+
Active tasks stay in `Harness/tasks/<task-id>/`.
|
|
8
|
+
Archived tasks move to `Harness/tasks/_archive/YYYY/<task-id>/`.
|
|
9
|
+
|
|
10
|
+
## What Is Never Archived
|
|
11
|
+
|
|
12
|
+
- `Harness/tasks/_template/` — scaffold template, never moved.
|
|
13
|
+
- `Harness/tasks/auto/` — WF-AUTO permanent state capsule, never moved unless explicitly allowed by WF-AUTO docs.
|
|
14
|
+
- `Harness/tasks/_archive/` — the archive directory itself.
|
|
15
|
+
- Active, blocked, in-progress, or needs-user-decision tasks.
|
|
16
|
+
- Tasks whose STATE.json status is `active`, `blocked`, `in_progress`, `running`, `pending`, or `needs-user-decision`.
|
|
17
|
+
|
|
18
|
+
## What May Be Archived
|
|
19
|
+
|
|
20
|
+
Tasks whose STATE.json or PROGRESS.md status is: `complete`, `verified`, `archived`, `abandoned`, `obsolete`, `done`, `closed`, or `closeout`.
|
|
21
|
+
|
|
22
|
+
The script reads STATE.json `status`/`phase` first, then falls back to the first `- Phase:`, `Phase:`, or `Current:` marker in the task's PROGRESS.md (first word wins). Ambiguous phases are never auto-archived.
|
|
23
|
+
|
|
24
|
+
## Archive Process
|
|
25
|
+
|
|
26
|
+
1. Verify the task is not active/blocked.
|
|
27
|
+
2. Ensure `Harness/tasks/_archive/YYYY/` exists.
|
|
28
|
+
3. Move `Harness/tasks/<task-id>/` → `Harness/tasks/_archive/YYYY/<task-id>/`.
|
|
29
|
+
4. Update the moved STATE.json: `status` → `archived`, `phase` → `archived`.
|
|
30
|
+
5. Update `Harness/tasks/_archive/INDEX.md`.
|
|
31
|
+
6. Update `Harness/PROGRESS.md` Task Index — remove or annotate `(archived)`.
|
|
32
|
+
|
|
33
|
+
## Retention
|
|
34
|
+
|
|
35
|
+
- Archived tasks retain: PLAN, PROGRESS, STATE, ARTIFACTS, NOTES.
|
|
36
|
+
- Do NOT delete historical evidence.
|
|
37
|
+
- `Harness/PROGRESS.md` keeps the last 5 non-archived task entries in the Task Index.
|
|
38
|
+
- When outer task capsules exceed 5 completed/abandoned/obsolete, archive the oldest.
|
|
39
|
+
- The validator (`Harness/scripts/validate-harness.mjs`) warns when `Harness/tasks/` holds more than 5 outer task capsules (excluding `_archive`, `_template`, `auto`) and fails in `--strict` mode.
|
|
40
|
+
|
|
41
|
+
## Script
|
|
42
|
+
|
|
43
|
+
Use `Harness/scripts/archive-tasks.mjs`:
|
|
44
|
+
- Default: dry-run
|
|
45
|
+
- `--apply` to execute
|
|
46
|
+
- `--keep 5` to set the non-archived task threshold
|
|
47
|
+
- `--task <task-id>` to archive a specific task
|
|
48
|
+
- `--json` for machine-readable output
|
|
49
|
+
- `node Harness/scripts/archive-tasks.mjs --dry-run --json` must always run
|
|
50
|
+
|
|
51
|
+
## Safety Rules
|
|
52
|
+
|
|
53
|
+
- Windows path safe. Use `path.resolve()` before moving.
|
|
54
|
+
- Confirm target is within `Harness/tasks/` before any move.
|
|
55
|
+
- Do NOT recursively delete.
|
|
56
|
+
- Tasks with `needs-user-decision` status are never auto-archived.
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# WF-AUTO Adaptive Coverage Protocol
|
|
2
|
+
|
|
3
|
+
`wf-auto` does not need a permanent number of angles. It needs enough
|
|
4
|
+
independent evidence to discover a valuable next change without repeatedly
|
|
5
|
+
scanning irrelevant surfaces.
|
|
6
|
+
|
|
7
|
+
## Design goals
|
|
8
|
+
|
|
9
|
+
- Select probes from evidence, not from a fixed checklist.
|
|
10
|
+
- Keep safety and user intent visible in every cycle.
|
|
11
|
+
- Spend more context on risky or recently changed areas.
|
|
12
|
+
- Record skipped probes and the reason they were skipped.
|
|
13
|
+
- Stop only after the relevant coverage obligations are satisfied and two
|
|
14
|
+
different confirmation passes produce no actionable finding.
|
|
15
|
+
|
|
16
|
+
## Probe catalog
|
|
17
|
+
|
|
18
|
+
The catalog is extensible. These are probe families, not mandatory agents:
|
|
19
|
+
|
|
20
|
+
| Probe | Primary question | Trigger signals |
|
|
21
|
+
|---|---|---|
|
|
22
|
+
| Goal / value | Is this change still moving the project toward the user's outcome? | user goal, roadmap, product behavior, repeated scope drift |
|
|
23
|
+
| Context / memory quality | Does the agent receive the right context at the right time without noise or loss? | long tasks, repeated rediscovery, oversized prompts, stale memory |
|
|
24
|
+
| Correctness / safety | Can the change be wrong, destructive, or inconsistent? | changed logic, state transitions, file writes, data mutations |
|
|
25
|
+
| Security / privacy | Can an attacker or accidental disclosure exploit this path? | auth, permissions, input, secrets, network, personal data |
|
|
26
|
+
| Reliability / recovery | What happens on timeout, interruption, retry, partial failure, or restart? | external calls, queues, persistence, background work, flaky tests |
|
|
27
|
+
| Performance / cost | Is time, memory, token, I/O, or bundle cost becoming material? | hot paths, large data, repeated scans, slow tests, cost evidence |
|
|
28
|
+
| Architecture / changeability | Will this make the next change harder or violate boundaries? | new dependency, cross-layer edit, duplicated state, large diff |
|
|
29
|
+
| Test / verification | Is the claimed behavior actually checked with the right evidence? | new behavior, changed acceptance criteria, weak or missing tests |
|
|
30
|
+
| Evaluation / outcome quality | Can we tell whether the agent or product actually improved? | AI behavior, subjective output, benchmark drift, vague success claims |
|
|
31
|
+
| Maintainability | Will a future maintainer understand and safely change this? | duplication, dead code, naming, stale comments, complex functions |
|
|
32
|
+
| UX / DX / observability | Can a user or developer understand, operate, and diagnose it? | CLI/API changes, errors, docs, logs, metrics, browser-visible flow |
|
|
33
|
+
| Dependency / ecosystem | Is an external assumption stale, unsafe, or unnecessarily costly? | package changes, deprecations, API version changes, external research |
|
|
34
|
+
|
|
35
|
+
Add a probe when the project domain requires it. Do not force every project to
|
|
36
|
+
run every probe.
|
|
37
|
+
|
|
38
|
+
## Selection algorithm
|
|
39
|
+
|
|
40
|
+
At the start of every W0 cycle, the CEO builds a project profile from the
|
|
41
|
+
repository, task capsule, recent diff, failures, and user direction. For each
|
|
42
|
+
candidate probe, score these signals from 0 to 5:
|
|
43
|
+
|
|
44
|
+
```text
|
|
45
|
+
priority =
|
|
46
|
+
0.30 * risk
|
|
47
|
+
+ 0.25 * changeRelevance
|
|
48
|
+
+ 0.20 * evidenceGap
|
|
49
|
+
+ 0.15 * expectedUserValue
|
|
50
|
+
+ 0.10 * novelty
|
|
51
|
+
- 0.10 * scanCost
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
The score is a ranking aid, not a claim of mathematical precision. The CEO
|
|
55
|
+
must record the evidence behind the top scores.
|
|
56
|
+
|
|
57
|
+
Select probes until one of these conditions is met:
|
|
58
|
+
|
|
59
|
+
1. all high-risk obligations are covered;
|
|
60
|
+
2. the next probe's expected value is below the scan-cost threshold;
|
|
61
|
+
3. the cycle context budget is spent; or
|
|
62
|
+
4. the selected probes have overlapping scope and the next one adds no new
|
|
63
|
+
coverage.
|
|
64
|
+
|
|
65
|
+
Every cycle includes the two guardrails **Goal / value** and
|
|
66
|
+
**Correctness / safety**, unless the CEO records why a project has no relevant
|
|
67
|
+
user outcome or executable behavior. Other probes are conditional. A normal
|
|
68
|
+
low-risk cycle may use only a few probes; a dependency, security, data, or
|
|
69
|
+
production incident cycle should select more.
|
|
70
|
+
|
|
71
|
+
## Dynamic obligations
|
|
72
|
+
|
|
73
|
+
The project profile creates obligations instead of a fixed angle count:
|
|
74
|
+
|
|
75
|
+
| Evidence in the project | Required probe families |
|
|
76
|
+
|---|---|
|
|
77
|
+
| Auth, permissions, secrets, personal data | Security / privacy + Correctness / safety |
|
|
78
|
+
| Database, queue, filesystem, network, background jobs | Reliability / recovery + Correctness / safety |
|
|
79
|
+
| Public API, CLI, SDK, schema, or config contract | Goal / value + Test / verification + UX / DX |
|
|
80
|
+
| Hot path, large data, slow suite, cost complaint | Performance / cost + Test / verification |
|
|
81
|
+
| Cross-layer or dependency-boundary change | Architecture / changeability + Correctness / safety |
|
|
82
|
+
| Browser-visible behavior | UX / DX / observability + Test / verification + real browser evidence |
|
|
83
|
+
| Documentation-only change | Goal / value + UX / DX / observability; skip code probes unless triggered |
|
|
84
|
+
|
|
85
|
+
If multiple rows match, merge their obligations and deduplicate overlapping
|
|
86
|
+
probes. A skipped obligation must have a reason in the cycle ledger.
|
|
87
|
+
|
|
88
|
+
## Common probe recipes
|
|
89
|
+
|
|
90
|
+
These recipes are starting points, not another fixed checklist. Select only the
|
|
91
|
+
probes supported by the current evidence:
|
|
92
|
+
|
|
93
|
+
| Project or change type | Start with | Add when triggered |
|
|
94
|
+
|---|---|---|
|
|
95
|
+
| Web app / API | Goal / value, Correctness / safety, Test / verification, UX / DX | Security for auth/input; Reliability for external calls; Performance for hot paths |
|
|
96
|
+
| CLI / SDK / public package | Goal / value, contract compatibility, UX / DX, Test / verification | Dependency for version changes; Maintainability for API surface growth |
|
|
97
|
+
| AI agent / workflow system | Goal / value, Context quality, Correctness / safety, Evaluation / verification | Security for tool access; Cost for token/tool growth; Recovery for long-running state |
|
|
98
|
+
| Data pipeline / async jobs | Correctness / safety, Reliability / recovery, Test / verification | Performance for volume; Security for sensitive data; Observability for production diagnosis |
|
|
99
|
+
| Documentation / README / growth copy | Goal / value, UX / DX / discoverability, factuality, link integrity | Dependency for install commands; Accessibility for rendered UI or diagrams |
|
|
100
|
+
|
|
101
|
+
For an AI agent repository, **context quality**, **tool safety**, **evaluation**,
|
|
102
|
+
and **recovery** are usually more valuable than a generic maintainability scan.
|
|
103
|
+
For a docs-only change, do not spend a cycle pretending to optimize algorithmic
|
|
104
|
+
performance.
|
|
105
|
+
|
|
106
|
+
## Scan strategies
|
|
107
|
+
|
|
108
|
+
Confirmation passes must change the search strategy, not merely repeat the same
|
|
109
|
+
prompt:
|
|
110
|
+
|
|
111
|
+
- **Breadth** — map affected modules, interfaces, tests, and user paths.
|
|
112
|
+
- **Depth** — trace one high-risk path from input to observable outcome.
|
|
113
|
+
- **Change-first** — inspect the latest diff, failures, and touched boundaries.
|
|
114
|
+
- **Failure-first** — start from flaky tests, incidents, TODOs, and user reports.
|
|
115
|
+
- **Contract-first** — compare behavior against PRD, acceptance criteria, API,
|
|
116
|
+
CLI, or documentation promises.
|
|
117
|
+
|
|
118
|
+
Rotate strategies when a pass is empty. Re-run a probe when its confidence is
|
|
119
|
+
below 0.8 or its relevant surface coverage is below 80%.
|
|
120
|
+
|
|
121
|
+
## Exhaustion gate
|
|
122
|
+
|
|
123
|
+
The A-GATE is evidence-based:
|
|
124
|
+
|
|
125
|
+
1. all dynamic high-risk obligations for the current project profile are
|
|
126
|
+
covered;
|
|
127
|
+
2. every selected probe returns structured findings, confidence, and surface
|
|
128
|
+
coverage;
|
|
129
|
+
3. no selected probe has an actionable finding above the current value gate;
|
|
130
|
+
4. two confirmation passes use different strategies and produce no new
|
|
131
|
+
actionable finding; and
|
|
132
|
+
5. the CEO records unresolved uncertainty, skipped probes, and why oracle or
|
|
133
|
+
spark search was or was not needed.
|
|
134
|
+
|
|
135
|
+
The cross-model oracle is triggered by unresolved high-risk uncertainty or a
|
|
136
|
+
borderline exhaustion result. Spark search is triggered by a genuine value gap,
|
|
137
|
+
not merely because a catalog was empty. This prevents both premature stopping
|
|
138
|
+
and pointless full-tree scanning.
|
|
139
|
+
|
|
140
|
+
## Cycle ledger
|
|
141
|
+
|
|
142
|
+
Each W0 entry records compact JSON-like evidence:
|
|
143
|
+
|
|
144
|
+
```text
|
|
145
|
+
profile: web-api + public-auth + recent-db-change
|
|
146
|
+
goal: reduce failed checkout recovery time
|
|
147
|
+
selected: correctness/safety, reliability/recovery, security/privacy, test/verification
|
|
148
|
+
skipped: performance/cost (no hot-path signal); dependency/ecosystem (no dependency change)
|
|
149
|
+
strategy: change-first
|
|
150
|
+
coverage: 0.92
|
|
151
|
+
findings: 2
|
|
152
|
+
next: reliability finding, priority 4.3/5
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
The ledger makes angle choice explainable, lets the next cycle avoid duplicate
|
|
156
|
+
work, and gives `/wf-review` or the user enough evidence to challenge the
|
|
157
|
+
selection.
|
|
158
|
+
|
|
159
|
+
## User controls
|
|
160
|
+
|
|
161
|
+
Users can steer selection in natural language without learning hidden flags:
|
|
162
|
+
|
|
163
|
+
```text
|
|
164
|
+
/wf-auto 重点优化安全和数据恢复,忽略没有证据支持的性能优化
|
|
165
|
+
/wf-auto 只关注 CLI 易用性、文档和错误提示
|
|
166
|
+
/wf-auto 先扫描最近改动和失败测试,再决定本轮分析探针
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
The agent must treat these as priorities, not permission to skip safety or
|
|
170
|
+
verification for a change that can affect data or production behavior.
|
|
@@ -4,34 +4,25 @@
|
|
|
4
4
|
|
|
5
5
|
## Trigger
|
|
6
6
|
|
|
7
|
-
- User explicitly invokes `/wf-auto-spark
|
|
7
|
+
- User explicitly invokes `/wf-auto-spark`, `$wf-auto-spark`, or `/skills wf-auto-spark`
|
|
8
8
|
- Auto-degrade from `/wf-auto` when user can't clarify direction at Re-Anchor Gate
|
|
9
|
-
- Auto-activate when
|
|
9
|
+
- Auto-activate when adaptive internal coverage returns empty for 3+ consecutive cycles AND oracle also empty
|
|
10
|
+
|
|
11
|
+
Note: Natural-language phrases like "spark mode", "external inspiration", "discover mode", "never stop" are NOT triggers — only explicit command tokens or documented auto-degrade/auto-activate paths from inside WF-AUTO enter WF-AUTO-SPARK.
|
|
10
12
|
|
|
11
13
|
## Core Philosophy
|
|
12
14
|
|
|
13
15
|
**"Inspiration never runs dry, but direction must hold."**
|
|
14
16
|
|
|
15
|
-
Spark mode replaces the
|
|
17
|
+
Spark mode replaces the adaptive internal probe scan with EXTERNAL inspiration search. Unlike vanilla `/wf-auto` which can stop when no internal improvements are found, spark mode NEVER stops — it always looks outward for the next idea.
|
|
16
18
|
|
|
17
19
|
But perpetual search without direction = drift. The **Roadmap** is the anchor.
|
|
18
20
|
|
|
19
21
|
## Inherited Execution Chain
|
|
20
22
|
|
|
21
|
-
WF-AUTO-SPARK inherits WF-AUTO and WF constraints. External spark search replaces discovery only; it does not replace acceptance, implementation, review, verification, reflection, or evidence.
|
|
22
|
-
|
|
23
|
-
Every accepted spark candidate must re-enter the same per-cycle chain:
|
|
24
|
-
|
|
25
|
-
```text
|
|
26
|
-
spark search -> Value Gate -> deviation check -> Mini PRD -> AC IDs
|
|
27
|
-
-> test/validation plan -> implementer -> verifier -> cross-review
|
|
28
|
-
-> reflector PASS -> evidence ledger -> next spark cycle
|
|
29
|
-
```
|
|
23
|
+
WF-AUTO-SPARK is a `/wf` variant layered on WF-AUTO: it inherits the WF-KERNEL contract via WF-AUTO and WF constraints, and does not define an independent heavy process. External spark search replaces discovery only; it does not replace acceptance, implementation, review, verification, reflection, or evidence.
|
|
30
24
|
|
|
31
|
-
Spark searchers are read-only. Any implementation must use the dispatch packet
|
|
32
|
-
from `Harness/dispatch.md` with explicit write set, forbidden truth files, AC
|
|
33
|
-
IDs, and verification commands. A candidate with no verifier evidence or no
|
|
34
|
-
reflector PASS is not accepted, even if the idea is valuable.
|
|
25
|
+
Accepted spark candidates re-enter the standard W2-W5 gates per [WF-KERNEL.md](WF-KERNEL.md): implementer (one file_claim, ≤3 files, ≤50 lines), verifier, reviewer(s), reflector. Spark searchers are read-only. Any implementation must use the dispatch packet from `Harness/dispatch.md` with explicit write set, forbidden truth files, AC IDs, and verification commands. A candidate with no verifier evidence or no reflector PASS is not accepted, even if the idea is valuable.
|
|
35
26
|
|
|
36
27
|
## Startup: Roadmap Declaration
|
|
37
28
|
|
|
@@ -77,7 +68,7 @@ Answers: "What does success look like in 6-12 months?">
|
|
|
77
68
|
STARTUP: Declare roadmap (North Star + Milestones) → user confirms
|
|
78
69
|
↓
|
|
79
70
|
┌─────────────────────────────────────────────────────────┐
|
|
80
|
-
│ SPARK:
|
|
71
|
+
│ SPARK: parallel external searches → gather sparks │
|
|
81
72
|
│ ↓ │
|
|
82
73
|
│ FILTER: Keep only sparks relevant to project stack/size │
|
|
83
74
|
│ ↓ │
|
|
@@ -207,14 +198,14 @@ If CEO CANNOT write a convincing value reflection → spark was NOT valuable →
|
|
|
207
198
|
| SP3 | **Copycat without context** | "Project X does Y so we should too" | Value Gate question 1 |
|
|
208
199
|
| SP4 | **Silent North Star drift** | Small changes accumulate, direction shifts without noticing | Cumulative deviation check every 10 cycles |
|
|
209
200
|
| SP5 | **Milestone rot** | Milestones become irrelevant but aren't updated | Milestone review at Re-Anchor Gate |
|
|
210
|
-
| SP6 | **Spark tunnel vision** | Only looking at one type of source | Rotate through
|
|
201
|
+
| SP6 | **Spark tunnel vision** | Only looking at one type of source | Rotate through the registered source families and record skipped sources |
|
|
211
202
|
|
|
212
203
|
## Integration with /wf-auto
|
|
213
204
|
|
|
214
205
|
```text
|
|
215
206
|
/wf-auto (autonomous optimization)
|
|
216
207
|
↓
|
|
217
|
-
Internal
|
|
208
|
+
Internal adaptive coverage scan per cycle
|
|
218
209
|
↓
|
|
219
210
|
Re-Anchor Gate (every preset interval)
|
|
220
211
|
├── User gives clear direction → refine, continue /wf-auto
|