aw-ecc 1.4.23 → 1.4.25

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 (73) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/.cursor/INSTALL.md +9 -0
  3. package/.cursor/hooks/adapter.js +34 -3
  4. package/.cursor/hooks/aw-phase-definitions.js +11 -0
  5. package/.cursor/hooks/before-submit-prompt.sh +17 -0
  6. package/.cursor/hooks/session-start.sh +36 -0
  7. package/.cursor/hooks/shared/aw-phase-definitions.js +1 -19
  8. package/.cursor/hooks/shared/aw-phase-runner.js +38 -2
  9. package/.cursor/hooks/shared/user-prompt-submit.sh +37 -60
  10. package/.cursor/hooks.json +15 -15
  11. package/.cursor/rules/common-aw-routing.md +43 -0
  12. package/.cursor/skills/api-and-interface-design/SKILL.md +75 -0
  13. package/.cursor/skills/aw-brainstorm/SKILL.md +115 -0
  14. package/.cursor/skills/aw-build/SKILL.md +152 -0
  15. package/.cursor/skills/aw-build/evals/build-stage-cases.json +28 -0
  16. package/.cursor/skills/aw-debug/SKILL.md +49 -0
  17. package/.cursor/skills/aw-deploy/SKILL.md +101 -0
  18. package/.cursor/skills/aw-deploy/evals/deploy-stage-cases.json +32 -0
  19. package/.cursor/skills/aw-execute/SKILL.md +47 -0
  20. package/.cursor/skills/aw-execute/references/mode-code.md +47 -0
  21. package/.cursor/skills/aw-execute/references/mode-docs.md +28 -0
  22. package/.cursor/skills/aw-execute/references/mode-infra.md +44 -0
  23. package/.cursor/skills/aw-execute/references/mode-migration.md +58 -0
  24. package/.cursor/skills/aw-execute/references/worker-implementer.md +26 -0
  25. package/.cursor/skills/aw-execute/references/worker-parallel-worker.md +23 -0
  26. package/.cursor/skills/aw-execute/references/worker-quality-reviewer.md +23 -0
  27. package/.cursor/skills/aw-execute/references/worker-spec-reviewer.md +23 -0
  28. package/.cursor/skills/aw-execute/scripts/build-worker-bundle.js +229 -0
  29. package/.cursor/skills/aw-finish/SKILL.md +111 -0
  30. package/.cursor/skills/aw-investigate/SKILL.md +109 -0
  31. package/.cursor/skills/aw-plan/SKILL.md +368 -0
  32. package/.cursor/skills/aw-prepare/SKILL.md +118 -0
  33. package/.cursor/skills/aw-review/SKILL.md +118 -0
  34. package/.cursor/skills/aw-ship/SKILL.md +115 -0
  35. package/.cursor/skills/aw-spec/SKILL.md +104 -0
  36. package/.cursor/skills/aw-tasks/SKILL.md +138 -0
  37. package/.cursor/skills/aw-test/SKILL.md +118 -0
  38. package/.cursor/skills/aw-verify/SKILL.md +51 -0
  39. package/.cursor/skills/aw-yolo/SKILL.md +111 -0
  40. package/.cursor/skills/browser-testing-with-devtools/SKILL.md +81 -0
  41. package/.cursor/skills/ci-cd-and-automation/SKILL.md +71 -0
  42. package/.cursor/skills/code-simplification/SKILL.md +74 -0
  43. package/.cursor/skills/context-engineering/SKILL.md +74 -0
  44. package/.cursor/skills/deprecation-and-migration/SKILL.md +75 -0
  45. package/.cursor/skills/documentation-and-adrs/SKILL.md +75 -0
  46. package/.cursor/skills/frontend-ui-engineering/SKILL.md +68 -0
  47. package/.cursor/skills/git-workflow-and-versioning/SKILL.md +75 -0
  48. package/.cursor/skills/idea-refine/SKILL.md +84 -0
  49. package/.cursor/skills/incremental-implementation/SKILL.md +75 -0
  50. package/.cursor/skills/performance-optimization/SKILL.md +77 -0
  51. package/.cursor/skills/security-and-hardening/SKILL.md +70 -0
  52. package/.cursor/skills/using-aw-skills/SKILL.md +290 -0
  53. package/.cursor/skills/using-aw-skills/evals/skill-trigger-cases.tsv +25 -0
  54. package/.cursor/skills/using-aw-skills/evals/test-skill-triggers.sh +171 -0
  55. package/.cursor/skills/using-aw-skills/hooks/hooks.json +9 -0
  56. package/.cursor/skills/using-aw-skills/hooks/session-start.sh +67 -0
  57. package/.cursor/skills/using-platform-skills/SKILL.md +163 -0
  58. package/.cursor/skills/using-platform-skills/evals/platform-selection-cases.json +52 -0
  59. package/.opencode/package.json +1 -1
  60. package/package.json +3 -1
  61. package/scripts/cursor-aw-home/hooks.json +15 -15
  62. package/scripts/cursor-aw-hooks/adapter.js +34 -3
  63. package/scripts/cursor-aw-hooks/aw-phase-definitions.js +11 -0
  64. package/scripts/cursor-aw-hooks/before-submit-prompt.sh +17 -0
  65. package/scripts/cursor-aw-hooks/session-start.sh +36 -0
  66. package/scripts/hooks/session-start-rules-context.sh +8 -1
  67. package/scripts/hooks/shared/aw-phase-definitions.js +1 -19
  68. package/scripts/hooks/shared/aw-phase-runner.js +38 -2
  69. package/scripts/hooks/shared/user-prompt-submit.sh +37 -60
  70. package/scripts/lib/cursor-aw-hook-files.js +2 -0
  71. package/scripts/lib/cursor-hook-config.js +47 -15
  72. package/scripts/lib/install-executor.js +7 -0
  73. package/scripts/lib/install-targets/cursor-project.js +7 -0
@@ -0,0 +1,368 @@
1
+ ---
2
+ name: aw-plan
3
+ description: Create the minimum correct planning artifacts under `.aw_docs/features/<feature_slug>/` and stop cleanly before implementation.
4
+ trigger: User requests planning, a missing planning artifact blocks build, or `aw-yolo` needs to move work into a build-ready state.
5
+ ---
6
+
7
+ # AW Plan
8
+
9
+ ## Overview
10
+
11
+ `aw-plan` owns planning only.
12
+ It creates the minimum correct planning artifact set for the request and always writes deterministic outputs under:
13
+
14
+ - `.aw_docs/features/<feature_slug>/`
15
+
16
+ When planning is required, the output should be execution-ready for a fresh worker with limited repo context.
17
+ That means the plan should reduce guesswork around files, validation, order, and handoff risks instead of stopping at vague prose.
18
+ For non-trivial work, `aw-plan` should behave like a small internal planning graph rather than a single flat prompt.
19
+
20
+ ## When to Use
21
+
22
+ - the user needs a PRD, design, spec, or task breakdown
23
+ - approved work is missing a planning artifact needed by build
24
+ - a request is too large, too fuzzy, or too risky to execute directly
25
+ - `aw-yolo` needs to move work into a build-ready state
26
+
27
+ **When NOT to use:** when the request is already build-ready, when the issue is really investigation rather than planning, or when the user is only asking for test, review, deploy, or ship work.
28
+
29
+ ## Workflow
30
+
31
+ This legacy heading maps to the detailed planning process below.
32
+
33
+ ## The Planning Process
34
+
35
+ 1. Enter plan mode.
36
+ Load repo context, relevant platform docs, and relevant `.aw_rules`.
37
+ Planning is read-only until the planning artifacts are written.
38
+ 2. Identify the feature and current artifact state.
39
+ Infer or honor the feature slug.
40
+ Detect which planning artifacts already exist and which are actually missing.
41
+ 3. Choose the smallest internal route.
42
+ Decide whether the request is already clear enough for direct planning or needs discovery first.
43
+ For raw concepts or product-shaping work, load `idea-refine` before freezing the direction.
44
+ 4. Plan in dependency order.
45
+ Use dependency graph thinking to decide whether product, design, technical, or tasks work must come first.
46
+ For public interface or contract changes, load `api-and-interface-design`.
47
+ For deprecation, replacement, or migration work, load `deprecation-and-migration`.
48
+ For major architectural or public-behavior decisions, load `documentation-and-adrs`.
49
+ 5. Slice vertically where possible.
50
+ Prefer end-to-end feature slices and concrete checkpoints over horizontal batch plans.
51
+ 6. Write only the missing artifacts.
52
+ Make every created artifact concrete enough for the next stage to proceed without re-planning file scope, validation, and task order.
53
+ 7. Review and update state.
54
+ Run a placeholder and consistency pass, then update `.aw_docs/features/<feature_slug>/state.json`.
55
+ 8. Stop after planning.
56
+ Recommend the next stage without drifting into build, test, or deploy.
57
+
58
+ ## Internal Skill Graph
59
+
60
+ Use the smallest correct internal route:
61
+
62
+ - raw idea or under-shaped concept -> `idea-refine`, then `aw-brainstorm` when deeper repo-aware exploration is still needed
63
+ - fuzzy request, open design question, or overscoped feature -> `aw-brainstorm`
64
+ - approved direction but missing technical contract -> `aw-spec`
65
+ - approved spec but missing execution recipe -> `aw-tasks`
66
+ - already execution-ready tasks -> stop and recommend `aw-build`
67
+
68
+ Do not collapse all of these responsibilities back into one vague planning pass.
69
+
70
+ ## Planning Modes
71
+
72
+ | Mode | Use when | Primary outputs |
73
+ |---|---|---|
74
+ | `product` | problem, scope, or acceptance criteria are unclear | `prd.md`, `state.json` |
75
+ | `design` | UX behavior or interface design must be defined | `design.md`, `designs/`, `state.json` |
76
+ | `technical` | implementation approach or architecture must be defined | `spec.md`, `state.json` |
77
+ | `tasks` | implementation work needs to be broken into steps | `tasks.md`, `state.json` |
78
+ | `full` | multiple planning artifacts are missing | missing artifacts in order, plus `state.json` |
79
+
80
+ ## Artifact Rules
81
+
82
+ - write artifacts only under `.aw_docs/features/<feature_slug>/`
83
+ - use only deterministic names:
84
+ - `prd.md`
85
+ - `design.md`
86
+ - `designs/`
87
+ - `spec.md`
88
+ - `tasks.md`
89
+ - `state.json`
90
+ - do not write planning artifacts to `docs/plans/`
91
+ - do not create random filenames
92
+ - do not write implementation code
93
+
94
+ ## Plan Document Template
95
+
96
+ ### `prd.md`
97
+
98
+ Capture:
99
+
100
+ - goal
101
+ - scope
102
+ - non-goals
103
+ - acceptance criteria
104
+ - risks or dependencies
105
+
106
+ ### `design.md`
107
+
108
+ Capture:
109
+
110
+ - routes or flows
111
+ - states
112
+ - interaction rules
113
+ - accessibility notes
114
+ - references to `designs/`
115
+
116
+ ### `spec.md`
117
+
118
+ Canonical internal owner: `aw-spec`
119
+
120
+ Capture:
121
+
122
+ - implementation goal
123
+ - scope
124
+ - interfaces or contracts
125
+ - technical approach
126
+ - failure modes
127
+ - acceptance criteria
128
+ - verification targets
129
+ - expected changed files or modules when those can be inferred safely
130
+ - key commands, migrations, or rollout constraints that execution must honor
131
+
132
+ ### `tasks.md`
133
+
134
+ Canonical internal owner: `aw-tasks`
135
+
136
+ Start with a short header and an explicit `## Spec Brief` section that captures:
137
+
138
+ - feature goal
139
+ - spec brief
140
+ - architecture summary
141
+ - execution route: `/aw:build`
142
+ - expected execution mode when it is known safely
143
+
144
+ Before task sections, map the file structure:
145
+
146
+ - exact files to create
147
+ - exact files to modify
148
+ - exact tests to add or update
149
+ - the responsibility of each file when that can be stated clearly
150
+
151
+ Organize the work into explicit phases before listing slices:
152
+
153
+ - always label the execution order with headings such as `## Phase 1`, `## Phase 2`, and so on
154
+ - give each phase a short outcome statement so the next worker knows what should be true when that phase ends
155
+ - use phases to show dependency order, not to create abstract ceremony
156
+
157
+ Break implementation into small, executable chunks with:
158
+
159
+ - files
160
+ - checkbox steps
161
+ - acceptance
162
+ - task type: `code`, `infra`, `docs`, `migration`, or `config`
163
+ - validation command or evidence target
164
+ - save-point commit expected for the slice
165
+ - dependency or ordering note when sequencing matters
166
+ - `parallel_candidate` only when the write scope is safely disjoint
167
+ - `parallel_group` when multiple slices can fan out after the same prerequisite
168
+ - `parallel_ready_when` when parallel work must wait for a contract, helper, or schema to land first
169
+ - `parallel_write_scope` so execution can keep ownership boundaries explicit
170
+ - `max_parallel_subagents: 3` by default when parallel fan-out is planned, unless another cap is explicitly justified
171
+
172
+ For code behavior, prefer task steps close to:
173
+
174
+ - write the failing test or capture the failing signal
175
+ - run it to verify the failure is real
176
+ - write the minimal change
177
+ - rerun the relevant verification to confirm the pass
178
+ - commit the focused slice
179
+
180
+ Each step should usually be small enough to fit in about 2-5 minutes.
181
+ Use `../../references/task-sizing-and-checkpoints.md` when sizing or checkpointing gets fuzzy.
182
+
183
+ ## Execution-Ready Tasks
184
+
185
+ `tasks.md` is not complete until a fresh worker can execute it without rediscovering the plan.
186
+
187
+ Execution-ready tasks should make it obvious:
188
+
189
+ - what `## Spec Brief` says at the top of the plan
190
+ - which phases exist and what each phase is meant to deliver
191
+ - which files change first
192
+ - which validation command or evidence target proves each slice
193
+ - which steps are safe to parallelize
194
+ - which `parallel_group` and `parallel_write_scope` belong to those steps
195
+ - what `max_parallel_subagents` cap build should honor for that plan
196
+ - which slice should produce the next save-point commit
197
+ - which blocker should send execution back to planning instead of guessing
198
+
199
+ ## Plan Richness
200
+
201
+ When the request is in `technical`, `tasks`, or `full` mode, planning should be specific enough that execution does not have to rediscover the shape of the work.
202
+
203
+ Prefer including:
204
+
205
+ - an explicit `## Spec Brief` section at the top of `tasks.md`
206
+ - exact or likely changed files and what each one is responsible for
207
+ - exact file paths when they can be inferred safely
208
+ - explicit phase headings for the task plan
209
+ - concrete task goals
210
+ - checkbox execution steps for non-trivial work
211
+ - exact commands and expected outcomes for failure and pass checks
212
+ - the minimal validation commands or evidence expected after implementation
213
+ - commit boundaries for meaningful slices
214
+ - save-point commit expectations for meaningful slices
215
+ - sequencing notes for dependent tasks
216
+ - bounded parallel candidates for disjoint work
217
+ - explicit `parallel_group`, `parallel_ready_when`, and `parallel_write_scope` notes when work may fan out
218
+ - a `max_parallel_subagents` cap that defaults to `3` unless a different cap is explicitly justified
219
+ - key risks, blockers, or rollback constraints
220
+
221
+ If a proposed slice cannot support a clean save-point commit, planning should merge it into the next dependent slice instead of normalizing a no-commit checkpoint.
222
+
223
+ The goal is not maximum verbosity.
224
+ The goal is minimum ambiguity.
225
+
226
+ Use `../../references/task-sizing-and-checkpoints.md` when task sizing, checkpoint placement, or phase boundaries start getting fuzzy.
227
+
228
+ ## Task Sizing Guidelines
229
+
230
+ `tasks.md` should avoid vague tasks such as:
231
+
232
+ - "implement feature"
233
+ - "fix bug"
234
+ - "update code as needed"
235
+
236
+ Prefer task units that name:
237
+
238
+ - goal
239
+ - file scope
240
+ - change intent
241
+ - acceptance check
242
+ - validation command or evidence target
243
+ - expected verification signal
244
+ - commit boundary when the slice is meaningful
245
+
246
+ ## No Placeholders
247
+
248
+ Planning fails if it contains placeholders such as:
249
+
250
+ - `TODO`
251
+ - `TBD`
252
+ - `implement later`
253
+ - `write tests`
254
+ - `handle edge cases`
255
+ - `same as Task N`
256
+
257
+ If execution would need to guess what a step means, planning is not complete.
258
+
259
+ Use these guardrails when sizing work:
260
+
261
+ | Size | Scope signal | Default action |
262
+ |---|---|---|
263
+ | `XS` | single-file or single-boundary clarification | keep it as one focused task |
264
+ | `S` | one slice with one primary validation target | ideal task size |
265
+ | `M` | 3-5 files or one vertical feature slice | acceptable when checkpoints are explicit |
266
+ | `L` | multiple subsystems or mixed rollout risk | break it down further |
267
+ | `XL` | broad subsystem batch or multi-phase rollout | planning failure until decomposed |
268
+
269
+ If a task title needs "and", it is usually more than one task.
270
+ If a step would take longer than one focused implementation session, break it down further.
271
+
272
+ ## Parallelization Opportunities
273
+
274
+ Parallel work is allowed only when the write scope is clearly disjoint.
275
+ Plan parallel work in bounded waves rather than unbounded fan-out.
276
+
277
+ - safe to parallelize:
278
+ - docs versus code
279
+ - backend versus frontend after the contract is fixed
280
+ - implementation versus reference/checklist preparation
281
+ - do not parallelize:
282
+ - tasks that change the same files
283
+ - rollout-sensitive migrations
284
+ - tasks that depend on a helper, interface, or schema not created yet
285
+
286
+ Default to `max_parallel_subagents: 3` when parallel build fan-out is useful.
287
+ Only change that cap when the plan names a concrete reason such as runtime limits, repo size, or a proven need for tighter sequencing.
288
+
289
+ When in doubt, sequence the work and leave `parallel_candidate` off.
290
+
291
+ ## Common Rationalizations
292
+
293
+ | Rationalization | Reality |
294
+ |---|---|
295
+ | "I’ll figure it out while building." | That is how scope drift and rework start. |
296
+ | "The tasks are obvious, so I don’t need to write them down." | Written plans expose hidden dependencies and missing checks. |
297
+ | "A big batch plan is faster." | Thin vertical slices are easier to verify, review, and roll back. |
298
+ | "Planning should stay abstract." | Abstract plans force the next stage to re-plan the work. |
299
+
300
+ ## Red Flags
301
+
302
+ - planning begins with implementation advice instead of artifact selection
303
+ - task steps are vague enough that build would need to rediscover the file scope
304
+ - no checkpoints exist between meaningful phases
305
+ - multiple independent subsystems are bundled into one undifferentiated task list
306
+ - placeholders like `TODO`, `TBD`, or "handle edge cases" remain in the artifacts
307
+
308
+ ## Verification
309
+
310
+ The verification pass for planning is the plan self-review.
311
+
312
+ ## Plan Self-Review
313
+
314
+ Before ending the planning stage:
315
+
316
+ 1. confirm each spec requirement maps to a task or explicit reason it is out of scope
317
+ 2. confirm `## Spec Brief` at the top of `tasks.md` matches the approved spec
318
+ 3. confirm the phase order is obvious and every phase has a clear outcome
319
+ 4. scan for placeholders and vague steps
320
+ 5. check that file paths, type names, helper names, and commands stay consistent
321
+ 6. confirm the next stage can route directly to `/aw:build` or explicitly state what approval is still missing
322
+
323
+ Treat this as the planning verification pass.
324
+ If the plan cannot survive this self-review, it is not ready for execution handoff.
325
+
326
+ ## Execution Handoff
327
+
328
+ When `tasks.md` is ready:
329
+
330
+ - recommend `/aw:build`
331
+ - name the selected execution mode when it is known safely
332
+ - name any blocker that should send the work back to planning instead of guessing
333
+
334
+ ## Hard Gates
335
+
336
+ - do not write code
337
+ - do not require `prd.md` for a technical-only request that is already well-defined
338
+ - do not force unrelated artifacts
339
+ - do not silently broaden a narrow planning request into full planning
340
+ - do not produce handoff tasks so vague that execution must re-plan the file scope
341
+
342
+ ## State File
343
+
344
+ `state.json` should record at least:
345
+
346
+ - `feature_slug`
347
+ - `stage: "plan"`
348
+ - `mode`
349
+ - `status`
350
+ - written artifacts
351
+ - key inputs
352
+ - internal skills used
353
+ - planned save-point commit policy
354
+ - parallel build policy and cap when parallel execution is planned
355
+ - recommended next commands
356
+
357
+ ## Final Output Shape
358
+
359
+ Always end with:
360
+
361
+ - `Route`
362
+ - `Mode`
363
+ - `Created`
364
+ - `Spec Brief`
365
+ - `Phases`
366
+ - `Execution Readiness`
367
+ - `Missing`
368
+ - `Next`
@@ -0,0 +1,118 @@
1
+ ---
2
+ name: aw-prepare
3
+ description: Internal preparation layer that validates repo state, branch or worktree isolation, and execution readiness before risky AW stages begin.
4
+ trigger: Internal only. Invoked by aw-build, aw-deploy, aw-ship, or aw-yolo before code-changing or release-oriented work.
5
+ ---
6
+
7
+ # AW Prepare
8
+
9
+ ## Purpose
10
+
11
+ `aw-prepare` is an internal setup gate.
12
+ It keeps the public AW surface small while adding the practical safety checks needed before execution or release work starts.
13
+
14
+ ## Responsibilities
15
+
16
+ Always check the smallest correct set of:
17
+
18
+ - current branch or worktree isolation
19
+ - dirty tracked or untracked state that could contaminate the requested work
20
+ - feature slug and artifact baseline
21
+ - workspace metadata handoff for the active feature
22
+ - obvious runnable baseline validation when it is cheap and safe
23
+ - deploy-target prerequisites when the next stage is release-oriented
24
+
25
+ ## Isolation Levels
26
+
27
+ Preparation should classify the current workspace into one of these levels:
28
+
29
+ | Level | Meaning | Default action |
30
+ |---|---|---|
31
+ | `isolated-worktree` | dedicated worktree or clearly isolated workspace | proceed |
32
+ | `isolated-branch` | dedicated feature branch in the main checkout | proceed with caution notes |
33
+ | `shared-branch-dirty` | shared branch or dirty state could contaminate work | warn or block based on risk |
34
+ | `snapshot-degraded` | source snapshot or eval workspace without live git metadata | proceed in degraded mode when side effects are not required |
35
+
36
+ ## Recommended Isolation Action
37
+
38
+ When isolation is weaker than `isolated-worktree`, preparation should recommend the smallest corrective action, such as:
39
+
40
+ - create a feature branch
41
+ - switch to a dedicated worktree
42
+ - stash or isolate unrelated local changes
43
+ - continue in degraded snapshot mode with blocked external side effects
44
+
45
+ ## Operational Lifecycle
46
+
47
+ When a dedicated worktree is the right isolation boundary, use the repo-local orchestration helpers instead of leaving setup implicit:
48
+
49
+ - `node scripts/orchestrate-worktrees.js <plan.json>` to render the branch-backed worktree plan
50
+ - `node scripts/orchestrate-worktrees.js <plan.json> --execute` to create the worktree session
51
+ - `node scripts/orchestration-status.js <plan.json|session-name>` to inspect the resulting orchestration snapshot
52
+
53
+ For single-worker isolation, a one-worker orchestration plan is valid.
54
+ Do not invent a separate workflow for "simple" worktree creation.
55
+
56
+ ## Workspace Metadata
57
+
58
+ When preparation creates, selects, or reuses an isolated workspace, persist `.aw_docs/features/<feature_slug>/workspace.json` with the minimum useful fields:
59
+
60
+ - `feature_slug`
61
+ - `isolation_level`
62
+ - `branch_name`
63
+ - `worktree_path`
64
+ - `coordination_dir`
65
+ - `cleanup_policy`
66
+ - `status_command`
67
+ - `recommended_next`
68
+
69
+ ## Required Behavior
70
+
71
+ 1. detect whether the work is running in an isolated branch or worktree
72
+ 2. report risky dirty state instead of silently continuing
73
+ 3. confirm the intended feature slug and relevant AW artifact directory
74
+ 4. recommend the smallest isolation action when the current workspace is weaker than ideal
75
+ 5. capture baseline commands that should be rerun later when practical
76
+ 6. write or update `workspace.json` when a dedicated branch or worktree is selected
77
+ 7. hand back a preparation summary to the calling stage
78
+ 8. when repo metadata is unavailable because the work is running inside a source snapshot or eval workspace, record degraded isolation as a warning and continue when local artifact work is still safe
79
+ 9. only hard-block on missing git metadata when the next action truly requires live branch, PR, or deployment execution that cannot be represented safely as blocked evidence
80
+
81
+ ## Hard Gates
82
+
83
+ - do not create a new public command
84
+ - do not silently discard or overwrite unrelated local changes
85
+ - do not claim deploy readiness from preparation alone
86
+ - do not block lightweight docs-only work unless repo state creates real ambiguity
87
+ - do not treat missing `.git` metadata in snapshot or eval workspaces as an automatic blocker for plan, execute, verify, or evidence-only deploy handoff
88
+ - do not treat a dirty shared branch as equivalent to an isolated worktree
89
+ - do not continue into multi-stage ship work without naming the chosen isolation level
90
+
91
+ ## Preparation Summary
92
+
93
+ Preparation output should capture:
94
+
95
+ - isolation level
96
+ - isolation status
97
+ - recommended isolation action
98
+ - repo cleanliness summary
99
+ - baseline artifacts detected
100
+ - cheap baseline commands run, if any
101
+ - blockers or warnings
102
+ - recommended next stage
103
+ - whether the stage is continuing in degraded snapshot mode
104
+ - workspace metadata path, when written
105
+
106
+ ## Final Output Shape
107
+
108
+ Always end with:
109
+
110
+ - `Isolation Level`
111
+ - `Isolation`
112
+ - `Recommended Isolation Action`
113
+ - `Repo State`
114
+ - `Artifacts Found`
115
+ - `Baseline Checks`
116
+ - `Warnings`
117
+ - `Workspace Metadata`
118
+ - `Recommended Next`
@@ -0,0 +1,118 @@
1
+ ---
2
+ name: aw-review
3
+ description: Review work for findings, governance, and readiness using explicit severity, org-standard playbooks, and fresh evidence.
4
+ trigger: User requests review, readiness, or PR governance, or a legacy verify request resolves to the review stage.
5
+ ---
6
+
7
+ # AW Review
8
+
9
+ ## Overview
10
+
11
+ `aw-review` is now a public stage skill.
12
+ It turns evidence into findings, release decisions, and clear next actions.
13
+
14
+ ## When to Use
15
+
16
+ - the request is findings-oriented review
17
+ - PR governance or readiness matters
18
+ - the work needs a release recommendation
19
+ - a legacy `/aw:verify` request is mostly about review
20
+
21
+ Do not use as a hidden helper that replaces explicit review intent.
22
+
23
+ ## Workflow
24
+
25
+ 1. Review the evidence first.
26
+ Start with tests, local validation, E2E, runtime proof, and prior investigation artifacts.
27
+ 2. Load the right org-standard playbooks.
28
+ Pull in platform review, design, accessibility, and quality-gate playbooks from the resolved baseline.
29
+ 3. Review across the five core axes.
30
+ Correctness, readability and simplicity, architecture, security, and performance.
31
+ Use `../../references/review-findings-severity.md`.
32
+ For readability and maintainability concerns, load `code-simplification`.
33
+ For public contract or boundary changes, load `api-and-interface-design`.
34
+ For security-sensitive work, load `security-and-hardening` and `../../references/security-checklist.md`.
35
+ For performance-sensitive work, load `performance-optimization` and `../../references/performance-checklist.md`.
36
+ For branch hygiene, save-point quality, or reviewability concerns, load `git-workflow-and-versioning`.
37
+ 4. Classify findings explicitly.
38
+ Separate blocking findings from advisory notes.
39
+ Name evidence, scope, and required fix.
40
+ 5. Continue until the requested review scope is covered.
41
+ Do not stop after the first finding or the first review axis if correctness, governance, architecture, security, performance, or readiness checks still remain.
42
+ 6. Check governance and readiness.
43
+ Confirm PR checklist, approvals, status checks, rollback notes, and release recommendation.
44
+ For architecture or public-behavior changes that need durable rationale, load `documentation-and-adrs`.
45
+ 7. Request fresh testing when needed.
46
+ If evidence is stale, missing, or too broad, route back to `aw-test` for the smallest targeted rerun.
47
+ 8. Persist the result.
48
+ Write `verification.md` and update `state.json`.
49
+
50
+ ## Completion Contract
51
+
52
+ Review is complete only when one of these is true:
53
+
54
+ - the requested findings, governance, and readiness scope is covered with current evidence
55
+ - the work fails review and the repair path is explicit
56
+ - a blocker prevents a trustworthy decision and that blocker is named
57
+
58
+ Every review handoff must make these things obvious:
59
+
60
+ - which evidence was reviewed
61
+ - which findings are blocking versus advisory
62
+ - which governance checks were completed
63
+ - what the readiness outcome is
64
+ - which exact next command should run next
65
+
66
+ ## Common Rationalizations
67
+
68
+ | Rationalization | Reality |
69
+ |---|---|
70
+ | "The tests passed, so review is basically done." | Tests are evidence, not the whole decision. |
71
+ | "This looks fine overall." | Findings need explicit severity, scope, and evidence. |
72
+ | "I can clear the finding from memory." | Resolutions require fresh evidence against the original issue. |
73
+
74
+ ## Red Flags
75
+
76
+ - no explicit severity language
77
+ - PR governance is implied instead of checked
78
+ - platform review or design playbooks are skipped for applicable work
79
+ - stale test evidence is reused after repairs
80
+
81
+ ## State File
82
+
83
+ `state.json` should record at least:
84
+
85
+ - `feature_slug`
86
+ - `stage: "review"`
87
+ - `mode`
88
+ - `status`
89
+ - written artifacts
90
+ - evidence reviewed
91
+ - blocking findings
92
+ - advisory notes
93
+ - governance status
94
+ - readiness outcome
95
+ - blockers
96
+ - recommended next commands
97
+
98
+ ## Verification
99
+
100
+ Before leaving review, confirm:
101
+
102
+ - [ ] test and runtime evidence were reviewed first
103
+ - [ ] findings are explicit, evidence-backed, and severity-tagged
104
+ - [ ] governance and readiness checks match the resolved baseline
105
+ - [ ] repairs point back to build or test with clear scope
106
+ - [ ] `verification.md` and `state.json` are updated
107
+
108
+ ## Final Output Shape
109
+
110
+ Always end with:
111
+
112
+ - `Mode`
113
+ - `Evidence`
114
+ - `Findings`
115
+ - `Governance`
116
+ - `Readiness`
117
+ - `Outcome`
118
+ - `Next`