owflow 0.1.1 → 0.1.3
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 +8 -1
- package/dist/agents/bottleneck-analyzer.md +329 -0
- package/dist/agents/code-quality-pragmatist.md +354 -0
- package/dist/agents/code-reviewer.md +239 -0
- package/dist/agents/codebase-analysis-reporter.md +246 -0
- package/dist/agents/docs-operator.md +23 -0
- package/dist/agents/e2e-test-verifier.md +448 -0
- package/dist/agents/gap-analyzer.md +502 -0
- package/dist/agents/implementation-completeness-checker.md +220 -0
- package/dist/agents/implementation-planner.md +309 -0
- package/dist/agents/information-gatherer.md +691 -0
- package/dist/agents/production-readiness-checker.md +279 -0
- package/dist/agents/project-analyzer.md +404 -0
- package/dist/agents/reality-assessor.md +366 -0
- package/dist/agents/research-planner.md +447 -0
- package/dist/agents/research-synthesizer.md +401 -0
- package/dist/agents/solution-brainstormer.md +257 -0
- package/dist/agents/solution-designer.md +372 -0
- package/dist/agents/spec-auditor.md +298 -0
- package/dist/agents/specification-creator.md +334 -0
- package/dist/agents/task-classifier.md +462 -0
- package/dist/agents/task-group-implementer.md +284 -0
- package/dist/agents/test-suite-runner.md +195 -0
- package/dist/agents/ui-mockup-generator.md +369 -0
- package/dist/agents/user-docs-generator.md +509 -0
- package/dist/commands/development.md +37 -0
- package/dist/commands/flow-init.md +37 -0
- package/dist/commands/migration.md +37 -0
- package/dist/commands/performance.md +37 -0
- package/dist/commands/product-design.md +37 -0
- package/dist/commands/quick-bugfix.md +37 -0
- package/dist/commands/quick-dev.md +140 -0
- package/dist/commands/quick-plan.md +132 -0
- package/dist/commands/research.md +37 -0
- package/dist/commands/reviews-code.md +90 -0
- package/dist/commands/reviews-pragmatic.md +99 -0
- package/dist/commands/reviews-production-readiness.md +113 -0
- package/dist/commands/reviews-reality-check.md +110 -0
- package/dist/commands/reviews-spec-audit.md +114 -0
- package/dist/commands/standards-discover.md +37 -0
- package/dist/commands/standards-update.md +37 -0
- package/dist/commands/work.md +284 -0
- package/dist/index.js +3 -2
- package/dist/skills/codebase-analyzer/SKILL.md +162 -0
- package/dist/skills/codebase-analyzer/references/code-analysis.md +63 -0
- package/dist/skills/codebase-analyzer/references/combined.md +31 -0
- package/dist/skills/codebase-analyzer/references/context-discovery.md +63 -0
- package/dist/skills/codebase-analyzer/references/file-discovery.md +51 -0
- package/dist/skills/codebase-analyzer/references/migration-target.md +23 -0
- package/dist/skills/codebase-analyzer/references/pattern-mining.md +22 -0
- package/dist/skills/development/SKILL.md +669 -0
- package/dist/skills/docs-manager/SKILL.md +379 -0
- package/dist/skills/docs-manager/docs/INDEX.md +199 -0
- package/dist/skills/docs-manager/docs/standards/backend/api.md +25 -0
- package/dist/skills/docs-manager/docs/standards/backend/migrations.md +22 -0
- package/dist/skills/docs-manager/docs/standards/backend/models.md +25 -0
- package/dist/skills/docs-manager/docs/standards/backend/queries.md +22 -0
- package/dist/skills/docs-manager/docs/standards/frontend/accessibility.md +25 -0
- package/dist/skills/docs-manager/docs/standards/frontend/components.md +28 -0
- package/dist/skills/docs-manager/docs/standards/frontend/css.md +16 -0
- package/dist/skills/docs-manager/docs/standards/frontend/responsive.md +28 -0
- package/dist/skills/docs-manager/docs/standards/global/coding-style.md +25 -0
- package/dist/skills/docs-manager/docs/standards/global/commenting.md +10 -0
- package/dist/skills/docs-manager/docs/standards/global/conventions.md +31 -0
- package/dist/skills/docs-manager/docs/standards/global/error-handling.md +22 -0
- package/dist/skills/docs-manager/docs/standards/global/minimal-implementation.md +22 -0
- package/dist/skills/docs-manager/docs/standards/global/validation.md +28 -0
- package/dist/skills/docs-manager/docs/standards/testing/test-writing.md +25 -0
- package/dist/skills/docs-manager/references/claude-md-template.md +29 -0
- package/dist/skills/docs-manager/references/index-md-template.md +73 -0
- package/dist/skills/flow-init/SKILL.md +198 -0
- package/dist/skills/flow-init/references/architecture-template.md +45 -0
- package/dist/skills/flow-init/references/roadmap-templates.md +93 -0
- package/dist/skills/flow-init/references/tech-stack-template.md +70 -0
- package/dist/skills/flow-init/references/vision-templates.md +75 -0
- package/dist/skills/implementation-plan-executor/SKILL.md +378 -0
- package/dist/skills/implementation-verifier/SKILL.md +307 -0
- package/dist/skills/migration/SKILL.md +380 -0
- package/dist/skills/migration/references/migration-strategies.md +397 -0
- package/dist/skills/migration/references/migration-types.md +437 -0
- package/dist/skills/orchestrator-framework/SKILL.md +65 -0
- package/dist/skills/orchestrator-framework/references/orchestrator-creation-checklist.md +47 -0
- package/dist/skills/orchestrator-framework/references/orchestrator-patterns.md +329 -0
- package/dist/skills/performance/SKILL.md +418 -0
- package/dist/skills/performance/references/performance-optimization-guide.md +365 -0
- package/dist/skills/product-design/SKILL.md +843 -0
- package/dist/skills/product-design/references/characteristic-detection.md +92 -0
- package/dist/skills/product-design/references/interaction-patterns.md +206 -0
- package/dist/skills/product-design/references/visual-companion.md +190 -0
- package/dist/skills/product-design/server/index.ts +359 -0
- package/dist/skills/product-design/server/template.html +256 -0
- package/dist/skills/quick-bugfix/SKILL.md +241 -0
- package/dist/skills/research/SKILL.md +493 -0
- package/dist/skills/research/references/brainstorming-techniques.md +84 -0
- package/dist/skills/research/references/design-techniques.md +40 -0
- package/dist/skills/research/references/research-methodologies.md +710 -0
- package/dist/skills/standards-discover/SKILL.md +236 -0
- package/dist/skills/standards-discover/references/aggregation-strategy.md +76 -0
- package/dist/skills/standards-discover/references/code-pattern-prompt.md +68 -0
- package/dist/skills/standards-discover/references/config-analyzer-prompt.md +67 -0
- package/dist/skills/standards-discover/references/docs-extractor-prompt.md +65 -0
- package/dist/skills/standards-discover/references/external-analyzer-prompt.md +75 -0
- package/dist/skills/standards-update/SKILL.md +159 -0
- package/package.json +44 -43
|
@@ -0,0 +1,418 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: performance
|
|
3
|
+
description: Orchestrates performance optimization workflows using static code analysis to identify bottlenecks (N+1 queries, missing indexes, O(n^2) algorithms, blocking I/O, memory leaks). Accepts optional user-provided profiling data. Reuses standard specification, planning, implementation, and verification phases.
|
|
4
|
+
user-invocable: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Performance Orchestrator
|
|
8
|
+
|
|
9
|
+
Static-analysis-first performance optimization workflow. Identifies bottlenecks by reading code, then uses the standard specification/planning/implementation/verification pipeline to fix them.
|
|
10
|
+
|
|
11
|
+
## Initialization
|
|
12
|
+
|
|
13
|
+
**BEFORE executing any phase, you MUST complete these steps:**
|
|
14
|
+
|
|
15
|
+
### Step 1: Load Framework Patterns
|
|
16
|
+
|
|
17
|
+
**Read the framework reference file NOW using the Read tool:**
|
|
18
|
+
|
|
19
|
+
1. `../orchestrator-framework/references/orchestrator-patterns.md` - Delegation rules, interactive mode, state schema, initialization, context passing, issue resolution
|
|
20
|
+
|
|
21
|
+
### Step 2: Initialize Workflow
|
|
22
|
+
|
|
23
|
+
1. **Create Task Items**: Use `TaskCreate` for all phases (see Phase Configuration), then set dependencies with `TaskUpdate addBlockedBy`
|
|
24
|
+
2. **Create Task Directory**: `.owflow/tasks/performance/YYYY-MM-DD-task-name/`
|
|
25
|
+
3. **Create Subdirectories**: `analysis/`, `analysis/user-profiling-data/`, `implementation/`, `verification/`
|
|
26
|
+
4. **Initialize State**: Create `orchestrator-state.yml` with performance context
|
|
27
|
+
5. **Discover project documentation**: Read `.owflow/docs/INDEX.md` (if exists), extract ALL file paths from the "Project Documentation" section — includes predefined docs AND any user-added project docs. Store as `project_context.project_doc_paths` in state.
|
|
28
|
+
|
|
29
|
+
**Output**:
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
Performance Orchestrator Started
|
|
33
|
+
|
|
34
|
+
Task: [performance issue description]
|
|
35
|
+
Directory: [task-path]
|
|
36
|
+
|
|
37
|
+
Starting Phase 1: Codebase Analysis...
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## When to Use
|
|
43
|
+
|
|
44
|
+
Use for:
|
|
45
|
+
|
|
46
|
+
- Application slow (response time issues, high latency)
|
|
47
|
+
- Need systematic bottleneck identification and resolution
|
|
48
|
+
- Want static code analysis for performance anti-patterns
|
|
49
|
+
- Have user-provided profiling data to act on
|
|
50
|
+
- Database query optimization needed
|
|
51
|
+
- Algorithm or I/O inefficiencies suspected
|
|
52
|
+
|
|
53
|
+
**DO NOT use for**: New features, bug fixes, refactoring without performance goals.
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## Core Principles
|
|
58
|
+
|
|
59
|
+
1. **Static Analysis First**: Read code to detect patterns. Don't try to run profiling tools.
|
|
60
|
+
2. **User Data Welcome**: Incorporate user-provided profiling data when available
|
|
61
|
+
3. **Reuse Standard Phases**: Use proven specification/planning/implementation/verification pipeline
|
|
62
|
+
4. **Conservative Estimates**: Provide improvement ranges, not false precision
|
|
63
|
+
5. **Practical Optimizations**: Focus on patterns the agent CAN detect and fix
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Phase Configuration
|
|
68
|
+
|
|
69
|
+
| Phase | content | activeForm | Agent/Skill |
|
|
70
|
+
| ----- | -------------------------------------------- | ------------------------------------------------- | ---------------------------- |
|
|
71
|
+
| 1 | "Analyze codebase" | "Analyzing codebase" | codebase-analyzer |
|
|
72
|
+
| 2 | "Analyze performance bottlenecks" | "Analyzing performance bottlenecks" | bottleneck-analyzer |
|
|
73
|
+
| 3 | "Gather requirements & create specification" | "Gathering requirements & creating specification" | specification-creator |
|
|
74
|
+
| 4 | "Audit specification" | "Auditing specification" | spec-auditor (conditional) |
|
|
75
|
+
| 5 | "Plan implementation" | "Planning implementation" | implementation-planner |
|
|
76
|
+
| 6 | "Execute implementation" | "Executing implementation" | implementation-plan-executor |
|
|
77
|
+
| 7 | "Prompt verification options" | "Prompting verification options" | Direct |
|
|
78
|
+
| 8 | "Verify implementation & resolve issues" | "Verifying implementation" | implementation-verifier |
|
|
79
|
+
| 9 | "Finalize workflow" | "Finalizing workflow" | Direct |
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Workflow Phases
|
|
84
|
+
|
|
85
|
+
### Phase 1: Codebase Analysis & Clarifications
|
|
86
|
+
|
|
87
|
+
**Purpose**: Comprehensive codebase exploration for performance context, followed by scope/requirements clarification
|
|
88
|
+
**Execute**:
|
|
89
|
+
|
|
90
|
+
1. Skill tool - `codebase-analyzer`
|
|
91
|
+
2. Update state with analysis results
|
|
92
|
+
3. Direct - use question for max 5 critical clarifying questions about performance concerns, hotspots, and optimization goals
|
|
93
|
+
4. Save clarifications to `analysis/clarifications.md`
|
|
94
|
+
**Output**: `analysis/codebase-analysis.md`, `analysis/clarifications.md`
|
|
95
|
+
**State**: Update `performance_context.phase_summaries.codebase_analysis`, `task_context.clarifications_resolved`
|
|
96
|
+
|
|
97
|
+
Pass `task_type="enhancement"` and the performance-focused description. The codebase-analyzer adaptively selects parallel Explore agents based on task complexity. For performance tasks, the description should guide agents toward: database query patterns, hot code paths, I/O operations, caching layers, connection management, schema/migration files.
|
|
98
|
+
|
|
99
|
+
→ **AUTO-CONTINUE** — Do NOT end turn, do NOT prompt user. Proceed immediately to Phase 2.
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
### Phase 2: Static Performance Analysis
|
|
104
|
+
|
|
105
|
+
**Purpose**: Identify bottlenecks through static code analysis + optional user profiling data
|
|
106
|
+
**Execute**: Task tool - `bottleneck-analyzer` subagent
|
|
107
|
+
**Output**: `analysis/performance-analysis.md`
|
|
108
|
+
**State**: Update `performance_context.bottlenecks_identified`, `performance_context.user_data_available`, `performance_context.bottleneck_priorities`
|
|
109
|
+
|
|
110
|
+
**Process**:
|
|
111
|
+
|
|
112
|
+
1. Check if `analysis/user-profiling-data/` contains any files
|
|
113
|
+
2. If empty, use question:
|
|
114
|
+
- Question: "Do you have profiling data to provide (flame graphs, APM screenshots, slow query logs)?"
|
|
115
|
+
- Options: "Yes, let me add files to analysis/user-profiling-data/" | "No, proceed with static analysis only"
|
|
116
|
+
3. If user chooses to add files, wait for them, then proceed
|
|
117
|
+
|
|
118
|
+
**ANTI-PATTERN — DO NOT DO THIS:**
|
|
119
|
+
|
|
120
|
+
- ❌ "Let me analyze the bottlenecks myself..." — STOP. Delegate to bottleneck-analyzer.
|
|
121
|
+
- ❌ "I'll grep for N+1 patterns..." — STOP. Delegate to bottleneck-analyzer.
|
|
122
|
+
|
|
123
|
+
**INVOKE NOW** — Task tool call:
|
|
124
|
+
|
|
125
|
+
4. Task tool - `bottleneck-analyzer` subagent
|
|
126
|
+
|
|
127
|
+
**Context to pass**: task_path, description, codebase analysis summary from Phase 1, user data paths (if any)
|
|
128
|
+
|
|
129
|
+
**SELF-CHECK**: Did you just invoke the Task tool with `bottleneck-analyzer`? Or did you start analyzing code yourself? If the latter, STOP and invoke the Task tool.
|
|
130
|
+
|
|
131
|
+
→ Pause
|
|
132
|
+
|
|
133
|
+
question - "Performance analysis complete. [N] bottlenecks identified ([P0 count] P0, [P1 count] P1). Continue to specification?"
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
### Phase 3: Requirements & Specification
|
|
138
|
+
|
|
139
|
+
> **Phase gate**: Requires `question` confirmation from Phase 2 before executing.
|
|
140
|
+
|
|
141
|
+
**Purpose**: Gather optimization requirements and create specification
|
|
142
|
+
**Output**: `analysis/requirements.md`, `implementation/spec.md`
|
|
143
|
+
**State**: Update `performance_context.phase_summaries.specification`
|
|
144
|
+
|
|
145
|
+
**Part A — Requirements Gathering (inline)**:
|
|
146
|
+
|
|
147
|
+
1. Present bottleneck summary from Phase 2 to user
|
|
148
|
+
2. Use question for optimization priorities:
|
|
149
|
+
- Which bottleneck priorities to address? (All P0+P1, P0 only, specific ones)
|
|
150
|
+
- Any constraints? (backward compatibility, memory limits, no new dependencies)
|
|
151
|
+
- Performance targets? (specific response time goals, if known)
|
|
152
|
+
3. Save gathered requirements to `analysis/requirements.md` with: performance issue description, bottleneck analysis summary, optimization priorities, constraints, targets
|
|
153
|
+
|
|
154
|
+
**Part B — Specification Creation (subagent)**:
|
|
155
|
+
|
|
156
|
+
📋 **Standards Discovery**: Read `.owflow/docs/INDEX.md` before creating spec.
|
|
157
|
+
|
|
158
|
+
**ANTI-PATTERN — DO NOT DO THIS:**
|
|
159
|
+
|
|
160
|
+
- ❌ "Let me create the specification..." — STOP. Delegate to specification-creator.
|
|
161
|
+
- ❌ "I'll write the spec based on the analysis..." — STOP. Delegate to specification-creator.
|
|
162
|
+
|
|
163
|
+
**INVOKE NOW** — Task tool call:
|
|
164
|
+
|
|
165
|
+
4. Task tool - `specification-creator` subagent
|
|
166
|
+
|
|
167
|
+
**Context to pass**: task_path, task_type="performance", task_description, requirements_path (analysis/requirements.md), project_context_paths (INDEX.md + project_doc_paths from state — all discovered project docs), phase_summaries (codebase_analysis, bottleneck_analysis)
|
|
168
|
+
|
|
169
|
+
**SELF-CHECK**: Did you just invoke the Task tool with `specification-creator`? Or did you start writing spec.md yourself? If the latter, STOP and invoke the Task tool.
|
|
170
|
+
|
|
171
|
+
→ Pause
|
|
172
|
+
|
|
173
|
+
question - Display executive summary before asking. Read `implementation/spec.md` and extract: optimization targets, approach chosen, number of changes planned, expected impact. Format as brief overview then "Continue to specification audit?"
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
### Phase 4: Specification Audit (Conditional)
|
|
178
|
+
|
|
179
|
+
> **Phase gate**: Requires `question` confirmation from Phase 3 before executing.
|
|
180
|
+
|
|
181
|
+
**Purpose**: Independent review of optimization specification
|
|
182
|
+
**Execute**: Task tool - `spec-auditor` subagent
|
|
183
|
+
**Output**: `verification/spec-audit.md`
|
|
184
|
+
**State**: Update `options.spec_audit_enabled`
|
|
185
|
+
|
|
186
|
+
**Run if**: >5 optimizations planned, spec >50 lines, or user requests
|
|
187
|
+
**Skip if**: Simple optimization (1-3 changes)
|
|
188
|
+
|
|
189
|
+
question to decide - "Run specification audit?"
|
|
190
|
+
|
|
191
|
+
→ Pause
|
|
192
|
+
|
|
193
|
+
question - Display executive summary before asking. Read `verification/spec-audit.md` and extract: overall verdict, issue counts by severity, top findings. Format as brief overview then "Continue to implementation planning?"
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
### Phase 5: Implementation Planning
|
|
198
|
+
|
|
199
|
+
> **Phase gate**: Requires `question` confirmation from Phase 4 before executing.
|
|
200
|
+
|
|
201
|
+
**Purpose**: Break optimization specification into implementation steps
|
|
202
|
+
|
|
203
|
+
📋 **Standards Discovery**: Read `.owflow/docs/INDEX.md` before planning.
|
|
204
|
+
|
|
205
|
+
**ANTI-PATTERN — DO NOT DO THIS:**
|
|
206
|
+
|
|
207
|
+
- ❌ "Let me create the implementation plan..." — STOP. Delegate to implementation-planner.
|
|
208
|
+
- ❌ "I'll break this into optimization steps..." — STOP. Delegate to implementation-planner.
|
|
209
|
+
|
|
210
|
+
**INVOKE NOW** — Task tool call:
|
|
211
|
+
|
|
212
|
+
**Execute**: Task tool - `implementation-planner` subagent
|
|
213
|
+
**Output**: `implementation/implementation-plan.md`
|
|
214
|
+
**State**: Update task groups and dependencies
|
|
215
|
+
|
|
216
|
+
**Context to pass**: task_path, task_type="performance", task_description, phase_summaries (specification, bottleneck_analysis, codebase_analysis)
|
|
217
|
+
|
|
218
|
+
**SELF-CHECK**: Did you just invoke the Task tool with `implementation-planner`? Or did you start writing the plan yourself? If the latter, STOP and invoke the Task tool.
|
|
219
|
+
|
|
220
|
+
→ Pause
|
|
221
|
+
|
|
222
|
+
question - Display executive summary before asking. Read `implementation/implementation-plan.md` and extract: number of task groups, total steps, key dependencies, optimization sequence. Format as brief overview then "Continue to implementation?"
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
### Phase 6: Implementation
|
|
227
|
+
|
|
228
|
+
> **Phase gate**: Requires `question` confirmation from Phase 5 before executing.
|
|
229
|
+
|
|
230
|
+
**Purpose**: Execute the optimization plan
|
|
231
|
+
|
|
232
|
+
📋 **Standards Discovery**: Implementation reads `.owflow/docs/INDEX.md` continuously.
|
|
233
|
+
|
|
234
|
+
**ANTI-PATTERN — DO NOT DO THIS:**
|
|
235
|
+
|
|
236
|
+
- ❌ "Let me implement this directly..." — STOP. Delegate to implementation-plan-executor.
|
|
237
|
+
- ❌ "This is simple enough to code inline..." — STOP. Simplicity is NOT a reason to skip delegation.
|
|
238
|
+
|
|
239
|
+
**INVOKE NOW** — Skill tool call:
|
|
240
|
+
|
|
241
|
+
**Execute**: Skill tool - `implementation-plan-executor`
|
|
242
|
+
**Output**: Implemented optimizations, `implementation/work-log.md`
|
|
243
|
+
**State**: Update implementation progress, extract phase_summaries.implementation
|
|
244
|
+
|
|
245
|
+
**SELF-CHECK**: Did you just invoke the Skill tool with `implementation-plan-executor`? Or did you start writing code yourself? If the latter, STOP immediately and invoke the Skill tool instead.
|
|
246
|
+
|
|
247
|
+
**⚠️ POST-IMPLEMENTATION CONTINUATION** — After the skill completes and returns control:
|
|
248
|
+
|
|
249
|
+
1. Read `orchestrator-state.yml` to confirm you are the orchestrator
|
|
250
|
+
2. Update state: add Phase 6 to `completed_phases`
|
|
251
|
+
3. Proceed to Phase 7
|
|
252
|
+
|
|
253
|
+
→ Pause
|
|
254
|
+
|
|
255
|
+
question - Display executive summary before asking. Extract from `phase_summaries.implementation` and `implementation/work-log.md`: optimizations applied, files changed, test results, any known issues. Format as brief overview then "Continue to verification?"
|
|
256
|
+
|
|
257
|
+
---
|
|
258
|
+
|
|
259
|
+
### Phase 7: Verification Options
|
|
260
|
+
|
|
261
|
+
> **Phase gate**: Requires `question` confirmation from Phase 6 before executing.
|
|
262
|
+
|
|
263
|
+
**Purpose**: Determine which verification checks to run
|
|
264
|
+
**Execute**: Direct - use question for options
|
|
265
|
+
**Output**: Updated state with verification options
|
|
266
|
+
**State**: Set `options.code_review_enabled`, `options.pragmatic_review_enabled`, `options.production_check_enabled`, `options.reality_check_enabled`
|
|
267
|
+
|
|
268
|
+
**Always enabled**: Reality check, pragmatic review
|
|
269
|
+
**Auto-set**: `skip_test_suite: true` (full test suite already passed during implementation phase; cleared before re-verification if fixes are applied)
|
|
270
|
+
|
|
271
|
+
question with multiselect - "Which additional verification checks?"
|
|
272
|
+
|
|
273
|
+
- "Code review" (recommended)
|
|
274
|
+
- "Production readiness check"
|
|
275
|
+
|
|
276
|
+
→ Pause
|
|
277
|
+
|
|
278
|
+
question - "Options selected. Continue to Phase 8?"
|
|
279
|
+
|
|
280
|
+
---
|
|
281
|
+
|
|
282
|
+
### Phase 8: Verification & Issue Resolution
|
|
283
|
+
|
|
284
|
+
> **Phase gate**: Requires `question` confirmation from Phase 7 before executing.
|
|
285
|
+
|
|
286
|
+
**Purpose**: Comprehensive implementation verification with user-driven fix cycles
|
|
287
|
+
**Output**: `verification/implementation-verification.md`, optional review reports
|
|
288
|
+
**State**: Update `verification_context`
|
|
289
|
+
|
|
290
|
+
**Execute**:
|
|
291
|
+
|
|
292
|
+
**Step 1**: Invoke Skill tool - `implementation-verifier`
|
|
293
|
+
|
|
294
|
+
**Step 2**: Display detailed issue breakdown grouped by category and severity (critical/warning/info), listing location, description, and fixability for each.
|
|
295
|
+
|
|
296
|
+
**Step 3**: Gate on verification status:
|
|
297
|
+
|
|
298
|
+
- `status: passed` → skip to Pause
|
|
299
|
+
- `status: passed_with_issues` or `failed` → enter user-driven fix loop (Step 4)
|
|
300
|
+
|
|
301
|
+
**Step 4**: User-driven fix loop (max 3 iterations):
|
|
302
|
+
|
|
303
|
+
1. Present all critical + warning issues as a numbered list
|
|
304
|
+
2. question — "Which issues should I fix?" with options: "Fix all fixable issues" / "Let me choose specific issues" / "Skip fixes, proceed as-is"
|
|
305
|
+
3. Fix selected issues
|
|
306
|
+
4. After fixes: set `skip_test_suite: false` (code changed, tests must re-run)
|
|
307
|
+
5. question — "Re-run verification to check fixes?" with options: "Yes, re-run verification" / "No, proceed to next phase"
|
|
308
|
+
6. If re-run → re-invoke `implementation-verifier` → return to Step 2
|
|
309
|
+
|
|
310
|
+
→ Pause
|
|
311
|
+
|
|
312
|
+
question - Display executive summary: total issues found, issues fixed, issues remaining by severity. Then "Continue to finalization?"
|
|
313
|
+
|
|
314
|
+
---
|
|
315
|
+
|
|
316
|
+
### Phase 9: Finalization
|
|
317
|
+
|
|
318
|
+
> **Phase gate**: Requires `question` confirmation from Phase 8 before executing.
|
|
319
|
+
|
|
320
|
+
**Purpose**: Complete workflow and provide next steps
|
|
321
|
+
**Execute**: Direct - create summary, update state, guide commit
|
|
322
|
+
**Output**: Workflow summary
|
|
323
|
+
**State**: Set `task.status: completed`
|
|
324
|
+
|
|
325
|
+
**Process**:
|
|
326
|
+
|
|
327
|
+
1. Create workflow summary (bottlenecks found, optimizations implemented, verification result)
|
|
328
|
+
2. Update task status to "completed"
|
|
329
|
+
3. Provide commit message template
|
|
330
|
+
4. Guide performance-specific next steps:
|
|
331
|
+
- Run the application and verify improvements manually
|
|
332
|
+
- Consider profiling with runtime tools to measure actual impact
|
|
333
|
+
- Monitor production metrics after deployment
|
|
334
|
+
- Address remaining P2/P3 bottlenecks if needed
|
|
335
|
+
|
|
336
|
+
→ End of workflow
|
|
337
|
+
|
|
338
|
+
---
|
|
339
|
+
|
|
340
|
+
## Domain Context (State Extensions)
|
|
341
|
+
|
|
342
|
+
Performance-specific fields in `orchestrator-state.yml`:
|
|
343
|
+
|
|
344
|
+
```yaml
|
|
345
|
+
performance_context:
|
|
346
|
+
bottlenecks_identified: null # count from bottleneck-analyzer
|
|
347
|
+
user_data_available: false # whether user provided profiling data
|
|
348
|
+
bottleneck_priorities:
|
|
349
|
+
p0: 0
|
|
350
|
+
p1: 0
|
|
351
|
+
p2: 0
|
|
352
|
+
p3: 0
|
|
353
|
+
phase_summaries:
|
|
354
|
+
codebase_analysis: { key_files: [], summary: null }
|
|
355
|
+
bottleneck_analysis:
|
|
356
|
+
{ bottlenecks: [], summary: null, user_data_incorporated: false }
|
|
357
|
+
specification: { summary: null }
|
|
358
|
+
|
|
359
|
+
verification_context:
|
|
360
|
+
last_status: null
|
|
361
|
+
issues_found: null
|
|
362
|
+
fixes_applied: []
|
|
363
|
+
decisions_made: []
|
|
364
|
+
reverify_count: 0
|
|
365
|
+
|
|
366
|
+
options:
|
|
367
|
+
spec_audit_enabled: null
|
|
368
|
+
skip_test_suite: true
|
|
369
|
+
code_review_enabled: true
|
|
370
|
+
pragmatic_review_enabled: true
|
|
371
|
+
reality_check_enabled: true
|
|
372
|
+
production_check_enabled: null
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
---
|
|
376
|
+
|
|
377
|
+
## Task Structure
|
|
378
|
+
|
|
379
|
+
```
|
|
380
|
+
.owflow/tasks/performance/YYYY-MM-DD-task-name/
|
|
381
|
+
├── orchestrator-state.yml
|
|
382
|
+
├── analysis/
|
|
383
|
+
│ ├── codebase-analysis.md # Phase 1
|
|
384
|
+
│ ├── performance-analysis.md # Phase 2
|
|
385
|
+
│ ├── user-profiling-data/ # Optional user-provided data
|
|
386
|
+
│ └── requirements.md # Phase 3
|
|
387
|
+
├── implementation/
|
|
388
|
+
│ ├── spec.md # Phase 3
|
|
389
|
+
│ ├── implementation-plan.md # Phase 5
|
|
390
|
+
│ └── work-log.md # Phase 6
|
|
391
|
+
└── verification/
|
|
392
|
+
├── spec-audit.md # Phase 4 (conditional)
|
|
393
|
+
└── implementation-verification.md # Phase 8
|
|
394
|
+
```
|
|
395
|
+
|
|
396
|
+
---
|
|
397
|
+
|
|
398
|
+
## Auto-Recovery
|
|
399
|
+
|
|
400
|
+
| Phase | Max Attempts | Strategy |
|
|
401
|
+
| ----- | ------------ | ------------------------------------------ |
|
|
402
|
+
| 1 | 2 | Expand search scope, prompt user for hints |
|
|
403
|
+
| 2 | 2 | Re-analyze with broader patterns, ask user |
|
|
404
|
+
| 3 | 2 | Regenerate spec with adjusted requirements |
|
|
405
|
+
| 5 | 2 | Regenerate plan |
|
|
406
|
+
| 6 | 5 | Fix syntax, imports, tests |
|
|
407
|
+
| 8 | 3 | Fix-then-reverify cycles |
|
|
408
|
+
|
|
409
|
+
---
|
|
410
|
+
|
|
411
|
+
## Command Integration
|
|
412
|
+
|
|
413
|
+
Invoked via:
|
|
414
|
+
|
|
415
|
+
- `/performance [description]` (new)
|
|
416
|
+
- `/performance [task-path] [--from=PHASE]` (resume)
|
|
417
|
+
|
|
418
|
+
Task directory: `.owflow/tasks/performance/YYYY-MM-DD-task-name/`
|