@weave-tools/weave-it 0.1.0
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/LICENSE +21 -0
- package/README.md +868 -0
- package/dist/cli.d.ts +5 -0
- package/dist/cli.js +4538 -0
- package/dist/cli.js.map +1 -0
- package/package.json +65 -0
- package/templates/opencode/commands/weave-architect.md +7 -0
- package/templates/opencode/commands/weave-capture.md +7 -0
- package/templates/opencode/commands/weave-clarify.md +7 -0
- package/templates/opencode/commands/weave-execute.md +7 -0
- package/templates/opencode/commands/weave-explore.md +7 -0
- package/templates/opencode/commands/weave-issues.md +7 -0
- package/templates/opencode/commands/weave-knowledge.md +7 -0
- package/templates/opencode/commands/weave-new.md +7 -0
- package/templates/opencode/commands/weave-next.md +7 -0
- package/templates/opencode/commands/weave-prd.md +7 -0
- package/templates/opencode/commands/weave-prepare.md +7 -0
- package/templates/skills/weave-architect/SKILL.md +291 -0
- package/templates/skills/weave-architect/api-contract-template.md +21 -0
- package/templates/skills/weave-architect/frontend-backend-template.md +21 -0
- package/templates/skills/weave-architect/index-template.md +24 -0
- package/templates/skills/weave-architect/schema-template.md +21 -0
- package/templates/skills/weave-capture/SKILL.md +398 -0
- package/templates/skills/weave-clarify/SKILL.md +513 -0
- package/templates/skills/weave-execute/SKILL.md +215 -0
- package/templates/skills/weave-explore/SKILL.md +434 -0
- package/templates/skills/weave-issues/SKILL.md +441 -0
- package/templates/skills/weave-knowledge/SKILL.md +161 -0
- package/templates/skills/weave-knowledge/knowledge-templates.md +63 -0
- package/templates/skills/weave-new/SKILL.md +76 -0
- package/templates/skills/weave-next/SKILL.md +216 -0
- package/templates/skills/weave-prd/SKILL.md +419 -0
- package/templates/skills/weave-prd/prd-template.md +186 -0
- package/templates/skills/weave-prepare/SKILL.md +94 -0
|
@@ -0,0 +1,513 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: weave-clarify
|
|
3
|
+
description: Clarify and revise one existing Weave change artifact without advancing the workflow. Use when scope, requirements, assumptions, or decisions change midstream and an existing exploration.md, prd.md, or architecture.md needs amendment.
|
|
4
|
+
last_changed_in: 0.1.0
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Weave Clarify
|
|
8
|
+
|
|
9
|
+
This skill refines one existing Weave change artifact without advancing the change workflow.
|
|
10
|
+
|
|
11
|
+
Use it when the user needs to amend `exploration.md`, `prd.md`, or `architecture.md` because scope changed, requirements changed, an assumption needs confirmation, or a previous requirement is no longer valid.
|
|
12
|
+
|
|
13
|
+
This is not a generation skill. Do not create a new change, create issues, generate a PRD from scratch, generate architecture from scratch, or cascade-update multiple artifacts.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Operating Principles
|
|
18
|
+
|
|
19
|
+
- Treat the selected target artifact as the only write target.
|
|
20
|
+
- Read supporting artifacts only for context.
|
|
21
|
+
- Ask focused clarification questions before writing when the change is ambiguous or materially affects scope, user behavior, technical direction, acceptance, or follow-up artifacts.
|
|
22
|
+
- Preserve still-valid content.
|
|
23
|
+
- Do not silently delete old requirements, decisions, constraints, or risks.
|
|
24
|
+
- Record superseded, removed, or narrowed scope explicitly.
|
|
25
|
+
- Report likely follow-up artifacts instead of editing them automatically.
|
|
26
|
+
- After writing the selected artifact, update lifecycle state with `weave change progress <target> --json`.
|
|
27
|
+
- Do not hand-edit `status.yml`; lifecycle state is owned by the CLI.
|
|
28
|
+
- Do not run autonomous or internal auto mode. V1 is user-invoked and interactive only.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
# Resolve Context
|
|
33
|
+
|
|
34
|
+
Start by discovering the current Weave session:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
weave workspace --json
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Use the cwd-dispatched workspace or repo context returned by `weave workspace --json` as the boundary for context loading. In workspace mode, the workspace root owns the change store and registered sub-repos in `repos[]` are implementation locations inside that single context. In repo mode, the active session's folders are the boundary.
|
|
41
|
+
|
|
42
|
+
Resolve the target change:
|
|
43
|
+
|
|
44
|
+
1. If the user provided a change id, slug, title fragment, or other change hint, run:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
weave change status "<change-hint>" --json
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
2. Otherwise, run:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
weave change current --json
|
|
54
|
+
weave change status --json
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
If no active or hinted change can be resolved, stop and say:
|
|
58
|
+
|
|
59
|
+
```text
|
|
60
|
+
No active Weave change found. Run `weave change new` or `weave change switch`, then run `weave-clarify` again.
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Identify the change folder under the resolved workspace or repo context:
|
|
64
|
+
|
|
65
|
+
```text
|
|
66
|
+
wiki/changes/<change-id>/
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
In workspace mode there is one change context: the workspace root. In repo mode, do not assume every session folder is relevant; use the resolved change status and available artifacts to identify which contexts apply.
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
# Workspace Repo Context For Clarification
|
|
74
|
+
|
|
75
|
+
In workspace mode, treat `workspace.path` as the single artifact root. Registered `repos[]` entries are available as implementation and documentation context, not separate artifact targets.
|
|
76
|
+
|
|
77
|
+
`weave-clarify` is not a broad discovery skill. Do not inventory or inspect every registered repo by default.
|
|
78
|
+
|
|
79
|
+
Inspect sub-repos only when the clarification depends on repo-local truth, such as:
|
|
80
|
+
|
|
81
|
+
- the selected artifact references a repo, module, API, schema, job, migration, test, doc, or ADR
|
|
82
|
+
- the user names a repo or implementation area
|
|
83
|
+
- the clarification changes technical direction, acceptance behavior, permissions, rollout, or integration boundaries
|
|
84
|
+
- architecture facet restructuring depends on where responsibilities actually live
|
|
85
|
+
|
|
86
|
+
When sub-repo context is needed, prefer repo-local docs, knowledge, specs, ADRs, and prior changes before implementation code. Use code and tests to verify important claims.
|
|
87
|
+
|
|
88
|
+
Keep inspection narrowly scoped to the selected artifact and the clarification requested. Do not use `weave-clarify` to perform broad product discovery or architecture exploration; recommend `weave-explore` or `weave-architect` when the required context is broad or uncertain.
|
|
89
|
+
|
|
90
|
+
Do not create, read, or update change artifacts under each sub-repo by default. Durable change artifacts remain under:
|
|
91
|
+
|
|
92
|
+
```text
|
|
93
|
+
<workspace.path>/wiki/changes/<change-id>/
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
If repo context influenced the clarification, mention it in the completion response:
|
|
97
|
+
|
|
98
|
+
```text
|
|
99
|
+
Repo context used:
|
|
100
|
+
- Repos inspected:
|
|
101
|
+
- Docs/knowledge read:
|
|
102
|
+
- Code/test anchors read:
|
|
103
|
+
- Repos intentionally skipped:
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
# Target Artifact
|
|
109
|
+
|
|
110
|
+
Supported target artifacts:
|
|
111
|
+
|
|
112
|
+
```text
|
|
113
|
+
exploration
|
|
114
|
+
prd
|
|
115
|
+
architecture
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Accept common filenames as aliases:
|
|
119
|
+
|
|
120
|
+
```text
|
|
121
|
+
exploration.md -> exploration
|
|
122
|
+
prd.md -> prd
|
|
123
|
+
architecture.md -> architecture
|
|
124
|
+
architecture/index.md -> architecture
|
|
125
|
+
architecture/<facet>.md -> architecture
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
If the user provides a target artifact, clarify only that artifact.
|
|
129
|
+
|
|
130
|
+
If the user does not provide a target artifact:
|
|
131
|
+
|
|
132
|
+
1. Read the available active change artifacts.
|
|
133
|
+
2. Identify which supported artifacts appear affected by the user's clarification.
|
|
134
|
+
3. Ask the user which single artifact to clarify first.
|
|
135
|
+
4. Do not write anything until the user selects one target.
|
|
136
|
+
|
|
137
|
+
If multiple artifacts are affected, still update only the selected artifact in this invocation. Report the others as follow-up targets in the completion response.
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
# Required Read Order
|
|
142
|
+
|
|
143
|
+
For each relevant change folder, read files in this order.
|
|
144
|
+
|
|
145
|
+
## 1. Target Artifact
|
|
146
|
+
|
|
147
|
+
Read the selected target first:
|
|
148
|
+
|
|
149
|
+
```text
|
|
150
|
+
wiki/changes/<change-id>/exploration.md
|
|
151
|
+
wiki/changes/<change-id>/prd.md
|
|
152
|
+
wiki/changes/<change-id>/architecture.md
|
|
153
|
+
wiki/changes/<change-id>/architecture/index.md
|
|
154
|
+
wiki/changes/<change-id>/architecture/*.md
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
For architecture, resolve artifact shape before reading:
|
|
158
|
+
|
|
159
|
+
- Legacy file mode: `architecture.md` exists and `architecture/` does not.
|
|
160
|
+
- Folder mode: `architecture/` exists and may contain `index.md` plus direct child facet files.
|
|
161
|
+
- Conflict mode: both `architecture.md` and `architecture/` exist. Stop before editing and ask whether to keep legacy file mode, migrate to folder mode, or reconcile by hand.
|
|
162
|
+
- Missing mode: neither exists. Stop with the architecture missing message.
|
|
163
|
+
|
|
164
|
+
If the selected target does not exist, stop with the relevant message:
|
|
165
|
+
|
|
166
|
+
```text
|
|
167
|
+
No exploration.md found for <change-id>. Run `weave-explore` or `weave-capture` first, then run `weave-clarify exploration`.
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
```text
|
|
171
|
+
No prd.md found for <change-id>. Run `weave-prd` first, then run `weave-clarify prd`.
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
```text
|
|
175
|
+
No architecture artifact found for <change-id>. Run `weave-architect` and `weave-capture` first, then run `weave-clarify architecture`.
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
## 2. Supporting Artifacts
|
|
179
|
+
|
|
180
|
+
Read supporting artifacts when present:
|
|
181
|
+
|
|
182
|
+
```text
|
|
183
|
+
wiki/changes/<change-id>/status.yml
|
|
184
|
+
wiki/changes/<change-id>/exploration.md
|
|
185
|
+
wiki/changes/<change-id>/prd.md
|
|
186
|
+
wiki/changes/<change-id>/architecture.md
|
|
187
|
+
wiki/changes/<change-id>/architecture/index.md
|
|
188
|
+
wiki/changes/<change-id>/architecture/*.md
|
|
189
|
+
wiki/changes/<change-id>/decisions.md
|
|
190
|
+
wiki/changes/<change-id>/contracts.md
|
|
191
|
+
wiki/changes/<change-id>/handoff.md
|
|
192
|
+
wiki/changes/<change-id>/implementation.md
|
|
193
|
+
wiki/changes/<change-id>/tasks.md
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
Do not reread the target artifact twice unless needed. Use supporting artifacts to understand context, conflicts, and follow-up impact.
|
|
197
|
+
|
|
198
|
+
## 3. Target Resume Context
|
|
199
|
+
|
|
200
|
+
Read relevant session files for the selected target when present:
|
|
201
|
+
|
|
202
|
+
```text
|
|
203
|
+
wiki/changes/<change-id>/sessions/*-exploration.md
|
|
204
|
+
wiki/changes/<change-id>/sessions/*-prd.md
|
|
205
|
+
wiki/changes/<change-id>/sessions/*-architecture.md
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
Only load session files that match the selected target artifact, newest-first.
|
|
209
|
+
|
|
210
|
+
Rules:
|
|
211
|
+
|
|
212
|
+
- Read the selected live artifact before session notes. The live artifact is canonical current truth.
|
|
213
|
+
- Use the latest `## Next Resume Point`, unresolved points, user preferences, and agent recommendations as clarification context.
|
|
214
|
+
- Use older matching session files only when needed to understand rationale or unresolved decisions.
|
|
215
|
+
- If session notes conflict with the selected live artifact, prefer the live artifact unless the latest session records an explicit newer user decision.
|
|
216
|
+
- If the user gives an explicit clarification instruction, follow it over the stored resume point.
|
|
217
|
+
|
|
218
|
+
## 4. Knowledge Context
|
|
219
|
+
|
|
220
|
+
Read Weave knowledge files when present:
|
|
221
|
+
|
|
222
|
+
```text
|
|
223
|
+
wiki/knowledge/index.md
|
|
224
|
+
wiki/knowledge/README.md
|
|
225
|
+
wiki/knowledge/domains/**/index.md
|
|
226
|
+
wiki/knowledge/domains/**/features/**/behavior.md
|
|
227
|
+
wiki/knowledge/domains/**/domain-wide/**
|
|
228
|
+
wiki/knowledge/shared/**/behavior.md
|
|
229
|
+
wiki/knowledge/**/source-map.md
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
Load only knowledge domains that appear relevant to the clarification.
|
|
233
|
+
|
|
234
|
+
## 5. Repo Documentation
|
|
235
|
+
|
|
236
|
+
If Weave knowledge is thin or missing, inspect existing repo documentation for product or technical context:
|
|
237
|
+
|
|
238
|
+
```text
|
|
239
|
+
CONTEXT.md
|
|
240
|
+
CONTEXT-MAP.md
|
|
241
|
+
README.md
|
|
242
|
+
docs/
|
|
243
|
+
docs/adr/
|
|
244
|
+
adr/
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
Use repo documentation only to clarify current behavior, terminology, constraints, or architecture context.
|
|
248
|
+
|
|
249
|
+
---
|
|
250
|
+
|
|
251
|
+
# Clarification Flow
|
|
252
|
+
|
|
253
|
+
## 1. Classify The Change
|
|
254
|
+
|
|
255
|
+
Classify the user's clarification as one or more of:
|
|
256
|
+
|
|
257
|
+
- scope expansion
|
|
258
|
+
- scope reduction
|
|
259
|
+
- superseded requirement or decision
|
|
260
|
+
- assumption confirmation
|
|
261
|
+
- ambiguity resolution
|
|
262
|
+
- technical direction change
|
|
263
|
+
- architecture facet restructuring
|
|
264
|
+
- follow-up artifact staleness
|
|
265
|
+
|
|
266
|
+
If the clarification appears to describe a substantially different change, stop and ask for explicit confirmation before repurposing the active change artifact.
|
|
267
|
+
|
|
268
|
+
## 2. Ask Blocking Questions
|
|
269
|
+
|
|
270
|
+
Ask questions only when the answer affects:
|
|
271
|
+
|
|
272
|
+
- product scope
|
|
273
|
+
- user behavior
|
|
274
|
+
- permissions or access
|
|
275
|
+
- acceptance criteria
|
|
276
|
+
- technical direction
|
|
277
|
+
- implementation risk
|
|
278
|
+
- artifact consistency
|
|
279
|
+
- whether the active change should be repurposed
|
|
280
|
+
|
|
281
|
+
For each question:
|
|
282
|
+
|
|
283
|
+
- explain why it matters
|
|
284
|
+
- provide a recommended answer when there is a clear default
|
|
285
|
+
- describe the tradeoff briefly
|
|
286
|
+
- wait for the user's answer before writing
|
|
287
|
+
|
|
288
|
+
If no blocking questions remain, proceed with the clarification using the available context.
|
|
289
|
+
|
|
290
|
+
## 3. Update Only The Selected Artifact
|
|
291
|
+
|
|
292
|
+
Write only the selected target artifact.
|
|
293
|
+
|
|
294
|
+
Do not edit follow-up artifacts in the same invocation, even when they are stale.
|
|
295
|
+
|
|
296
|
+
For architecture folder mode, "selected artifact" means the architecture lane. You may edit `architecture/index.md` and direct child facet files in one invocation only when the user's clarification is explicitly structural within the architecture lane.
|
|
297
|
+
|
|
298
|
+
Supported architecture structural operations:
|
|
299
|
+
|
|
300
|
+
- create facet: add `architecture/<facet>.md` when the user explicitly asks for a separate facet or a template-backed facet is clearly requested
|
|
301
|
+
- split facet: move a coherent concern from `index.md`, `architecture.md`, or another facet into a new facet file
|
|
302
|
+
- merge facets: combine two or more facet files and remove the superseded facet only after preserving still-valid content
|
|
303
|
+
- rename facet: move `architecture/<old>.md` to `architecture/<new>.md` and update references in `index.md`
|
|
304
|
+
- delete facet: remove a facet only when the user explicitly confirms the content is obsolete or preserved elsewhere
|
|
305
|
+
- move content: relocate content between `index.md` and facets without changing its meaning
|
|
306
|
+
- update index: keep `architecture/index.md` as the canonical overview and facet map
|
|
307
|
+
|
|
308
|
+
Legacy migration:
|
|
309
|
+
|
|
310
|
+
- If the user asks to split or introduce facets while only `architecture.md` exists, migrate to folder mode by creating `architecture/index.md` from the legacy file and then creating/updating facets.
|
|
311
|
+
- Preserve legacy lifecycle frontmatter in `architecture/index.md`.
|
|
312
|
+
- Remove `architecture.md` only after `architecture/index.md` and any facets contain the preserved content and the user intent clearly implies migration.
|
|
313
|
+
- If migration intent is unclear, ask before moving or deleting the legacy file.
|
|
314
|
+
|
|
315
|
+
When updating:
|
|
316
|
+
|
|
317
|
+
- preserve still-valid content
|
|
318
|
+
- Preserve existing artifact lifecycle frontmatter; if the selected artifact has no frontmatter, add compatible lifecycle frontmatter using UTC ISO timestamps for `created_at` and `updated_at`.
|
|
319
|
+
- update current behavior or proposed behavior to reflect the latest decision
|
|
320
|
+
- move removed scope to `Non-Goals` or `Out of Scope` where appropriate
|
|
321
|
+
- record superseded requirements or decisions in `Revision History`, `Assumptions`, `Open Questions`, or an artifact-specific notes section
|
|
322
|
+
- add unresolved decisions to the artifact's open-question section
|
|
323
|
+
- keep the artifact understandable without the conversation history
|
|
324
|
+
|
|
325
|
+
## 4. Report Follow-Up Artifacts
|
|
326
|
+
|
|
327
|
+
After writing the selected artifact, identify other supported artifacts that may need clarification:
|
|
328
|
+
|
|
329
|
+
- If `exploration.md` changed and `prd.md` exists, report `prd.md` as a likely follow-up when product behavior, scope, requirements, or acceptance changed.
|
|
330
|
+
- If `prd.md` changed and `status.yml.artifacts.architecture.sources` includes `prd`, report the architecture artifact as a likely follow-up when technical design, rollout, risks, or tests may be stale.
|
|
331
|
+
- If the architecture artifact changed and issue/task evidence depends on `architecture`, report issues or `tasks.md` as a likely follow-up when implementation slices may be stale.
|
|
332
|
+
|
|
333
|
+
Do not edit those artifacts. Ask the user to run `weave-clarify <target>` separately for each follow-up artifact.
|
|
334
|
+
|
|
335
|
+
---
|
|
336
|
+
|
|
337
|
+
# Target-Specific Rules
|
|
338
|
+
|
|
339
|
+
## exploration
|
|
340
|
+
|
|
341
|
+
Use `exploration.md` as the target when discovery, scope, scenarios, decisions, or PRD readiness changed.
|
|
342
|
+
|
|
343
|
+
Keep these sections current when present:
|
|
344
|
+
|
|
345
|
+
```text
|
|
346
|
+
Current Understanding
|
|
347
|
+
Open Questions
|
|
348
|
+
Decisions
|
|
349
|
+
Scenarios
|
|
350
|
+
Existing Behavior
|
|
351
|
+
PRD Readiness
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
If the clarification makes the exploration ready or not ready for PRD generation, update `PRD Readiness`.
|
|
355
|
+
|
|
356
|
+
## prd
|
|
357
|
+
|
|
358
|
+
Use `prd.md` as the target when product behavior, user workflows, user stories, requirements, edge cases, acceptance criteria, rollout, assumptions, or open questions changed.
|
|
359
|
+
|
|
360
|
+
Preserve still-valid PRD content. If scope narrowed, move removed behavior to `Non-Goals` or `Out of Scope` instead of silently deleting it.
|
|
361
|
+
|
|
362
|
+
Add a concise dated `Revision History` entry for meaningful changes.
|
|
363
|
+
|
|
364
|
+
## architecture
|
|
365
|
+
|
|
366
|
+
Use the architecture artifact as the target when technical approach, affected systems, data flow, architecture decisions, rejected alternatives, rollout, operations, testing, security, risks, assumptions, open technical questions, or architecture facet structure changed.
|
|
367
|
+
|
|
368
|
+
Prefer `prd.md` as the product contract. If the technical clarification exposes a product ambiguity not settled by the PRD, record it under `Product Questions Raised by Technical Design` and report `prd.md` as a follow-up artifact.
|
|
369
|
+
|
|
370
|
+
Add a concise dated `Revision History` entry for meaningful changes.
|
|
371
|
+
|
|
372
|
+
---
|
|
373
|
+
|
|
374
|
+
# Output Path
|
|
375
|
+
|
|
376
|
+
Write the clarified artifact to exactly one of:
|
|
377
|
+
|
|
378
|
+
```text
|
|
379
|
+
wiki/changes/<change-id>/exploration.md
|
|
380
|
+
wiki/changes/<change-id>/prd.md
|
|
381
|
+
wiki/changes/<change-id>/architecture.md
|
|
382
|
+
wiki/changes/<change-id>/architecture/index.md
|
|
383
|
+
wiki/changes/<change-id>/architecture/*.md
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
Do not write any other files.
|
|
387
|
+
|
|
388
|
+
---
|
|
389
|
+
|
|
390
|
+
# Lifecycle Progress
|
|
391
|
+
|
|
392
|
+
After successfully writing the selected artifact, run the matching lifecycle command:
|
|
393
|
+
|
|
394
|
+
```bash
|
|
395
|
+
weave change progress exploration --source discussion --json
|
|
396
|
+
weave change progress prd --source exploration --source sessions --json
|
|
397
|
+
weave change progress architecture --source prd --source codebase --json
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
Run only the command matching the selected target artifact and pass only sources that actually informed the clarified artifact. If lifecycle progress fails, do not rewrite the clarified artifact just to recover. Report the progress failure in the completion response.
|
|
401
|
+
|
|
402
|
+
---
|
|
403
|
+
|
|
404
|
+
# Completion Response
|
|
405
|
+
|
|
406
|
+
After writing, respond with:
|
|
407
|
+
|
|
408
|
+
```text
|
|
409
|
+
Clarified <target>: wiki/changes/<change-id>/<artifact-path>
|
|
410
|
+
```
|
|
411
|
+
|
|
412
|
+
Then include:
|
|
413
|
+
|
|
414
|
+
```text
|
|
415
|
+
Clarifications applied: <count or concise summary>
|
|
416
|
+
Open questions: <count>
|
|
417
|
+
Follow-up artifacts:
|
|
418
|
+
- <artifact or None>
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
If repo context influenced the clarification, also include:
|
|
422
|
+
|
|
423
|
+
```text
|
|
424
|
+
Repo context used:
|
|
425
|
+
- Repos inspected:
|
|
426
|
+
- Docs/knowledge read:
|
|
427
|
+
- Code/test anchors read:
|
|
428
|
+
- Repos intentionally skipped:
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
If no write was made because the skill needed target selection, confirmation, or answers to blocking questions, say that directly and list what is needed next.
|
|
432
|
+
|
|
433
|
+
---
|
|
434
|
+
|
|
435
|
+
# Silent Weave Command Output
|
|
436
|
+
|
|
437
|
+
Weave skills run Weave CLI commands silently by default. Use command results
|
|
438
|
+
as internal context, not response content.
|
|
439
|
+
|
|
440
|
+
Do not show raw stdout, JSON payloads, command echoes, lifecycle payloads,
|
|
441
|
+
internal state-write confirmations, or verbatim notice text unless the user
|
|
442
|
+
explicitly asks for diagnostic output.
|
|
443
|
+
|
|
444
|
+
Surface only information that changes what the user or agent should do next:
|
|
445
|
+
blockers, failures, missing relevant repos, branch or task outcomes,
|
|
446
|
+
lifecycle failures, package-outdated notices, relevant outdated or modified
|
|
447
|
+
skills, and user-required actions.
|
|
448
|
+
|
|
449
|
+
Notice handling:
|
|
450
|
+
|
|
451
|
+
- `package_outdated`: show only when present. Say exactly:
|
|
452
|
+
`A newer Weave version is available. Run \`weave status\` for details, then upgrade Weave when convenient.`
|
|
453
|
+
- `skills_outdated`: suppress unrelated skills. If the invoked skill is outdated, say:
|
|
454
|
+
`The installed \`<skill-name>\` skill appears older than the bundled template. Run \`weave status\` for details, then \`weave agent update --all\` when you want to refresh installed skills.`
|
|
455
|
+
- `skills_outdated`: if multiple skills used in this workflow are outdated, say:
|
|
456
|
+
`Some installed skills used in this workflow appear older than the bundled templates: \`<skill-a>\`, \`<skill-b>\`. Run \`weave status\` for details, then \`weave agent update --all\` when you want to refresh them.`
|
|
457
|
+
- `skills_modified`: suppress unless the invoked skill is modified locally or the user is asking about skill updates. If the invoked skill is modified, say:
|
|
458
|
+
`The installed \`<skill-name>\` skill has local edits, so its behavior may differ from the bundled template. Run \`weave status\` or \`weave agent diff\` if you want to inspect the difference.`
|
|
459
|
+
- `skills_modified`: if the user asks to update skills and installed skills have local edits, say:
|
|
460
|
+
`Some installed skills have local edits. \`weave agent update\` may skip or protect them; run \`weave status\` or \`weave agent diff\` before updating.`
|
|
461
|
+
|
|
462
|
+
Do not say `Notices: ...`, `The command returned notices`, raw
|
|
463
|
+
`notices[].message`, full notice JSON, or full skill lists unless the user
|
|
464
|
+
asks for diagnostics.
|
|
465
|
+
|
|
466
|
+
---
|
|
467
|
+
|
|
468
|
+
# Lifecycle Staleness Verification
|
|
469
|
+
|
|
470
|
+
Before calling `weave change progress`, verify content-sync of every artifact
|
|
471
|
+
that would otherwise be marked stale by the default pessimistic propagation.
|
|
472
|
+
|
|
473
|
+
The `--source` arguments of `weave change progress` declare causal influence,
|
|
474
|
+
not strict-DAG dependency. Pessimistic staleness propagation is the safe default,
|
|
475
|
+
not the only correct answer. When the clarification this skill just performed is
|
|
476
|
+
narrowly contained (a typo fix, a sentence rewording, an open-question
|
|
477
|
+
resolution), dependents may already be in content sync; flagging them stale
|
|
478
|
+
creates churn the user did not ask for.
|
|
479
|
+
|
|
480
|
+
Procedure:
|
|
481
|
+
|
|
482
|
+
1. Identify the set of structural dependents of the lane being progressed. Read
|
|
483
|
+
`wiki/changes/<change-id>/status.yml` and compute which lanes list this
|
|
484
|
+
lane in their `artifacts.<lane>.sources`.
|
|
485
|
+
2. For each dependent lane, read both the dependent artifact and the artifact
|
|
486
|
+
just being progressed. Decide whether the change you just made invalidates
|
|
487
|
+
the dependent's content. The judgement is binary per lane: invalidates, or
|
|
488
|
+
does not invalidate.
|
|
489
|
+
3. Select the appropriate progress invocation:
|
|
490
|
+
|
|
491
|
+
- Every dependent is invalidated (or there are no dependents):
|
|
492
|
+
`weave change progress <lane> --source <list> --json` (default, no new flags)
|
|
493
|
+
- No dependent is invalidated:
|
|
494
|
+
`weave change progress <lane> --source <list> --no-invalidate --json`
|
|
495
|
+
- Some dependents are invalidated, some are not:
|
|
496
|
+
`weave change progress <lane> --source <list> --invalidate=<comma-list> --json`
|
|
497
|
+
|
|
498
|
+
4. If a previously-stale dependent is now in content sync (because the upstream
|
|
499
|
+
change has been absorbed but the stale flag still lingers from an earlier
|
|
500
|
+
pessimistic propagation), clear it explicitly:
|
|
501
|
+
|
|
502
|
+
`weave change clear-stale <lane> --reason "<one-sentence verification>" --json`
|
|
503
|
+
|
|
504
|
+
Always pass `--reason` so the audit entry in `stale_history` carries the
|
|
505
|
+
verification rationale. Do not clear flags without reading both artifacts.
|
|
506
|
+
|
|
507
|
+
5. Never edit `status.yml` by hand to manipulate stale state. Use the CLI.
|
|
508
|
+
|
|
509
|
+
Failure mode: if you are uncertain whether a dependent is in content sync,
|
|
510
|
+
prefer the pessimistic default (omit `--no-invalidate` and `--invalidate`).
|
|
511
|
+
The user can always run `weave-clarify <lane>` later. A false-positive stale
|
|
512
|
+
flag is recoverable; silently leaving a real downstream artifact mismatched is
|
|
513
|
+
not.
|