@leeovery/claude-technical-workflows 2.1.40 → 2.1.41
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.md +1 -1
- package/agents/implementation-analysis-architecture.md +2 -2
- package/agents/implementation-analysis-duplication.md +2 -2
- package/agents/implementation-analysis-standards.md +2 -2
- package/agents/implementation-analysis-synthesizer.md +3 -3
- package/agents/implementation-analysis-task-writer.md +1 -1
- package/agents/implementation-task-executor.md +3 -0
- package/agents/planning-phase-designer.md +8 -6
- package/agents/planning-task-designer.md +8 -6
- package/agents/review-findings-synthesizer.md +2 -2
- package/agents/review-task-verifier.md +1 -1
- package/hooks/workflows/compact-recovery.sh +1 -1
- package/hooks/workflows/session-cleanup.sh +1 -1
- package/hooks/workflows/write-session-state.sh +1 -1
- package/package.json +1 -1
- package/skills/begin-implementation/SKILL.md +5 -5
- package/skills/begin-planning/SKILL.md +2 -1
- package/skills/begin-review/SKILL.md +1 -1
- package/skills/continue-feature/references/detect-phase.md +5 -5
- package/skills/continue-feature/references/invoke-implementation.md +2 -2
- package/skills/continue-feature/references/invoke-planning.md +2 -2
- package/skills/continue-feature/references/invoke-review.md +2 -2
- package/skills/continue-feature/references/invoke-specification.md +3 -3
- package/skills/continue-feature/scripts/discovery.sh +5 -5
- package/skills/link-dependencies/SKILL.md +5 -5
- package/skills/migrate/SKILL.md +1 -1
- package/skills/migrate/scripts/migrate.sh +56 -25
- package/skills/migrate/scripts/migrations/011-rename-workflow-directory.sh +73 -0
- package/skills/migrate/scripts/migrations/012-environment-setup-to-state.sh +23 -0
- package/skills/start-discussion/SKILL.md +2 -2
- package/skills/start-discussion/references/gather-context-research.md +1 -1
- package/skills/start-discussion/references/handle-selection.md +1 -1
- package/skills/start-discussion/references/invoke-skill.md +3 -3
- package/skills/start-discussion/references/research-analysis.md +3 -3
- package/skills/start-discussion/scripts/discovery.sh +3 -3
- package/skills/start-feature/SKILL.md +5 -5
- package/skills/start-feature/references/phase-bridge.md +1 -1
- package/skills/start-implementation/SKILL.md +6 -6
- package/skills/start-implementation/scripts/discovery.sh +4 -4
- package/skills/start-planning/SKILL.md +5 -3
- package/skills/start-planning/references/display-state.md +31 -1
- package/skills/start-planning/references/invoke-skill.md +3 -3
- package/skills/start-planning/scripts/discovery.sh +32 -3
- package/skills/start-research/SKILL.md +1 -1
- package/skills/start-research/references/invoke-skill.md +1 -1
- package/skills/start-review/SKILL.md +1 -1
- package/skills/start-review/references/invoke-skill.md +4 -4
- package/skills/start-review/scripts/discovery.sh +5 -5
- package/skills/start-specification/SKILL.md +1 -1
- package/skills/start-specification/references/analysis-flow.md +2 -2
- package/skills/start-specification/references/confirm-continue.md +3 -3
- package/skills/start-specification/references/confirm-create.md +2 -2
- package/skills/start-specification/references/confirm-refine.md +1 -1
- package/skills/start-specification/references/confirm-unify.md +2 -2
- package/skills/start-specification/references/display-analyze.md +1 -1
- package/skills/start-specification/references/display-groupings.md +3 -3
- package/skills/start-specification/references/display-specs-menu.md +1 -1
- package/skills/start-specification/references/handoffs/continue-concluded.md +4 -4
- package/skills/start-specification/references/handoffs/continue.md +4 -4
- package/skills/start-specification/references/handoffs/create-with-incorporation.md +5 -5
- package/skills/start-specification/references/handoffs/create.md +4 -4
- package/skills/start-specification/references/handoffs/unify-with-incorporation.md +6 -6
- package/skills/start-specification/references/handoffs/unify.md +4 -4
- package/skills/start-specification/scripts/discovery.sh +3 -3
- package/skills/status/SKILL.md +1 -1
- package/skills/status/scripts/discovery.sh +5 -5
- package/skills/technical-discussion/SKILL.md +3 -3
- package/skills/technical-discussion/references/template.md +2 -2
- package/skills/technical-implementation/SKILL.md +11 -10
- package/skills/technical-implementation/references/analysis-loop.md +45 -9
- package/skills/technical-implementation/references/environment-setup.md +3 -3
- package/skills/technical-implementation/references/invoke-task-writer.md +1 -1
- package/skills/technical-implementation/references/task-loop.md +1 -1
- package/skills/technical-planning/SKILL.md +8 -7
- package/skills/technical-planning/references/analyze-task-graph.md +1 -1
- package/skills/technical-planning/references/author-tasks.md +5 -5
- package/skills/technical-planning/references/define-phases.md +5 -2
- package/skills/technical-planning/references/define-tasks.md +6 -3
- package/skills/technical-planning/references/invoke-review-integrity.md +1 -1
- package/skills/technical-planning/references/invoke-review-traceability.md +1 -1
- package/skills/technical-planning/references/output-formats/local-markdown/about.md +2 -2
- package/skills/technical-planning/references/output-formats/local-markdown/authoring.md +2 -2
- package/skills/technical-planning/references/output-formats/local-markdown/reading.md +3 -3
- package/skills/technical-planning/references/output-formats/local-markdown/updating.md +1 -1
- package/skills/technical-planning/references/phase-design/bugfix.md +75 -0
- package/skills/technical-planning/references/phase-design/feature.md +77 -0
- package/skills/technical-planning/references/phase-design/greenfield.md +75 -0
- package/skills/technical-planning/references/phase-design.md +7 -57
- package/skills/technical-planning/references/plan-index-schema.md +3 -1
- package/skills/technical-planning/references/review-integrity.md +1 -1
- package/skills/technical-planning/references/review-traceability.md +1 -1
- package/skills/technical-planning/references/task-design/bugfix.md +65 -0
- package/skills/technical-planning/references/task-design/feature.md +61 -0
- package/skills/technical-planning/references/task-design/greenfield.md +47 -0
- package/skills/technical-planning/references/task-design.md +6 -39
- package/skills/technical-planning/references/verify-source-material.md +2 -2
- package/skills/technical-research/SKILL.md +2 -2
- package/skills/technical-research/references/interview.md +2 -2
- package/skills/technical-review/SKILL.md +1 -1
- package/skills/technical-review/references/invoke-review-synthesizer.md +3 -3
- package/skills/technical-review/references/invoke-review-task-writer.md +2 -2
- package/skills/technical-review/references/invoke-task-verifiers.md +3 -3
- package/skills/technical-review/references/produce-review.md +1 -1
- package/skills/technical-review/references/review-actions-loop.md +7 -5
- package/skills/technical-specification/SKILL.md +5 -5
- package/skills/technical-specification/references/dependencies.md +2 -2
- package/skills/technical-specification/references/review-tracking-format.md +1 -1
- package/skills/technical-specification/references/specification-format.md +1 -1
- package/skills/technical-specification/references/verify-source-material.md +2 -2
- package/skills/view-plan/SKILL.md +2 -2
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Bugfix Task Design
|
|
2
|
+
|
|
3
|
+
*Context guidance for **[task-design.md](../task-design.md)** — bug fixes*
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Root-Cause-First Ordering
|
|
8
|
+
|
|
9
|
+
In bugfix work, the first task always reproduces the bug with a failing test, then fixes it. Foundation = the reproduction test and the minimal fix.
|
|
10
|
+
|
|
11
|
+
**Example** ordering within a phase:
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
Task 1: Failing test for the N+1 query + add eager loading (reproduce + fix)
|
|
15
|
+
Task 2: Verify performance with large dataset (validation)
|
|
16
|
+
Task 3: Regression tests for related query paths (prevention)
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
The first task proves the bug exists and fixes it. Subsequent tasks harden the fix.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Bugfix Vertical Slicing
|
|
24
|
+
|
|
25
|
+
Each task changes the minimum code needed. A bugfix task is well-scoped when you can describe both the before (broken) and after (fixed) states in one sentence.
|
|
26
|
+
|
|
27
|
+
**Example** (Single root cause):
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
Task 1: Add failing test demonstrating the race condition + add lock (fix)
|
|
31
|
+
Task 2: Handle lock timeout and retry (error handling)
|
|
32
|
+
Task 3: Concurrent access regression tests (prevention)
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**Example** (Multiple related issues):
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
Task 1: Fix primary null pointer with guard clause + test (core fix)
|
|
39
|
+
Task 2: Fix secondary data truncation at boundary + test (related fix)
|
|
40
|
+
Task 3: Add integration test covering the full workflow (regression)
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## Minimal Change Focus
|
|
46
|
+
|
|
47
|
+
Each task changes the minimum code needed:
|
|
48
|
+
|
|
49
|
+
- Don't refactor adjacent code
|
|
50
|
+
- Don't add features while fixing bugs
|
|
51
|
+
- Keep the diff small and reviewable
|
|
52
|
+
- If a task starts growing beyond the fix, it's probably two tasks
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## Codebase Analysis During Task Design
|
|
57
|
+
|
|
58
|
+
Tasks must be designed with knowledge of the affected code:
|
|
59
|
+
|
|
60
|
+
- **Understand the bug's context** — what code is involved? What tests exist? What are the inputs, outputs, and side effects of the affected code?
|
|
61
|
+
- **Design tasks around existing structure** — bug fixes should work within the existing architecture. Don't design tasks that require restructuring unless the specification explicitly calls for it.
|
|
62
|
+
- **Keep scope surgical** — bugfix tasks should touch as few files as possible. If a task needs to touch many files, question whether the fix is truly minimal.
|
|
63
|
+
- **Leverage existing tests** — if relevant tests exist, tasks can extend them. If not, the reproduction test becomes the foundation.
|
|
64
|
+
|
|
65
|
+
This analysis happens during task design — it informs what needs to change without being documented separately.
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# Feature Task Design
|
|
2
|
+
|
|
3
|
+
*Context guidance for **[task-design.md](../task-design.md)** — feature additions to existing systems*
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Integration-Aware Ordering
|
|
8
|
+
|
|
9
|
+
In feature work, the existing codebase provides the foundation. "Foundation" means whatever the existing codebase doesn't provide yet — new model fields, new routes, service extensions — that other tasks in this phase need.
|
|
10
|
+
|
|
11
|
+
Extend existing code first, then build new behaviour on top.
|
|
12
|
+
|
|
13
|
+
**Example** ordering within a phase:
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
Task 1: Add OAuth fields to User model + migration (extends existing model)
|
|
17
|
+
Task 2: OAuth callback endpoint + token exchange (new route, uses existing auth middleware)
|
|
18
|
+
Task 3: Session creation from OAuth token (extends existing session logic)
|
|
19
|
+
Task 4: Handle provider errors and token validation failures (error handling)
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
The first task extends what exists. Later tasks build the new behaviour using both existing and newly-added code.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Feature Vertical Slicing
|
|
27
|
+
|
|
28
|
+
Each task delivers a complete, testable increment that integrates with the existing system. Since infrastructure already exists, tasks can focus on behaviour rather than setup.
|
|
29
|
+
|
|
30
|
+
**Example** (Extending an existing system):
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
Task 1: Add search index fields to Product model (extends existing)
|
|
34
|
+
Task 2: Search query endpoint returning products (new endpoint, existing model)
|
|
35
|
+
Task 3: Filter results by category and price range (extends search)
|
|
36
|
+
Task 4: Handle empty results and malformed queries (edge cases)
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Follow Existing Patterns
|
|
42
|
+
|
|
43
|
+
Task implementations should match established conventions in the codebase:
|
|
44
|
+
|
|
45
|
+
- Use the same testing patterns (if the project uses factory functions, use factories; if it uses fixtures, use fixtures)
|
|
46
|
+
- Follow the existing file organisation and naming conventions
|
|
47
|
+
- Use established service/repository/controller patterns rather than introducing new ones
|
|
48
|
+
- Match the existing error handling approach
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Codebase Analysis During Task Design
|
|
53
|
+
|
|
54
|
+
Tasks must be designed with knowledge of the existing code. Before finalizing task lists:
|
|
55
|
+
|
|
56
|
+
- **Identify similar implementations** — find existing code that does something similar. Tasks should reference this as the pattern to follow. "Follow the same approach as UserController" is more effective than abstract descriptions.
|
|
57
|
+
- **Map what needs to change** — which files, modules, or services does each task touch? Understanding this shapes task scope and ordering.
|
|
58
|
+
- **Prefer addition over modification** — when possible, design tasks that add new code (functions, modules, endpoints) and call it from existing code, rather than tasks that heavily modify existing code. This reduces risk and makes changes easier to review.
|
|
59
|
+
- **Keep tasks focused** — tasks touching existing code should ideally stay within one file or module. Multi-file tasks in existing codebases are significantly harder to get right.
|
|
60
|
+
|
|
61
|
+
This analysis happens during task design — it informs task scope and ordering without being documented separately.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Greenfield Task Design
|
|
2
|
+
|
|
3
|
+
*Context guidance for **[task-design.md](../task-design.md)** — new system builds*
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Foundation-First Ordering
|
|
8
|
+
|
|
9
|
+
In greenfield projects, the first tasks establish the pattern that all subsequent tasks follow. Foundation means models, migrations, base configuration, and core abstractions that other tasks need to build on.
|
|
10
|
+
|
|
11
|
+
**Example** ordering within a phase:
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
Task 1: Create Event model and migration (foundation)
|
|
15
|
+
Task 2: Create event via API endpoint (happy path)
|
|
16
|
+
Task 3: Validate event time ranges (error handling)
|
|
17
|
+
Task 4: Handle overlapping events (edge case)
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
The first task builds what doesn't exist yet. Later tasks extend it.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Greenfield Vertical Slicing
|
|
25
|
+
|
|
26
|
+
Each task delivers a complete, testable slice of new functionality. Since nothing exists yet, early tasks often establish both the data layer and the first behaviour in a single TDD cycle.
|
|
27
|
+
|
|
28
|
+
**Example** (Building new feature surfaces from scratch):
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
Task 1: Room model + create room endpoint (establishes the pattern)
|
|
32
|
+
Task 2: Post message to room (builds on room, adds messaging)
|
|
33
|
+
Task 3: List messages with pagination (extends messaging)
|
|
34
|
+
Task 4: Handle empty room and deleted messages (edge cases)
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
The first task is slightly larger because it establishes the foundation AND the first working behaviour. Subsequent tasks are narrower because the pattern exists.
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Phase 2+ Considerations
|
|
42
|
+
|
|
43
|
+
After Phase 1 completes, code exists. When designing tasks for subsequent phases:
|
|
44
|
+
|
|
45
|
+
- **Review what Phase 1 established** — understand the patterns, conventions, and structure that were created. Subsequent tasks should extend these consistently.
|
|
46
|
+
- **Check for drift** — if early implementation decisions could be improved, note them but don't redesign mid-project. Consistency matters more than perfection.
|
|
47
|
+
- **Build on what's there** — subsequent phases have infrastructure to work with. Tasks should use existing models, services, and patterns rather than creating parallel structures.
|
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
This reference defines
|
|
7
|
+
This reference defines generic principles for breaking phases into tasks and writing task detail.
|
|
8
|
+
|
|
9
|
+
A work-type context file (greenfield, feature, or bugfix) is always loaded alongside this file. The context file provides task ordering, slicing examples, and work-type-specific guidance. These generic principles apply across all work types.
|
|
8
10
|
|
|
9
11
|
## One Task = One TDD Cycle
|
|
10
12
|
|
|
@@ -30,46 +32,11 @@ Cross-cutting references are context, not scope. They shape how tasks are writte
|
|
|
30
32
|
|
|
31
33
|
Prefer **vertical slices** that deliver complete, testable functionality over horizontal slices that separate by technical layer.
|
|
32
34
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
```
|
|
36
|
-
Task 1: Create all database models
|
|
37
|
-
Task 2: Create all service classes
|
|
38
|
-
Task 3: Wire up integrations
|
|
39
|
-
Task 4: Add error handling
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
Nothing works until Task 4. No task is independently verifiable.
|
|
43
|
-
|
|
44
|
-
**Vertical (prefer)**:
|
|
45
|
-
|
|
46
|
-
```
|
|
47
|
-
Task 1: Fetch and store events from provider (happy path)
|
|
48
|
-
Task 2: Handle pagination for large result sets
|
|
49
|
-
Task 3: Handle authentication token refresh
|
|
50
|
-
Task 4: Handle rate limiting
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
Each task delivers a complete slice of functionality that can be tested in isolation.
|
|
54
|
-
|
|
55
|
-
Within a bounded feature, vertical slicing means each task completes a coherent unit of that feature's functionality — not that it must touch UI/API/database layers. The test is: *can this task be verified independently?*
|
|
35
|
+
The test: *can this task be verified independently?* If yes, it's a good vertical slice. If it only works once other tasks are complete, it's probably a horizontal slice.
|
|
56
36
|
|
|
57
37
|
TDD naturally encourages vertical slicing — when you think "what test can I write?", you frame work as complete, verifiable behaviour rather than technical layers.
|
|
58
38
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
## Task Ordering
|
|
62
|
-
|
|
63
|
-
Within a phase, order tasks by:
|
|
64
|
-
|
|
65
|
-
1. **Foundation / setup** — models, migrations, base configuration needed by other tasks
|
|
66
|
-
2. **Happy path** — the primary expected behaviour, end-to-end
|
|
67
|
-
3. **Error handling** — validation failures, API errors, permission checks
|
|
68
|
-
4. **Edge cases** — boundary conditions, unusual inputs, race conditions
|
|
69
|
-
|
|
70
|
-
This ordering means the first tasks establish the pattern and the later tasks extend it. Each task builds on a working foundation rather than building in the dark.
|
|
71
|
-
|
|
72
|
-
**Edge cases as separate tasks**: Keep the happy-path task focused. If a task's acceptance criteria start growing beyond 3-4 items, the edge cases probably deserve their own tasks. This keeps each TDD cycle tight and each task independently verifiable.
|
|
39
|
+
The context file provides examples of vertical slicing appropriate to the work type.
|
|
73
40
|
|
|
74
41
|
---
|
|
75
42
|
|
|
@@ -140,7 +107,7 @@ Every task should follow this structure:
|
|
|
140
107
|
> Relevant details from specification: code examples, architectural decisions,
|
|
141
108
|
> data models, or constraints that inform implementation.
|
|
142
109
|
|
|
143
|
-
**Spec Reference**:
|
|
110
|
+
**Spec Reference**: `.workflows/specification/{topic}/specification.md` (if specification was provided)
|
|
144
111
|
```
|
|
145
112
|
|
|
146
113
|
### Field Requirements
|
|
@@ -15,6 +15,6 @@ Verify that all source material exists and is accessible before entering agent-d
|
|
|
15
15
|
### Example
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
ls
|
|
19
|
-
ls
|
|
18
|
+
ls .workflows/specification/{topic}/specification.md
|
|
19
|
+
ls .workflows/specification/{cross-cutting-spec}/specification.md
|
|
20
20
|
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: technical-research
|
|
3
|
-
description: "Explore ideas, validate concepts, and research broadly across technical, business, and market domains. Use when: (1) User has a new idea to explore, (2) Need to research a topic deeply, (3) Validating feasibility - technical, business, or market, (4) Learning and exploration without necessarily building anything, (5) User says 'research this' or 'explore this idea', (6) Brain dumping early thoughts before formal discussion. Creates research documents in
|
|
3
|
+
description: "Explore ideas, validate concepts, and research broadly across technical, business, and market domains. Use when: (1) User has a new idea to explore, (2) Need to research a topic deeply, (3) Validating feasibility - technical, business, or market, (4) Learning and exploration without necessarily building anything, (5) User says 'research this' or 'explore this idea', (6) Brain dumping early thoughts before formal discussion. Creates research documents in .workflows/research/ that may feed into discussion or specification."
|
|
4
4
|
user-invocable: false
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -151,7 +151,7 @@ Ask one question at a time. Wait for the answer. Document. Then ask the next.
|
|
|
151
151
|
|
|
152
152
|
## File Strategy
|
|
153
153
|
|
|
154
|
-
**Output**:
|
|
154
|
+
**Output**: `.workflows/research/exploration.md`
|
|
155
155
|
|
|
156
156
|
**Template**: Use `references/template.md` for document structure. All research documents use YAML frontmatter:
|
|
157
157
|
|
|
@@ -4,7 +4,7 @@ Focused questioning to probe ideas more deeply during research.
|
|
|
4
4
|
|
|
5
5
|
## Process
|
|
6
6
|
|
|
7
|
-
1. **Check existing context**: Read docs in
|
|
7
|
+
1. **Check existing context**: Read docs in `.workflows/research/` to understand what's already been explored.
|
|
8
8
|
|
|
9
9
|
2. **Begin interviewing**: Use the AskUserQuestion tool to probe the idea. Focus on:
|
|
10
10
|
- Non-obvious questions (not things already answered)
|
|
@@ -15,7 +15,7 @@ Focused questioning to probe ideas more deeply during research.
|
|
|
15
15
|
|
|
16
16
|
3. **Go where it leads**: Follow tangents if they reveal something valuable. This isn't a checklist - it's a conversation.
|
|
17
17
|
|
|
18
|
-
4. **Document as you go**: Don't defer writing to the end. Capture insights in
|
|
18
|
+
4. **Document as you go**: Don't defer writing to the end. Capture insights in `.workflows/research/` using semantic filenames. Ask before documenting: "Shall I capture that?"
|
|
19
19
|
|
|
20
20
|
5. **Commit frequently**: At natural breaks and before context refresh.
|
|
21
21
|
|
|
@@ -30,7 +30,7 @@ Either way: Verify plan tasks were implemented, tested adequately, and meet qual
|
|
|
30
30
|
|
|
31
31
|
```
|
|
32
32
|
I need the implementation plan to review against. Could you point me to the
|
|
33
|
-
plan file (e.g.,
|
|
33
|
+
plan file (e.g., .workflows/planning/{topic}/plan.md)?
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
**STOP.** Wait for user response.
|
|
@@ -10,10 +10,10 @@ This step dispatches a `review-findings-synthesizer` agent to read review findin
|
|
|
10
10
|
|
|
11
11
|
## Determine Cycle Number
|
|
12
12
|
|
|
13
|
-
Count existing `review-tasks-c*.md` files in
|
|
13
|
+
Count existing `review-tasks-c*.md` files in `.workflows/implementation/{primary-topic}/` and add 1.
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
ls
|
|
16
|
+
ls .workflows/implementation/{primary-topic}/review-tasks-c*.md 2>/dev/null | wc -l
|
|
17
17
|
```
|
|
18
18
|
|
|
19
19
|
---
|
|
@@ -61,4 +61,4 @@ TASKS_PROPOSED: {N}
|
|
|
61
61
|
SUMMARY: {1-2 sentences}
|
|
62
62
|
```
|
|
63
63
|
|
|
64
|
-
The full report is at
|
|
64
|
+
The full report is at `.workflows/implementation/{primary-topic}/review-report-c{N}.md`. If tasks were proposed, the staging file is at `.workflows/implementation/{primary-topic}/review-tasks-c{N}.md`.
|
|
@@ -10,7 +10,7 @@ This step invokes the task writer agent to create plan tasks from approved revie
|
|
|
10
10
|
|
|
11
11
|
## Determine Format
|
|
12
12
|
|
|
13
|
-
Read the `format` field from the plan's frontmatter (
|
|
13
|
+
Read the `format` field from the plan's frontmatter (`.workflows/planning/{topic}/plan.md`). This determines which output format adapters to pass to the agent.
|
|
14
14
|
|
|
15
15
|
---
|
|
16
16
|
|
|
@@ -21,7 +21,7 @@ Read the `format` field from the plan's frontmatter (`docs/workflow/planning/{to
|
|
|
21
21
|
Pass via the orchestrator's prompt:
|
|
22
22
|
|
|
23
23
|
1. **Topic name** — the implementation topic (scopes tasks to correct plan)
|
|
24
|
-
2. **Staging file path** —
|
|
24
|
+
2. **Staging file path** — `.workflows/implementation/{topic}/review-tasks-c{cycle-number}.md`
|
|
25
25
|
3. **Plan path** — the implementation plan path
|
|
26
26
|
4. **Plan format reading adapter path** — `../../technical-planning/references/output-formats/{format}/reading.md`
|
|
27
27
|
5. **Plan format authoring adapter path** — `../../technical-planning/references/output-formats/{format}/authoring.md`
|
|
@@ -35,7 +35,7 @@ From each plan in scope, list every task across all phases:
|
|
|
35
35
|
Ensure the review output directory exists:
|
|
36
36
|
|
|
37
37
|
```bash
|
|
38
|
-
mkdir -p
|
|
38
|
+
mkdir -p .workflows/review/{topic}/r{N}
|
|
39
39
|
```
|
|
40
40
|
|
|
41
41
|
---
|
|
@@ -78,7 +78,7 @@ FINDINGS_COUNT: {N blocking issues}
|
|
|
78
78
|
SUMMARY: {1 sentence}
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
-
Full findings are written to
|
|
81
|
+
Full findings are written to `.workflows/review/{topic}/r{N}/qa-task-{index}.md`.
|
|
82
82
|
|
|
83
83
|
---
|
|
84
84
|
|
|
@@ -86,7 +86,7 @@ Full findings are written to `docs/workflow/review/{topic}/r{N}/qa-task-{index}.
|
|
|
86
86
|
|
|
87
87
|
Once all batches have completed:
|
|
88
88
|
|
|
89
|
-
1. Read all
|
|
89
|
+
1. Read all `.workflows/review/{topic}/r{N}/qa-task-*.md` files
|
|
90
90
|
2. Synthesize findings from file contents:
|
|
91
91
|
- Collect all tasks with `STATUS: Incomplete` or `STATUS: Issues Found` as blocking issues
|
|
92
92
|
- Collect all test issues (under/over-tested)
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
Aggregate QA findings into a review document using the **[template.md](template.md)**.
|
|
8
8
|
|
|
9
|
-
Write the review to
|
|
9
|
+
Write the review to `.workflows/review/{topic}/r{N}/review.md`. The review is always per-plan. The review number `r{N}` is passed in from the entry point.
|
|
10
10
|
|
|
11
11
|
**QA Verdict** (from Step 3):
|
|
12
12
|
- **Approve** — All acceptance criteria met, no blocking issues
|
|
@@ -122,7 +122,7 @@ No actionable tasks synthesized.
|
|
|
122
122
|
|
|
123
123
|
## C. Approval Gate
|
|
124
124
|
|
|
125
|
-
Read the staging file from
|
|
125
|
+
Read the staging file from `.workflows/implementation/{topic}/review-tasks-c{cycle-number}.md`.
|
|
126
126
|
|
|
127
127
|
Check `gate_mode` in the staging file frontmatter (`gated` or `auto`).
|
|
128
128
|
|
|
@@ -165,8 +165,10 @@ Sources: {sources}
|
|
|
165
165
|
|
|
166
166
|
```
|
|
167
167
|
· · · · · · · · · · · ·
|
|
168
|
-
|
|
169
|
-
|
|
168
|
+
Approve this task?
|
|
169
|
+
|
|
170
|
+
- **`y`/`yes`** — Approve this task
|
|
171
|
+
- **`a`/`auto`** — Approve this and all remaining tasks automatically
|
|
170
172
|
- **`s`/`skip`** — Skip this task
|
|
171
173
|
- **Comment** — Revise based on feedback
|
|
172
174
|
· · · · · · · · · · · ·
|
|
@@ -188,7 +190,7 @@ Task {current} of {total}: {title} — approved (auto).
|
|
|
188
190
|
|
|
189
191
|
Process user input:
|
|
190
192
|
|
|
191
|
-
#### If `
|
|
193
|
+
#### If `yes`
|
|
192
194
|
|
|
193
195
|
Update `status: approved` in the staging file.
|
|
194
196
|
|
|
@@ -252,7 +254,7 @@ review({topic}): add review remediation ({K} tasks)
|
|
|
252
254
|
|
|
253
255
|
For each plan that received new tasks:
|
|
254
256
|
|
|
255
|
-
1. Read the implementation tracking file at
|
|
257
|
+
1. Read the implementation tracking file at `.workflows/implementation/{topic}/tracking.md`
|
|
256
258
|
2. Update frontmatter:
|
|
257
259
|
- `status: in-progress`
|
|
258
260
|
- Remove `completed` field (if present)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: technical-specification
|
|
3
|
-
description: "Build validated specifications from source material through collaborative refinement. Use when: (1) User asks to create/build a specification from source material, (2) User wants to validate and refine content before planning, (3) Converting source material (discussions, research, requirements) into standalone specifications, (4) User says 'specify this' or 'create a spec', (5) Need to filter hallucinations and enrich gaps before formal planning. Creates specifications in
|
|
3
|
+
description: "Build validated specifications from source material through collaborative refinement. Use when: (1) User asks to create/build a specification from source material, (2) User wants to validate and refine content before planning, (3) Converting source material (discussions, research, requirements) into standalone specifications, (4) User says 'specify this' or 'create a spec', (5) Need to filter hallucinations and enrich gaps before formal planning. Creates specifications in .workflows/specification/{topic}/specification.md that can be used to build implementation plans."
|
|
4
4
|
user-invocable: false
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -35,7 +35,7 @@ Either way: Transform unvalidated reference material into a specification that's
|
|
|
35
35
|
|
|
36
36
|
```
|
|
37
37
|
I need source material to build a specification from. Could you point me to the
|
|
38
|
-
source files (e.g.,
|
|
38
|
+
source files (e.g., .workflows/discussion/{topic}.md), or provide the content
|
|
39
39
|
directly?
|
|
40
40
|
```
|
|
41
41
|
|
|
@@ -47,7 +47,7 @@ directly?
|
|
|
47
47
|
|
|
48
48
|
```
|
|
49
49
|
What should the specification be named? This determines the output file:
|
|
50
|
-
|
|
50
|
+
.workflows/specification/{name}/specification.md
|
|
51
51
|
```
|
|
52
52
|
|
|
53
53
|
**STOP.** Wait for user response.
|
|
@@ -97,7 +97,7 @@ When announcing a new step, output `── ── ── ── ──` on its o
|
|
|
97
97
|
|
|
98
98
|
## Step 0: Resume Detection
|
|
99
99
|
|
|
100
|
-
Check if
|
|
100
|
+
Check if `.workflows/specification/{topic}/specification.md` exists.
|
|
101
101
|
|
|
102
102
|
#### If no file exists
|
|
103
103
|
|
|
@@ -147,7 +147,7 @@ Load **[verify-source-material.md](references/verify-source-material.md)** and f
|
|
|
147
147
|
|
|
148
148
|
Load **[specification-format.md](references/specification-format.md)** for the template.
|
|
149
149
|
|
|
150
|
-
Create the specification file at
|
|
150
|
+
Create the specification file at `.workflows/specification/{topic}/specification.md`:
|
|
151
151
|
|
|
152
152
|
1. Use the frontmatter template from specification-format.md
|
|
153
153
|
2. Set `topic` to the kebab-case topic name
|
|
@@ -12,9 +12,9 @@ The same workflow applies: present the dependencies section for approval, then l
|
|
|
12
12
|
|
|
13
13
|
Dependencies are **blockers** — things that must exist before implementation can begin.
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
If feature B requires data that feature A produces, then feature A is a dependency — B cannot function without A's output existing first.
|
|
16
16
|
|
|
17
|
-
**The test**: "If system X doesn't exist, can we still
|
|
17
|
+
**The test**: "If system X doesn't exist, can we still deliver this?"
|
|
18
18
|
- If **no** → X is a dependency
|
|
19
19
|
- If **yes** → X is not a dependency (even if the systems work together)
|
|
20
20
|
|
|
@@ -8,7 +8,7 @@ Review tracking files capture analysis findings so work persists across context
|
|
|
8
8
|
|
|
9
9
|
## Location
|
|
10
10
|
|
|
11
|
-
Store tracking files in the specification topic directory (
|
|
11
|
+
Store tracking files in the specification topic directory (`.workflows/specification/{topic}/`), cycle-numbered:
|
|
12
12
|
- `review-input-tracking-c{N}.md` — Phase 1 findings for cycle N
|
|
13
13
|
- `review-gap-analysis-tracking-c{N}.md` — Phase 2 findings for cycle N
|
|
14
14
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
This file defines the canonical structure for specification files (
|
|
7
|
+
This file defines the canonical structure for specification files (`.workflows/specification/{topic}/specification.md`).
|
|
8
8
|
|
|
9
9
|
The specification is a single file per topic. Structure is **flexible** — organize around phases and subject matter, not rigid sections. This is a working document.
|
|
10
10
|
|
|
@@ -15,6 +15,6 @@ Verify that all source material exists and is accessible before beginning specif
|
|
|
15
15
|
### Example
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
ls
|
|
19
|
-
ls
|
|
18
|
+
ls .workflows/discussion/auth-flow.md
|
|
19
|
+
ls .workflows/research/api-patterns.md
|
|
20
20
|
```
|
|
@@ -17,14 +17,14 @@ Display a readable summary of a plan's phases, tasks, and status.
|
|
|
17
17
|
If no topic is specified, list available plans:
|
|
18
18
|
|
|
19
19
|
```bash
|
|
20
|
-
ls
|
|
20
|
+
ls .workflows/planning/
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
Ask the user which plan to view.
|
|
24
24
|
|
|
25
25
|
## Step 2: Read the Plan Index
|
|
26
26
|
|
|
27
|
-
Read the plan file from
|
|
27
|
+
Read the plan file from `.workflows/planning/{topic}/plan.md` and check the `format:` field in the frontmatter.
|
|
28
28
|
|
|
29
29
|
## Step 3: Load Format Reading Reference
|
|
30
30
|
|