owflow 0.2.0 → 0.4.2
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 +83 -28
- package/dist/agents/code-reviewer.md +1 -1
- package/dist/agents/information-gatherer.md +691 -691
- package/dist/agents/production-readiness-checker.md +1 -1
- package/dist/agents/project-analyzer.md +0 -1
- package/dist/agents/research-planner.md +450 -447
- package/dist/agents/research-synthesizer.md +403 -401
- package/dist/agents/solution-brainstormer.md +257 -257
- package/dist/agents/solution-designer.md +372 -372
- package/dist/agents/task-classifier.md +3 -3
- package/dist/commands/agents-md-generator.md +36 -0
- package/dist/commands/dev-analyze.md +33 -0
- package/dist/commands/dev-bugfix.md +37 -0
- package/dist/commands/dev-finalize.md +33 -0
- package/dist/commands/dev-implement.md +34 -0
- package/dist/commands/dev-plan.md +37 -0
- package/dist/commands/dev-spec.md +37 -0
- package/dist/commands/dev-tdd-red.md +33 -0
- package/dist/commands/dev-verify.md +33 -0
- package/dist/commands/development.md +11 -12
- package/dist/commands/diagrams-mermaid.md +3 -4
- package/dist/commands/flow-init.md +3 -4
- package/dist/commands/goal-development.md +32 -0
- package/dist/commands/goal-research.md +33 -0
- package/dist/commands/html-renderer.md +3 -4
- package/dist/commands/migration.md +3 -4
- package/dist/commands/performance.md +3 -4
- package/dist/commands/research-brainstorm.md +33 -0
- package/dist/commands/research-converge.md +33 -0
- package/dist/commands/research-design.md +33 -0
- package/dist/commands/research-finalize.md +33 -0
- package/dist/commands/research-fork.md +40 -0
- package/dist/commands/research-gather.md +33 -0
- package/dist/commands/research-plan.md +37 -0
- package/dist/commands/research-quick.md +37 -0
- package/dist/commands/research-synthesize.md +33 -0
- package/dist/commands/research.md +55 -37
- package/dist/commands/reviews-code.md +4 -4
- package/dist/commands/reviews-pragmatic.md +4 -4
- package/dist/commands/reviews-production-readiness.md +4 -4
- package/dist/commands/reviews-reality-check.md +4 -4
- package/dist/commands/reviews-spec-audit.md +4 -4
- package/dist/commands/rule-reviewer.md +38 -0
- package/dist/commands/standards-discover.md +3 -4
- package/dist/commands/standards-update.md +3 -4
- package/dist/commands/work.md +21 -21
- package/dist/configuration/skills-config.js +1 -1
- package/dist/index.js +5 -2
- package/dist/skills/agents-md-generator/SKILL.md +223 -0
- package/dist/skills/codebase-analyzer/SKILL.md +1 -1
- package/dist/skills/dev-analyze/SKILL.md +115 -0
- package/dist/skills/dev-bugfix/SKILL.md +452 -0
- package/dist/skills/dev-finalize/SKILL.md +118 -0
- package/dist/skills/dev-implement/SKILL.md +167 -0
- package/dist/skills/dev-plan/SKILL.md +147 -0
- package/dist/skills/dev-spec/SKILL.md +182 -0
- package/dist/skills/dev-tdd-red/SKILL.md +94 -0
- package/dist/skills/dev-verify/SKILL.md +160 -0
- package/dist/skills/development/SKILL.md +130 -522
- package/dist/skills/diagrams-mermaid/SKILL.md +3 -1
- package/dist/skills/docs-manager/SKILL.md +4 -4
- package/dist/skills/docs-manager/references/agents-md-template.md +1 -1
- package/dist/skills/flow-init/SKILL.md +34 -13
- package/dist/skills/goal-development/SKILL.md +96 -0
- package/dist/skills/goal-research/SKILL.md +118 -0
- package/dist/skills/html-renderer/SKILL.md +14 -1
- package/dist/skills/implementation-plan-executor/SKILL.md +1 -1
- package/dist/skills/implementation-verifier/SKILL.md +1 -1
- package/dist/skills/migration/SKILL.md +63 -18
- package/dist/skills/orchestrator-framework/SKILL.md +1 -1
- package/dist/skills/orchestrator-framework/references/command-namespacing.md +7 -0
- package/dist/skills/orchestrator-framework/references/confirm-or-revise-exception.md +20 -0
- package/dist/skills/orchestrator-framework/references/delegation-rules.md +54 -0
- package/dist/skills/orchestrator-framework/references/dispatcher-handoff.md +27 -0
- package/dist/skills/orchestrator-framework/references/gate-contract.md +112 -0
- package/dist/skills/orchestrator-framework/references/orchestrator-creation-checklist.md +3 -0
- package/dist/skills/orchestrator-framework/references/orchestrator-patterns.md +8 -50
- package/dist/skills/performance/SKILL.md +52 -18
- package/dist/skills/research/SKILL.md +249 -462
- package/dist/skills/research-brainstorm/SKILL.md +120 -0
- package/dist/skills/{research → research-brainstorm}/references/brainstorming-techniques.md +1 -1
- package/dist/skills/research-converge/SKILL.md +130 -0
- package/dist/skills/research-design/SKILL.md +146 -0
- package/dist/skills/{research → research-design}/references/design-techniques.md +1 -1
- package/dist/skills/research-finalize/SKILL.md +125 -0
- package/dist/skills/research-fork/SKILL.md +190 -0
- package/dist/skills/research-gather/SKILL.md +133 -0
- package/dist/skills/research-plan/SKILL.md +141 -0
- package/dist/skills/research-quick/SKILL.md +139 -0
- package/dist/skills/research-synthesize/SKILL.md +127 -0
- package/dist/skills/rule-reviewer/SKILL.md +334 -0
- package/dist/skills/standards-discover/SKILL.md +37 -14
- package/dist/skills/standards-update/SKILL.md +58 -10
- package/dist/templates/orchestrator-state-development.yml +14 -13
- package/dist/templates/orchestrator-state-research.yml +19 -13
- package/dist/tools/fork_task.js +36 -0
- package/dist/tools/verify_template.js +10 -31
- package/dist/utils/file-util.js +14 -8
- package/dist/utils/fork-task.js +74 -0
- package/dist/utils/plugin-info.js +20 -0
- package/dist/utils/yaml-structure.js +32 -0
- package/package.json +1 -1
- package/dist/commands/quick-bugfix.md +0 -37
- package/dist/commands/quick-dev.md +0 -182
- package/dist/commands/quick-plan.md +0 -167
- package/dist/constants.js +0 -4
- package/dist/skills/quick-bugfix/SKILL.md +0 -311
- package/dist/templates/quick-bugfix-task.yml +0 -10
- package/dist/templates/quick-dev-task.yml +0 -10
- package/dist/templates/quick-plan-task.yml +0 -11
- /package/dist/skills/{research → research-plan}/references/research-methodologies.md +0 -0
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: quick-plan
|
|
3
|
-
description: Enter planning mode with AI SDLC standards awareness
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Planning Mode with Standards Awareness
|
|
7
|
-
|
|
8
|
-
Enter OpenCode's planning mode for a task, with automatic discovery of project standards from `.owflow/docs/`.
|
|
9
|
-
|
|
10
|
-
## Usage
|
|
11
|
-
|
|
12
|
-
```bash
|
|
13
|
-
/quick-plan [task description]
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Examples
|
|
17
|
-
|
|
18
|
-
```bash
|
|
19
|
-
/quick-plan "Add user authentication with email/password"
|
|
20
|
-
/quick-plan "Refactor the payment processing module"
|
|
21
|
-
/quick-plan
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
---
|
|
25
|
-
|
|
26
|
-
## Workflow
|
|
27
|
-
|
|
28
|
-
### Step 1: Parse Input
|
|
29
|
-
|
|
30
|
-
**Get the task description:**
|
|
31
|
-
|
|
32
|
-
- If provided as argument, use it directly
|
|
33
|
-
- If not provided, use question to prompt:
|
|
34
|
-
```
|
|
35
|
-
"What would you like to plan? Please describe the task or feature."
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
### Step 1b: Create Task Directory
|
|
39
|
-
|
|
40
|
-
**Create a lightweight task directory for artifact anchoring.**
|
|
41
|
-
|
|
42
|
-
1. Generate a task name from the task description:
|
|
43
|
-
- Extract 3–5 key words, convert to lowercase kebab-case
|
|
44
|
-
- Prepend today's date: `YYYY-MM-DD-kebab-name`
|
|
45
|
-
- Examples: "Add retry logic to API client" → `2026-05-28-add-api-retry-logic`, "Refactor the payment processing module" → `2026-05-28-refactor-payment-module`
|
|
46
|
-
2. Create directory: `.owflow/tasks/quick-plan/YYYY-MM-DD-task-name/`
|
|
47
|
-
3. Create `analysis/` subdirectory inside it
|
|
48
|
-
4. Write `task.yml` with initial state using the template [src/templates/quick-plan-task.yml](../templates/quick-plan-task.yml).
|
|
49
|
-
5. **CRITICAL**: Use the `verify_template` tool immediately after creation to check YAML validity against `quick-plan-task.yml`.
|
|
50
|
-
|
|
51
|
-
### Step 2: Discover and Read Standards (BEFORE Plan Mode)
|
|
52
|
-
|
|
53
|
-
**CRITICAL: This step MUST complete before calling Plan Agent.**
|
|
54
|
-
|
|
55
|
-
1. **Check if `.owflow/docs/INDEX.md` exists**
|
|
56
|
-
- **If not exists**: Note that no standards are available, skip to Step 3
|
|
57
|
-
- **If exists**: Continue with discovery below
|
|
58
|
-
|
|
59
|
-
2. **Read INDEX.md** to understand available standards and documentation
|
|
60
|
-
|
|
61
|
-
3. **Identify applicable standards** based on:
|
|
62
|
-
- The categories and files listed in INDEX.md
|
|
63
|
-
- The nature of the task being planned
|
|
64
|
-
- Keywords and patterns in the task description (e.g., "API" → api standards, "form" → validation standards, "upload" → file-handling standards)
|
|
65
|
-
|
|
66
|
-
4. **READ the actual standard files** using the Read tool — reading INDEX.md alone is NOT sufficient
|
|
67
|
-
|
|
68
|
-
5. **Summarize key guidelines** from each standard file read — these will carry into plan mode as context
|
|
69
|
-
6. **Update `task.yml`**: Add paths of standards read to `standards_applied` list
|
|
70
|
-
|
|
71
|
-
### Step 2b: Write Findings
|
|
72
|
-
|
|
73
|
-
**After standards discovery, write `analysis/findings.md`** in the task directory:
|
|
74
|
-
|
|
75
|
-
```markdown
|
|
76
|
-
# Task Analysis
|
|
77
|
-
|
|
78
|
-
## Context
|
|
79
|
-
[What was analyzed to inform the plan — codebase areas explored, existing patterns found]
|
|
80
|
-
|
|
81
|
-
## Key Decisions
|
|
82
|
-
[Architectural or implementation decisions made during planning]
|
|
83
|
-
|
|
84
|
-
## Standards Referenced
|
|
85
|
-
- [standard file]: [key guideline applied]
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
### Step 3: Enter Planning Mode
|
|
89
|
-
|
|
90
|
-
**Use the `Plan agent` to trigger OpenCode's builtin planning mode.**
|
|
91
|
-
|
|
92
|
-
**Standards context from Step 2 MUST actively inform all plan mode phases:**
|
|
93
|
-
|
|
94
|
-
- **Phase 1 (Explore)**: When launching Explore agents, include in the prompt: "The following project standards apply to this task: [list standard files and key guidelines from Step 2]. Verify how the existing codebase follows these standards."
|
|
95
|
-
- **Phase 2 (Plan)**: When launching Plan agents, include in the prompt: "Apply these project standards in your implementation plan: [list standard files and key guidelines from Step 2]. Each implementation step must conform to these standards."
|
|
96
|
-
- **Phase 4 (Final Plan)**: The plan file must incorporate standards into the implementation steps themselves, not just list them in a separate section.
|
|
97
|
-
|
|
98
|
-
The planning mode will:
|
|
99
|
-
|
|
100
|
-
1. Launch Explore agents to understand the codebase (with standards context)
|
|
101
|
-
2. Launch Plan agents to design implementation approach (with standards constraints)
|
|
102
|
-
3. Review and verify alignment with user intent
|
|
103
|
-
4. Write final plan to plan file (with standards woven into steps)
|
|
104
|
-
5. Ask for user approval (gated on mandatory standards sections)
|
|
105
|
-
|
|
106
|
-
### Approval question gate: Mandatory Standards Sections
|
|
107
|
-
|
|
108
|
-
**BLOCKING: Do NOT call ask user for approval until the plan file contains these sections:**
|
|
109
|
-
|
|
110
|
-
1. **"## Applicable Standards"** — list each standard file that was read, with key guidelines extracted from each. If no standards exist, state: "No AI SDLC standards found. Consider running `/flow-init`."
|
|
111
|
-
|
|
112
|
-
2. **"## Standards Compliance Checklist"** — checkboxes for each applicable standard guideline that implementation must follow. Example:
|
|
113
|
-
```markdown
|
|
114
|
-
- [ ] API endpoints follow REST naming conventions (from `standards/backend/api.md`)
|
|
115
|
-
- [ ] Error responses use standard error format (from `standards/backend/api.md`)
|
|
116
|
-
- [ ] New components use TypeScript strict mode (from `standards/frontend/components.md`)
|
|
117
|
-
```
|
|
118
|
-
|
|
119
|
-
If these sections are missing from the plan file, add them before asking user for approval.
|
|
120
|
-
|
|
121
|
-
### Graceful Fallback
|
|
122
|
-
|
|
123
|
-
**If `.owflow/docs/` does not exist:**
|
|
124
|
-
|
|
125
|
-
Continue with planning mode normally. The "Applicable Standards" section in the plan should note:
|
|
126
|
-
|
|
127
|
-
```
|
|
128
|
-
No AI SDLC standards found. Consider running `/flow-init` to initialize
|
|
129
|
-
project documentation and coding standards for better consistency.
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
## What This Does
|
|
133
|
-
|
|
134
|
-
1. **Parses** task description from user input
|
|
135
|
-
2. **Creates** lightweight task directory with `task.yml` for artifact anchoring
|
|
136
|
-
3. **Discovers and READS** applicable standard files from `.owflow/docs/` (BEFORE plan mode)
|
|
137
|
-
4. **Writes** `analysis/findings.md` with task context and key decisions
|
|
138
|
-
5. **Enters** OpenCode's builtin planning mode via delegating to `Plan Agent` with standards already loaded
|
|
139
|
-
6. **Produces** a plan file with implementation approach, applicable standards, and compliance checklist
|
|
140
|
-
7. **Gates** Approval question on mandatory standards sections in the plan file
|
|
141
|
-
8. **Updates** `task.yml` with `status: completed` and `plan_path` after plan approval
|
|
142
|
-
|
|
143
|
-
## Benefits Over Manual Planning
|
|
144
|
-
|
|
145
|
-
- Automatic standards discovery and integration
|
|
146
|
-
- Standards read BEFORE planning begins (not as an afterthought)
|
|
147
|
-
- Plan file for review before implementation
|
|
148
|
-
- Standards compliance checklist built into the plan
|
|
149
|
-
|
|
150
|
-
## After Planning
|
|
151
|
-
|
|
152
|
-
Once the plan is approved:
|
|
153
|
-
|
|
154
|
-
- **Update `task.yml`**: set `status: completed`, `plan_path: [path to plan file]`, `updated: [now]`
|
|
155
|
-
- Implementation begins based on the plan
|
|
156
|
-
- Standards are applied during coding
|
|
157
|
-
|
|
158
|
-
## Post-Implementation Verification
|
|
159
|
-
|
|
160
|
-
After implementation is complete, verify standards compliance using the checklist from the plan:
|
|
161
|
-
|
|
162
|
-
1. **Review the "Standards Compliance Checklist"** in the plan file
|
|
163
|
-
2. **For each checklist item**: verify implementation follows the guideline
|
|
164
|
-
3. **Document verification results** (pass/fail for each item)
|
|
165
|
-
4. **Address any violations** before marking task complete
|
|
166
|
-
|
|
167
|
-
This ensures the discovered standards are actually enforced, not just documented.
|
package/dist/constants.js
DELETED
|
@@ -1,311 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: quick-bugfix
|
|
3
|
-
description: Quick bug fix with TDD red/green gates and complexity escalation
|
|
4
|
-
argument-hint: "[bug description]"
|
|
5
|
-
user-invocable: true
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Quick Bug Fix
|
|
9
|
-
|
|
10
|
-
Lightweight TDD-driven bug fix workflow with planning mode. Analyze the bug, present a fix plan for approval, then reproduce with a failing test, fix, and verify. No orchestrator state, no subagents. Creates lightweight task directory for artifact anchoring.
|
|
11
|
-
|
|
12
|
-
For complex bugs that grow beyond a quick fix, suggests escalating to the full development workflow (`/development`).
|
|
13
|
-
|
|
14
|
-
## Usage
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
/quick-bugfix "Login form submits twice on slow connections"
|
|
18
|
-
/quick-bugfix "API returns 500 when email contains special characters"
|
|
19
|
-
/quick-bugfix "Dark mode toggle doesn't persist after refresh"
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## When to Use
|
|
23
|
-
|
|
24
|
-
**Use `/quick-bugfix` when:**
|
|
25
|
-
|
|
26
|
-
- Bug is reasonably scoped and reproducible
|
|
27
|
-
- You have a clear description of expected vs actual behavior
|
|
28
|
-
- Fix likely touches a small number of files
|
|
29
|
-
|
|
30
|
-
**Use `/development` instead when:**
|
|
31
|
-
|
|
32
|
-
- Bug requires architectural changes
|
|
33
|
-
- Multiple subsystems are involved
|
|
34
|
-
- You need formal specification and planning
|
|
35
|
-
|
|
36
|
-
---
|
|
37
|
-
|
|
38
|
-
## Workflow
|
|
39
|
-
|
|
40
|
-
### Step 1: Parse Input
|
|
41
|
-
|
|
42
|
-
**Get the bug description:**
|
|
43
|
-
|
|
44
|
-
- If provided as argument, use it directly
|
|
45
|
-
- If not provided, scan the recent conversation for bug context (error messages, reproduction steps, discussed symptoms). If found, use that as the bug description.
|
|
46
|
-
- Only if no argument AND no bug context in session, use question:
|
|
47
|
-
```
|
|
48
|
-
"Describe the bug — what's the expected behavior vs actual behavior?"
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
### Step 2: Create Task Directory
|
|
52
|
-
|
|
53
|
-
**Create a lightweight task directory for artifact anchoring.**
|
|
54
|
-
|
|
55
|
-
1. Generate a task name from the bug description:
|
|
56
|
-
- Extract 3–5 key words, convert to lowercase kebab-case
|
|
57
|
-
- Prepend today's date: `YYYY-MM-DD-kebab-name`
|
|
58
|
-
- Examples: "Fix login timeout bug" → `2026-05-28-fix-login-timeout`, "Login form submits twice on slow connections" → `2026-05-28-login-double-submit`
|
|
59
|
-
2. Create directory: `.owflow/tasks/quick-bugfix/YYYY-MM-DD-task-name/`
|
|
60
|
-
3. Create `analysis/` subdirectory inside it
|
|
61
|
-
4. Write `task.yml` with initial state using the template [src/templates/quick-bugfix-task.yml](../../templates/quick-bugfix-task.yml).
|
|
62
|
-
5. **CRITICAL**: Use the `verify_template` tool immediately after creation to check YAML validity against `quick-bugfix-task.yml`.
|
|
63
|
-
|
|
64
|
-
### Step 3: Discover Standards
|
|
65
|
-
|
|
66
|
-
**CRITICAL: This step MUST complete before entering plan mode.**
|
|
67
|
-
|
|
68
|
-
**Check if `.owflow/docs/INDEX.md` exists:**
|
|
69
|
-
|
|
70
|
-
**If exists:**
|
|
71
|
-
|
|
72
|
-
1. Read INDEX.md to discover available documentation and standards
|
|
73
|
-
2. Identify which standards are relevant based on:
|
|
74
|
-
- The categories and files listed in INDEX.md
|
|
75
|
-
- The area of the bug (e.g., API, frontend, database)
|
|
76
|
-
- Keywords in the bug description
|
|
77
|
-
3. **READ the applicable standard files** (see Standards Reading Enforcement below)
|
|
78
|
-
4. **Update `task.yml`**: Add paths of standards read to `standards_applied` list
|
|
79
|
-
|
|
80
|
-
**If not exists:**
|
|
81
|
-
|
|
82
|
-
- Note that no standards are available
|
|
83
|
-
- Suggest running `/flow-init` in completion message
|
|
84
|
-
|
|
85
|
-
### Standards Reading Enforcement (MANDATORY)
|
|
86
|
-
|
|
87
|
-
**BLOCKING**: Reading INDEX.md alone is NOT sufficient. You MUST read actual standard files.
|
|
88
|
-
|
|
89
|
-
**Enforcement Process**:
|
|
90
|
-
|
|
91
|
-
1. Read INDEX.md to discover available standards
|
|
92
|
-
2. Identify which standards apply based on the bug area
|
|
93
|
-
3. **READ each applicable standard file** using Read tool (not just note it exists)
|
|
94
|
-
4. Apply standards during fix implementation
|
|
95
|
-
5. List applied standards in completion summary
|
|
96
|
-
|
|
97
|
-
**Examples of standard discovery**:
|
|
98
|
-
|
|
99
|
-
- Bug in API handler → Read API and error-handling standards
|
|
100
|
-
- Bug in form validation → Read validation and frontend standards
|
|
101
|
-
- Bug in database query → Read database and backend standards
|
|
102
|
-
|
|
103
|
-
### Step 4: Analyze & Assess Complexity
|
|
104
|
-
|
|
105
|
-
**Explore the codebase to understand the bug:**
|
|
106
|
-
|
|
107
|
-
1. Search for relevant files (Glob, Grep, Read)
|
|
108
|
-
2. Trace the code path where the bug occurs
|
|
109
|
-
3. Identify: likely root cause, affected files, existing tests
|
|
110
|
-
4. Form a root cause hypothesis
|
|
111
|
-
|
|
112
|
-
**Complexity Escalation Check:**
|
|
113
|
-
|
|
114
|
-
Assess whether this bug exceeds quick-fix scope. If **2 or more** of these signals are detected, suggest escalation:
|
|
115
|
-
|
|
116
|
-
| Signal | Example |
|
|
117
|
-
| ----------------------------------------------------------- | ---------------------------------------------------------------- |
|
|
118
|
-
| Changes span 5+ files across multiple modules | Bug in shared utility affects API, frontend, and background jobs |
|
|
119
|
-
| Requires database schema or data model changes | Missing column, wrong relationship, migration needed |
|
|
120
|
-
| Multiple valid fix approaches with architectural trade-offs | Could fix at API layer, middleware layer, or client layer |
|
|
121
|
-
| Security-sensitive code | Auth, crypto, permissions, input sanitization |
|
|
122
|
-
| Root cause unclear after initial analysis | Symptoms don't point to a single location |
|
|
123
|
-
|
|
124
|
-
**If escalation triggered:**
|
|
125
|
-
|
|
126
|
-
**Write `analysis/findings.md`** in the task directory with the analysis captured so far:
|
|
127
|
-
|
|
128
|
-
```markdown
|
|
129
|
-
# Bug Analysis
|
|
130
|
-
|
|
131
|
-
## Root Cause
|
|
132
|
-
[Root cause hypothesis with evidence — file paths, code references]
|
|
133
|
-
|
|
134
|
-
## Affected Files
|
|
135
|
-
- `path/to/file` — reason
|
|
136
|
-
|
|
137
|
-
## Complexity Assessment
|
|
138
|
-
- [ ] Changes span 5+ files across multiple modules
|
|
139
|
-
- [ ] Requires database schema changes
|
|
140
|
-
- [ ] Multiple valid fix approaches with architectural trade-offs
|
|
141
|
-
- [ ] Security-sensitive code
|
|
142
|
-
- [ ] Root cause unclear after initial analysis
|
|
143
|
-
|
|
144
|
-
Signals detected: X of 5
|
|
145
|
-
|
|
146
|
-
## Test Strategy
|
|
147
|
-
[How the bug will be reproduced with a failing test]
|
|
148
|
-
|
|
149
|
-
## Standards Referenced
|
|
150
|
-
- [standard file]: [key guideline applied]
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
Use question:
|
|
154
|
-
|
|
155
|
-
- Question: "This bug appears more complex than a quick fix — [describe why]. How would you like to proceed?"
|
|
156
|
-
- Options:
|
|
157
|
-
1. "Continue with quick fix" — proceed, accepting the complexity
|
|
158
|
-
2. "Switch to full development workflow" — escalate (see below)
|
|
159
|
-
|
|
160
|
-
**If user chooses to escalate:**
|
|
161
|
-
|
|
162
|
-
1. Ensure `analysis/findings.md` is written (above)
|
|
163
|
-
2. Update `task.yml`: set `status: escalated`, `escalation_reason: "[signals detected]"`, `updated: [now]`
|
|
164
|
-
3. Tell the user: "Run `/development .owflow/tasks/quick-bugfix/YYYY-MM-DD-task-name` to continue with full workflow."
|
|
165
|
-
4. Do NOT set `escalated_to` — the development orchestrator will set it
|
|
166
|
-
5. `summary.md` is NOT written on escalation
|
|
167
|
-
|
|
168
|
-
**If no escalation needed or user chooses to continue:**
|
|
169
|
-
|
|
170
|
-
Write `analysis/findings.md` (same template above — captures analysis for auditability), then proceed to Step 5.
|
|
171
|
-
|
|
172
|
-
### Step 5: Enter Planning Mode
|
|
173
|
-
|
|
174
|
-
**Use the `Plan Agent` to present the fix plan for user approval.**
|
|
175
|
-
|
|
176
|
-
Standards context from Step 3 and analysis from Step 4 MUST inform the plan.
|
|
177
|
-
|
|
178
|
-
**Plan file content:**
|
|
179
|
-
|
|
180
|
-
```markdown
|
|
181
|
-
## Bug Analysis
|
|
182
|
-
|
|
183
|
-
**Root Cause**: [hypothesis with evidence — file paths, code references]
|
|
184
|
-
**Affected Files**: [list of files that need changes]
|
|
185
|
-
|
|
186
|
-
## Proposed Fix
|
|
187
|
-
|
|
188
|
-
[Description of the fix approach — what changes, why this approach]
|
|
189
|
-
|
|
190
|
-
## Test Strategy
|
|
191
|
-
|
|
192
|
-
[What the failing test will assert — setup conditions, expected behavior]
|
|
193
|
-
|
|
194
|
-
## Applicable Standards
|
|
195
|
-
|
|
196
|
-
[List each standard file read, with key guidelines extracted from each.
|
|
197
|
-
If no standards exist: "No AI SDLC standards found. Consider running `/flow-init`."]
|
|
198
|
-
|
|
199
|
-
## Standards Compliance Checklist
|
|
200
|
-
|
|
201
|
-
- [ ] [Guideline from standard file] (from `standards/[path]`)
|
|
202
|
-
- [ ] [Guideline from standard file] (from `standards/[path]`)
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
### User approval gate: Mandatory Sections
|
|
206
|
-
|
|
207
|
-
**BLOCKING: Do NOT ask for user approval until the plan file contains:**
|
|
208
|
-
|
|
209
|
-
1. **"## Bug Analysis"** — root cause hypothesis with evidence
|
|
210
|
-
2. **"## Proposed Fix"** — what changes and why
|
|
211
|
-
3. **"## Test Strategy"** — what the TDD red test will assert
|
|
212
|
-
4. **"## Applicable Standards"** — standards read and key guidelines
|
|
213
|
-
5. **"## Standards Compliance Checklist"** — checkboxes for applicable guidelines
|
|
214
|
-
|
|
215
|
-
If any section is missing, add it before asking for user approval.
|
|
216
|
-
|
|
217
|
-
### Step 6: TDD Red Gate
|
|
218
|
-
|
|
219
|
-
**Write a failing test that reproduces the bug.**
|
|
220
|
-
|
|
221
|
-
1. Identify the appropriate test file (existing test suite or create new test file following project conventions)
|
|
222
|
-
2. Write a test that:
|
|
223
|
-
- Sets up the conditions that trigger the bug
|
|
224
|
-
- Asserts the **correct** (expected) behavior
|
|
225
|
-
- Should FAIL with current code (proving the bug exists)
|
|
226
|
-
3. Run the test
|
|
227
|
-
|
|
228
|
-
**The test MUST fail.** This proves the bug is real and reproducible.
|
|
229
|
-
|
|
230
|
-
**If the test passes:**
|
|
231
|
-
|
|
232
|
-
- The bug may not be what we think, or it's already fixed
|
|
233
|
-
- Investigate further — re-read the bug description, check if conditions are correct
|
|
234
|
-
- Use question: "The reproduction test passes — the expected behavior already works under these conditions. Is the bug description accurate, or are there additional conditions?"
|
|
235
|
-
|
|
236
|
-
### Step 7: Fix & Verify (TDD Green)
|
|
237
|
-
|
|
238
|
-
**Implement the fix:**
|
|
239
|
-
|
|
240
|
-
1. Apply the fix based on the approved plan from Step 5
|
|
241
|
-
2. **Apply discovered standards** from Step 3
|
|
242
|
-
3. Run the failing test — it MUST now pass
|
|
243
|
-
4. Run the full test file and related test files to check for regressions
|
|
244
|
-
|
|
245
|
-
**If tests fail after fix:**
|
|
246
|
-
|
|
247
|
-
- Analyze the failure
|
|
248
|
-
- Adjust the fix
|
|
249
|
-
- Re-run tests
|
|
250
|
-
- Maximum 3 fix-and-verify iterations
|
|
251
|
-
|
|
252
|
-
**If still failing after 3 attempts:**
|
|
253
|
-
|
|
254
|
-
- Stop and present findings to the user
|
|
255
|
-
- Suggest escalating to `/development` for a more thorough approach
|
|
256
|
-
|
|
257
|
-
### Step 8: Summary
|
|
258
|
-
|
|
259
|
-
**Write `summary.md`** in the task directory:
|
|
260
|
-
|
|
261
|
-
```markdown
|
|
262
|
-
# Task Summary
|
|
263
|
-
|
|
264
|
-
**Command**: quick-bugfix
|
|
265
|
-
**Date**: YYYY-MM-DD
|
|
266
|
-
**Status**: completed
|
|
267
|
-
|
|
268
|
-
## What Was Done
|
|
269
|
-
[Root cause and fix description]
|
|
270
|
-
|
|
271
|
-
## Files Modified
|
|
272
|
-
- `path/to/file`
|
|
273
|
-
|
|
274
|
-
## Standards Applied
|
|
275
|
-
- [standard]: [guideline]
|
|
276
|
-
|
|
277
|
-
## Tests
|
|
278
|
-
- [test file] — [result]
|
|
279
|
-
|
|
280
|
-
## Commit Suggestion
|
|
281
|
-
[conventional commit message]
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
**Update `task.yml`**: set `status: completed`, `updated: [now]`.
|
|
285
|
-
|
|
286
|
-
**Post-implementation: verify standards compliance using the checklist from the plan file.**
|
|
287
|
-
|
|
288
|
-
---
|
|
289
|
-
|
|
290
|
-
## What This Does
|
|
291
|
-
|
|
292
|
-
1. **Parses** bug description from user input
|
|
293
|
-
2. **Creates** lightweight task directory with `task.yml` for artifact anchoring
|
|
294
|
-
3. **Discovers** applicable standards from `.owflow/docs/INDEX.md`
|
|
295
|
-
4. **Analyzes** codebase to find root cause, writes `analysis/findings.md`, and assesses complexity
|
|
296
|
-
5. **Escalates** to full development workflow if bug is too complex (updates `task.yml` status to `escalated`)
|
|
297
|
-
6. **Plans** the fix and presents for user approval via planning mode
|
|
298
|
-
7. **Reproduces** bug with a failing test (TDD Red)
|
|
299
|
-
8. **Fixes** the bug and verifies test passes (TDD Green)
|
|
300
|
-
9. **Summarizes** in `summary.md`, updates `task.yml` status to `completed`
|
|
301
|
-
|
|
302
|
-
## Graceful Fallback
|
|
303
|
-
|
|
304
|
-
**If `.owflow/docs/` does not exist:**
|
|
305
|
-
|
|
306
|
-
Proceed with the bug fix normally, then note:
|
|
307
|
-
|
|
308
|
-
```
|
|
309
|
-
"No AI SDLC standards found. Consider running `/flow-init` to initialize
|
|
310
|
-
project documentation and coding standards for better consistency."
|
|
311
|
-
```
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
command: quick-bugfix
|
|
2
|
-
title: "Short title from bug description"
|
|
3
|
-
description: "Full bug description as provided by user"
|
|
4
|
-
status: in_progress
|
|
5
|
-
created: "YYYY-MM-DDTHH:MM:SSZ"
|
|
6
|
-
updated: "YYYY-MM-DDTHH:MM:SSZ"
|
|
7
|
-
task_path: .owflow/tasks/quick-bugfix/YYYY-MM-DD-task-name
|
|
8
|
-
escalated_to: null
|
|
9
|
-
escalation_reason: null
|
|
10
|
-
standards_applied: []
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
command: quick-dev
|
|
2
|
-
title: "Short title from task description"
|
|
3
|
-
description: "Full task description as provided by user"
|
|
4
|
-
status: in_progress
|
|
5
|
-
created: "YYYY-MM-DDTHH:MM:SSZ"
|
|
6
|
-
updated: "YYYY-MM-DDTHH:MM:SSZ"
|
|
7
|
-
task_path: .owflow/tasks/quick-dev/YYYY-MM-DD-task-name
|
|
8
|
-
escalated_to: null
|
|
9
|
-
escalation_reason: null
|
|
10
|
-
standards_applied: []
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
command: quick-plan
|
|
2
|
-
title: "Short title from task description"
|
|
3
|
-
description: "Full task description as provided by user"
|
|
4
|
-
status: in_progress
|
|
5
|
-
created: "YYYY-MM-DDTHH:MM:SSZ"
|
|
6
|
-
updated: "YYYY-MM-DDTHH:MM:SSZ"
|
|
7
|
-
task_path: .owflow/tasks/quick-plan/YYYY-MM-DD-task-name
|
|
8
|
-
escalated_to: null
|
|
9
|
-
escalation_reason: null
|
|
10
|
-
standards_applied: []
|
|
11
|
-
plan_path: null
|
|
File without changes
|