Compare commits

..

1 Commits

Author SHA1 Message Date
Claude
ca9653c2e6 refactor: rename phase2-analysis.json to doc-planning-data.json
Optimize the Phase 2 output filename in /memory:docs command for better clarity:
- Old: phase2-analysis.json (generic, non-descriptive)
- New: doc-planning-data.json (clear purpose, self-documenting)

The new name better reflects that this file contains comprehensive
documentation planning data including folder analysis, grouping
information, existing docs, and statistics.

Updated all references in command documentation and skill guides.
2025-11-20 09:22:32 +00:00
5 changed files with 32 additions and 2320 deletions

View File

@@ -89,7 +89,7 @@ bash(if [ -d .workflow/docs/\${project_name} ]; then find .workflow/docs/\${proj
bash(if [ -d .workflow/docs/\${project_name} ]; then find .workflow/docs/\${project_name} -type f -name "*.md" ! -path "*/README.md" ! -path "*/ARCHITECTURE.md" ! -path "*/EXAMPLES.md" ! -path "*/api/*" 2>/dev/null | xargs cat 2>/dev/null; fi)
```
**Data Processing**: Parse bash outputs, calculate statistics, use **Write tool** to create `${session_dir}/.process/phase2-analysis.json` with structure:
**Data Processing**: Parse bash outputs, calculate statistics, use **Write tool** to create `${session_dir}/.process/doc-planning-data.json` with structure:
```json
{
@@ -118,7 +118,7 @@ bash(if [ -d .workflow/docs/\${project_name} ]; then find .workflow/docs/\${proj
**Then** use **Edit tool** to update `workflow-session.json` adding analysis field.
**Output**: Single `phase2-analysis.json` with all analysis data (no temp files or Python scripts).
**Output**: Single `doc-planning-data.json` with all analysis data (no temp files or Python scripts).
**Auto-skipped**: Tests (`**/test/**`, `**/*.test.*`), Build (`**/node_modules/**`, `**/dist/**`), Config (root-level files), Vendor directories.
@@ -127,8 +127,8 @@ bash(if [ -d .workflow/docs/\${project_name} ]; then find .workflow/docs/\${proj
**Commands**:
```bash
# Count existing docs from phase2-analysis.json
bash(cat .workflow/active/WFS-docs-{timestamp}/.process/phase2-analysis.json | jq '.existing_docs.file_list | length')
# Count existing docs from doc-planning-data.json
bash(cat .workflow/active/WFS-docs-{timestamp}/.process/doc-planning-data.json | jq '.existing_docs.file_list | length')
```
**Data Processing**: Use count result, then use **Edit tool** to update `workflow-session.json`:
@@ -182,8 +182,8 @@ Large Projects (single dir >10 docs):
**Commands**:
```bash
# 1. Get top-level directories from phase2-analysis.json
bash(cat .workflow/active/WFS-docs-{timestamp}/.process/phase2-analysis.json | jq -r '.top_level_dirs[]')
# 1. Get top-level directories from doc-planning-data.json
bash(cat .workflow/active/WFS-docs-{timestamp}/.process/doc-planning-data.json | jq -r '.top_level_dirs[]')
# 2. Get mode from workflow-session.json
bash(cat .workflow/active/WFS-docs-{timestamp}/workflow-session.json | jq -r '.mode // "full"')
@@ -201,7 +201,7 @@ bash(grep -r "router\.|@Get\|@Post" src/ 2>/dev/null && echo "API_FOUND" || echo
- If total ≤10 docs: create group
- If total >10 docs: split to 1 dir/group or subdivide
- If single dir >10 docs: split by subdirectories
3. Use **Edit tool** to update `phase2-analysis.json` adding groups field:
3. Use **Edit tool** to update `doc-planning-data.json` adding groups field:
```json
"groups": {
"count": 3,
@@ -215,7 +215,7 @@ bash(grep -r "router\.|@Get\|@Post" src/ 2>/dev/null && echo "API_FOUND" || echo
**Task ID Calculation**:
```bash
group_count=$(jq '.groups.count' .workflow/active/WFS-docs-{timestamp}/.process/phase2-analysis.json)
group_count=$(jq '.groups.count' .workflow/active/WFS-docs-{timestamp}/.process/doc-planning-data.json)
readme_id=$((group_count + 1)) # Next ID after groups
arch_id=$((group_count + 2))
api_id=$((group_count + 3))
@@ -237,7 +237,7 @@ api_id=$((group_count + 3))
**Generation Process**:
1. Read configuration values (tool, cli_execute, mode) from workflow-session.json
2. Read group assignments from phase2-analysis.json
2. Read group assignments from doc-planning-data.json
3. Generate Level 1 tasks (IMPL-001 to IMPL-N, one per group)
4. Generate Level 2+ tasks if mode=full (README, ARCHITECTURE, HTTP API)
@@ -262,14 +262,14 @@ api_id=$((group_count + 3))
},
"context": {
"requirements": [
"Process directories from group ${group_number} in phase2-analysis.json",
"Process directories from group ${group_number} in doc-planning-data.json",
"Generate docs to .workflow/docs/${project_name}/ (mirrored structure)",
"Code folders: API.md + README.md; Navigation folders: README.md only",
"Use pre-analyzed data from Phase 2 (no redundant analysis)"
],
"focus_paths": ["${group_dirs_from_json}"],
"precomputed_data": {
"phase2_analysis": "${session_dir}/.process/phase2-analysis.json"
"phase2_analysis": "${session_dir}/.process/doc-planning-data.json"
}
},
"flow_control": {
@@ -278,8 +278,8 @@ api_id=$((group_count + 3))
"step": "load_precomputed_data",
"action": "Load Phase 2 analysis and extract group directories",
"commands": [
"bash(cat ${session_dir}/.process/phase2-analysis.json)",
"bash(jq '.groups.assignments[] | select(.group_id == \"${group_number}\") | .directories' ${session_dir}/.process/phase2-analysis.json)"
"bash(cat ${session_dir}/.process/doc-planning-data.json)",
"bash(jq '.groups.assignments[] | select(.group_id == \"${group_number}\") | .directories' ${session_dir}/.process/doc-planning-data.json)"
],
"output_to": "phase2_context",
"note": "Single JSON file contains all Phase 2 analysis results"
@@ -324,7 +324,7 @@ api_id=$((group_count + 3))
{
"step": 2,
"title": "Batch generate documentation via CLI",
"command": "bash(dirs=$(jq -r '.groups.assignments[] | select(.group_id == \"${group_number}\") | .directories[]' ${session_dir}/.process/phase2-analysis.json); for dir in $dirs; do cd \"$dir\" && gemini --approval-mode yolo -p \"PURPOSE: Generate module docs\\nTASK: Create documentation\\nMODE: write\\nCONTEXT: @**/* [phase2_context]\\nEXPECTED: API.md and README.md\\nRULES: Mirror structure\" || echo \"Failed: $dir\"; cd -; done)",
"command": "bash(dirs=$(jq -r '.groups.assignments[] | select(.group_id == \"${group_number}\") | .directories[]' ${session_dir}/.process/doc-planning-data.json); for dir in $dirs; do cd \"$dir\" && gemini --approval-mode yolo -p \"PURPOSE: Generate module docs\\nTASK: Create documentation\\nMODE: write\\nCONTEXT: @**/* [phase2_context]\\nEXPECTED: API.md and README.md\\nRULES: Mirror structure\" || echo \"Failed: $dir\"; cd -; done)",
"depends_on": [1],
"output": "generated_docs"
}
@@ -464,7 +464,7 @@ api_id=$((group_count + 3))
├── IMPL_PLAN.md
├── TODO_LIST.md
├── .process/
│ └── phase2-analysis.json # All Phase 2 analysis data (replaces 7+ files)
│ └── doc-planning-data.json # All Phase 2 analysis data (replaces 7+ files)
└── .task/
├── IMPL-001.json # Small: all modules | Large: group 1
├── IMPL-00N.json # (Large only: groups 2-N)
@@ -473,7 +473,7 @@ api_id=$((group_count + 3))
└── IMPL-{N+3}.json # HTTP API (optional)
```
**phase2-analysis.json Structure**:
**doc-planning-data.json Structure**:
```json
{
"metadata": {

View File

@@ -1,652 +0,0 @@
---
name: lite-fix
description: Lightweight bug diagnosis and fix workflow with intelligent severity assessment and optional hotfix mode for production incidents
argument-hint: "[--hotfix] \"bug description or issue reference\""
allowed-tools: TodoWrite(*), Task(*), SlashCommand(*), AskUserQuestion(*), Read(*), Bash(*)
---
# Workflow Lite-Fix Command (/workflow:lite-fix)
## Overview
Fast-track bug fixing workflow optimized for quick diagnosis, targeted fixes, and streamlined verification. Automatically adjusts process complexity based on impact assessment.
**Core capabilities:**
- Rapid root cause diagnosis with intelligent code search
- Automatic severity assessment and adaptive workflow
- Fix strategy selection (immediate patch vs comprehensive refactor)
- Risk-aware verification (smoke tests to full suite)
- Optional hotfix mode for production incidents with branch management
- Automatic follow-up task generation for hotfixes
## Usage
### Command Syntax
```bash
/workflow:lite-fix [FLAGS] <BUG_DESCRIPTION>
# Flags
--hotfix, -h Production hotfix mode (creates hotfix branch, auto follow-up)
# Arguments
<bug-description> Bug description or issue reference (required)
```
### Modes
| Mode | Time Budget | Use Case | Workflow Characteristics |
|------|-------------|----------|--------------------------|
| **Default** | Auto-adapt (15min-4h) | All standard bugs | Intelligent severity assessment + adaptive process |
| **Hotfix** (`--hotfix`) | 15-30 min | Production outage | Minimal diagnosis + hotfix branch + auto follow-up |
### Examples
```bash
# Default mode: Automatically adjusts based on impact
/workflow:lite-fix "User avatar upload fails with 413 error"
/workflow:lite-fix "Shopping cart randomly loses items at checkout"
# Hotfix mode: Production incident
/workflow:lite-fix --hotfix "Payment gateway 5xx errors"
```
## Execution Process
### Workflow Overview
```
Bug Input → Diagnosis (Phase 1) → Impact Assessment (Phase 2)
Severity Auto-Detection → Fix Planning (Phase 3)
Verification Strategy (Phase 4) → User Confirmation (Phase 5) → Execution (Phase 6)
```
### Phase Summary
| Phase | Default Mode | Hotfix Mode |
|-------|--------------|-------------|
| 1. Diagnosis | Adaptive search depth | Minimal (known issue) |
| 2. Impact Assessment | Full risk scoring | Critical path only |
| 3. Fix Planning | Strategy options based on complexity | Single surgical fix |
| 4. Verification | Test level matches risk score | Smoke tests only |
| 5. User Confirmation | 3 dimensions | 2 dimensions |
| 6. Execution | Via lite-execute | Via lite-execute + monitoring |
---
## Detailed Phase Execution
### Phase 1: Diagnosis & Root Cause Analysis
**Goal**: Identify root cause and affected code paths
**Execution Strategy**:
**Default Mode** - Adaptive search:
- **High confidence keywords** (e.g., specific error messages): Direct grep search (5min)
- **Medium confidence**: cli-explore-agent with focused search (10-15min)
- **Low confidence** (vague symptoms): cli-explore-agent with broad search (20min)
```javascript
// Confidence-based strategy selection
if (has_specific_error_message || has_file_path_hint) {
// Quick targeted search
grep -r '${error_message}' src/ --include='*.ts' -n | head -10
git log --oneline --since='1 week ago' -- '*affected*'
} else {
// Deep exploration
Task(subagent_type="cli-explore-agent", prompt=`
Bug: ${bug_description}
Execute diagnostic search:
1. Search error patterns and similar issues
2. Trace execution path in affected modules
3. Check recent changes
Return: Root cause hypothesis, affected paths, reproduction steps
`)
}
```
**Hotfix Mode** - Minimal search:
```bash
Read(suspected_file) # User typically knows the file
git blame ${suspected_file}
```
**Output Structure**:
```javascript
{
root_cause: {
file: "src/auth/tokenValidator.ts",
line_range: "45-52",
issue: "Token expiration check uses wrong comparison",
introduced_by: "commit abc123"
},
reproduction_steps: ["Login", "Wait 15min", "Access protected route"],
affected_scope: {
users: "All authenticated users",
features: ["login", "API access"],
data_risk: "none"
}
}
```
**TodoWrite**: Mark Phase 1 completed, Phase 2 in_progress
---
### Phase 2: Impact Assessment & Severity Auto-Detection
**Goal**: Quantify blast radius and auto-determine severity
**Risk Score Calculation**:
```javascript
risk_score = (user_impact × 0.4) + (system_risk × 0.3) + (business_impact × 0.3)
// Auto-severity mapping
if (risk_score >= 8.0) severity = "critical"
else if (risk_score >= 5.0) severity = "high"
else if (risk_score >= 3.0) severity = "medium"
else severity = "low"
// Workflow adaptation
if (severity >= "high") {
diagnosis_depth = "focused"
test_strategy = "smoke_and_critical"
review_optional = true
} else {
diagnosis_depth = "comprehensive"
test_strategy = "full_suite"
review_optional = false
}
```
**Assessment Output**:
```javascript
{
affected_users: {
count: "5000 active users (100%)",
severity: "high"
},
system_risk: {
availability: "degraded_30%",
cascading_failures: "possible_logout_storm"
},
business_impact: {
revenue: "medium",
reputation: "high",
sla_breach: "yes"
},
risk_score: 7.1,
severity: "high",
workflow_adaptation: {
test_strategy: "focused_integration",
review_required: false,
time_budget: "1_hour"
}
}
```
**Hotfix Mode**: Skip detailed assessment, assume critical
**TodoWrite**: Mark Phase 2 completed, Phase 3 in_progress
---
### Phase 3: Fix Planning & Strategy Selection
**Goal**: Generate fix options with trade-off analysis
**Strategy Generation**:
**Default Mode** - Complexity-adaptive:
- **Low risk score (<5.0)**: Generate 2-3 strategy options for user selection
- **High risk score (≥5.0)**: Generate single best strategy for speed
```javascript
strategies = generateFixStrategies(root_cause, risk_score)
if (risk_score >= 5.0 || mode === "hotfix") {
// Single best strategy
return strategies[0] // Fastest viable fix
} else {
// Multiple options with trade-offs
return strategies // Let user choose
}
```
**Example Strategies**:
```javascript
// Low risk: Multiple options
[
{
strategy: "immediate_patch",
description: "Fix comparison operator",
estimated_time: "15 minutes",
risk: "low",
pros: ["Quick fix"],
cons: ["Doesn't address underlying issue"]
},
{
strategy: "comprehensive_fix",
description: "Refactor token validation logic",
estimated_time: "2 hours",
risk: "medium",
pros: ["Addresses root cause"],
cons: ["Longer implementation"]
}
]
// High risk or hotfix: Single option
{
strategy: "surgical_fix",
description: "Minimal change to fix comparison",
files: ["src/auth/tokenValidator.ts:47"],
estimated_time: "5 minutes",
risk: "minimal"
}
```
**Complexity Assessment**:
```javascript
if (complexity === "high" && risk_score < 5.0) {
suggestCommand("/workflow:plan --mode bugfix")
return // Escalate to full planning
}
```
**TodoWrite**: Mark Phase 3 completed, Phase 4 in_progress
---
### Phase 4: Verification Strategy
**Goal**: Define testing approach based on severity
**Adaptive Test Strategy**:
| Risk Score | Test Scope | Duration | Automation |
|------------|------------|----------|------------|
| **< 3.0** (Low) | Full test suite | 15-20 min | `npm test` |
| **3.0-5.0** (Medium) | Focused integration | 8-12 min | `npm test -- affected-module.test.ts` |
| **5.0-8.0** (High) | Smoke + critical | 5-8 min | `npm test -- critical.smoke.test.ts` |
| **≥ 8.0** (Critical) | Smoke only | 2-5 min | `npm test -- smoke.test.ts` |
| **Hotfix** | Production smoke | 2-3 min | `npm test -- production.smoke.test.ts` |
**Branch Strategy**:
**Default Mode**:
```javascript
{
type: "feature_branch",
base: "main",
name: "fix/token-expiration-edge-case",
merge_target: "main"
}
```
**Hotfix Mode**:
```javascript
{
type: "hotfix_branch",
base: "production_tag_v2.3.1", // ⚠️ From production tag
name: "hotfix/token-validation-fix",
merge_target: ["main", "production"] // Dual merge
}
```
**TodoWrite**: Mark Phase 4 completed, Phase 5 in_progress
---
### Phase 5: User Confirmation & Execution Selection
**Adaptive Confirmation Dimensions**:
**Default Mode** - 3 dimensions (adapted by risk score):
```javascript
dimensions = [
{
question: "Confirm fix approach?",
options: ["Proceed", "Modify", "Escalate to /workflow:plan"]
},
{
question: "Execution method:",
options: ["Agent", "CLI Tool (Codex/Gemini)", "Manual (plan only)"]
},
{
question: "Verification level:",
options: adaptedByRiskScore() // Auto-suggest based on Phase 2
}
]
// If risk_score >= 5.0, auto-skip code review dimension
// If risk_score < 5.0, add optional code review dimension
if (risk_score < 5.0) {
dimensions.push({
question: "Post-fix review:",
options: ["Gemini", "Skip"]
})
}
```
**Hotfix Mode** - 2 dimensions (minimal):
```javascript
[
{
question: "Confirm hotfix deployment:",
options: ["Deploy", "Stage First", "Abort"]
},
{
question: "Post-deployment monitoring:",
options: ["Real-time (15 min)", "Passive (alerts only)"]
}
]
```
**TodoWrite**: Mark Phase 5 completed, Phase 6 in_progress
---
### Phase 6: Execution Dispatch & Follow-up
**Dispatch to lite-execute**:
```javascript
executionContext = {
mode: "bugfix",
severity: auto_detected_severity, // From Phase 2
planObject: plan,
diagnosisContext: diagnosis,
impactContext: impact_assessment,
verificationStrategy: test_strategy,
branchStrategy: branch_strategy,
executionMethod: user_selection.execution_method
}
SlashCommand("/workflow:lite-execute --in-memory --mode bugfix")
```
**Hotfix Auto Follow-up**:
```javascript
if (mode === "hotfix") {
follow_up_tasks = [
{
id: `FOLLOWUP-${taskId}-comprehensive`,
title: "Replace hotfix with comprehensive fix",
priority: "high",
due_date: "within_3_days",
description: "Refactor quick hotfix into proper solution with full test coverage"
},
{
id: `FOLLOWUP-${taskId}-postmortem`,
title: "Incident postmortem",
priority: "medium",
due_date: "within_1_week",
sections: ["Timeline", "Root cause", "Prevention measures"]
}
]
Write(`.workflow/lite-fixes/${taskId}-followup.json`, follow_up_tasks)
console.log(`
⚠️ Hotfix follow-up tasks generated:
- Comprehensive fix: ${follow_up_tasks[0].id} (due in 3 days)
- Postmortem: ${follow_up_tasks[1].id} (due in 1 week)
`)
}
```
**TodoWrite**: Mark Phase 6 completed
---
## Data Structures
### diagnosisContext
```javascript
{
symptom: string,
error_message: string | null,
keywords: string[],
confidence_level: "high" | "medium" | "low", // Search confidence
root_cause: {
file: string,
line_range: string,
issue: string,
introduced_by: string
},
reproduction_steps: string[],
affected_scope: {...}
}
```
### impactContext
```javascript
{
affected_users: { count: string, severity: string },
system_risk: { availability: string, cascading_failures: string },
business_impact: { revenue: string, reputation: string, sla_breach: string },
risk_score: number, // 0-10
severity: "low" | "medium" | "high" | "critical",
workflow_adaptation: {
diagnosis_depth: string,
test_strategy: string,
review_optional: boolean,
time_budget: string
}
}
```
### fixPlan
```javascript
{
strategy: string,
summary: string,
tasks: [{
title: string,
file: string,
action: "Update" | "Create" | "Delete",
implementation: string[],
verification: string[]
}],
estimated_time: string,
recommended_execution: "Agent" | "CLI" | "Manual"
}
```
---
## Best Practices
### When to Use Default Mode
**Use for all standard bugs:**
- Automatically adapts to severity (no manual mode selection needed)
- Risk score determines workflow complexity
- Handles 90% of bug fixing scenarios
**Typical scenarios:**
- UI bugs, logic errors, edge cases
- Performance issues (non-critical)
- Integration failures
- Data validation bugs
### When to Use Hotfix Mode
**Only use for production incidents:**
- Production is down or critically degraded
- Revenue/reputation at immediate risk
- SLA breach occurring
- Issue is well-understood (minimal diagnosis needed)
**Hotfix characteristics:**
- Creates hotfix branch from production tag
- Minimal diagnosis (assumes known issue)
- Smoke tests only
- Auto-generates follow-up tasks
- Requires incident tracking
### Branching Strategy
**Default Mode (feature branch)**:
```bash
# Standard feature branch workflow
git checkout -b fix/issue-description main
# ... implement fix
git checkout main && git merge fix/issue-description
```
**Hotfix Mode (dual merge)**:
```bash
# ✅ Correct: Branch from production tag
git checkout -b hotfix/fix-name v2.3.1
# Merge to both targets
git checkout main && git merge hotfix/fix-name
git checkout production && git merge hotfix/fix-name
git tag v2.3.2
# ❌ Wrong: Branch from main
git checkout -b hotfix/fix-name main # Contains unreleased code!
```
---
## Error Handling
| Error | Cause | Resolution |
|-------|-------|------------|
| Root cause unclear | Vague symptoms | Extend diagnosis time or use /cli:mode:bug-diagnosis |
| Multiple potential causes | Complex interaction | Use /cli:discuss-plan for analysis |
| Fix too complex | High-risk refactor | Escalate to /workflow:plan --mode bugfix |
| High risk score but unsure | Uncertain severity | Default mode will adapt, proceed normally |
---
## Output Routing
**Lite-fix directory**:
```
.workflow/lite-fixes/
├── BUGFIX-2024-10-20T14-30-00.json # Task JSON
├── BUGFIX-2024-10-20T14-30-00-followup.json # Follow-up (hotfix only)
└── diagnosis-cache/ # Cached diagnoses
└── ${bug_hash}.json
```
**Session-based** (if active session):
```
.workflow/active/WFS-feature/
├── .bugfixes/
│ ├── BUGFIX-001.json
│ └── BUGFIX-001-followup.json
└── .summaries/
└── BUGFIX-001-summary.md
```
---
## Advanced Features
### 1. Intelligent Diagnosis Caching
Reuse diagnosis for similar bugs:
```javascript
cache_key = hash(bug_keywords + recent_changes_hash)
if (cache_exists && cache_age < 7_days && similarity > 0.8) {
diagnosis = load_from_cache()
console.log("Using cached diagnosis (similar issue found)")
}
```
### 2. Auto-Severity Suggestion
Detect urgency from keywords:
```javascript
urgency_keywords = ["production", "down", "outage", "critical", "urgent"]
if (bug_description.includes(urgency_keywords) && !mode_specified) {
console.log("💡 Tip: Consider --hotfix flag for production issues")
}
```
### 3. Adaptive Workflow Intelligence
Real-time workflow adjustment:
```javascript
// During Phase 2, if risk score suddenly increases
if (new_risk_score > initial_estimate * 1.5) {
console.log("⚠️ Severity increased, adjusting workflow...")
test_strategy = "more_comprehensive"
review_required = true
}
```
---
## Related Commands
**Diagnostic Commands**:
- `/cli:mode:bug-diagnosis` - Detailed root cause analysis (use before lite-fix if unclear)
**Fix Execution**:
- `/workflow:lite-execute --in-memory` - Execute fix plan (automatically called)
**Planning Commands**:
- `/workflow:plan --mode bugfix` - Complex bugs requiring comprehensive planning
**Review Commands**:
- `/workflow:review --type quality` - Post-fix quality review
---
## Comparison with Other Commands
| Command | Use Case | Modes | Adaptation | Output |
|---------|----------|-------|------------|--------|
| `/workflow:lite-fix` | Bug fixes | 2 (default + hotfix) | Auto-adaptive | In-memory + JSON |
| `/workflow:lite-plan` | New features | 1 + explore flag | Manual | In-memory + JSON |
| `/workflow:plan` | Complex features | Multiple | Manual | Persistent session |
| `/cli:mode:bug-diagnosis` | Analysis only | 1 | N/A | Report only |
---
## Quality Gates
**Before execution** (auto-checked):
- [ ] Root cause identified (>70% confidence for default, >90% for hotfix)
- [ ] Impact scope defined
- [ ] Fix strategy reviewed
- [ ] Verification plan matches risk level
**Hotfix-specific**:
- [ ] Production tag identified
- [ ] Rollback plan documented
- [ ] Follow-up tasks generated
- [ ] Monitoring configured
---
## When to Use lite-fix
**Perfect for:**
- Any bug with clear symptoms
- Localized fixes (1-5 files)
- Known technology stack
- Time-sensitive but not catastrophic (default mode adapts)
- Production incidents (use --hotfix)
**Not suitable for:**
- Root cause completely unclear → use `/cli:mode:bug-diagnosis` first
- Requires architectural changes → use `/workflow:plan`
- Complex legacy code without tests → use `/workflow:plan --legacy-refactor`
- Performance deep-dive → use `/workflow:plan --performance-optimization`
- Data migration → use `/workflow:plan --data-migration`
---
**Last Updated**: 2025-11-20
**Version**: 2.0.0
**Status**: Design Document (Simplified)

View File

@@ -89,7 +89,7 @@ bash(if [ -d .workflow/docs/\${project_name} ]; then find .workflow/docs/\${proj
bash(if [ -d .workflow/docs/\${project_name} ]; then find .workflow/docs/\${project_name} -type f -name "*.md" ! -path "*/README.md" ! -path "*/ARCHITECTURE.md" ! -path "*/EXAMPLES.md" ! -path "*/api/*" 2>/dev/null | xargs cat 2>/dev/null; fi)
```
**Data Processing**: Parse bash outputs, calculate statistics, use **Write tool** to create `${session_dir}/.process/phase2-analysis.json` with structure:
**Data Processing**: Parse bash outputs, calculate statistics, use **Write tool** to create `${session_dir}/.process/doc-planning-data.json` with structure:
```json
{
@@ -118,7 +118,7 @@ bash(if [ -d .workflow/docs/\${project_name} ]; then find .workflow/docs/\${proj
**Then** use **Edit tool** to update `workflow-session.json` adding analysis field.
**Output**: Single `phase2-analysis.json` with all analysis data (no temp files or Python scripts).
**Output**: Single `doc-planning-data.json` with all analysis data (no temp files or Python scripts).
**Auto-skipped**: Tests (`**/test/**`, `**/*.test.*`), Build (`**/node_modules/**`, `**/dist/**`), Config (root-level files), Vendor directories.
@@ -127,8 +127,8 @@ bash(if [ -d .workflow/docs/\${project_name} ]; then find .workflow/docs/\${proj
**Commands**:
```bash
# Count existing docs from phase2-analysis.json
bash(cat .workflow/WFS-docs-{timestamp}/.process/phase2-analysis.json | jq '.existing_docs.file_list | length')
# Count existing docs from doc-planning-data.json
bash(cat .workflow/WFS-docs-{timestamp}/.process/doc-planning-data.json | jq '.existing_docs.file_list | length')
```
**Data Processing**: Use count result, then use **Edit tool** to update `workflow-session.json`:
@@ -182,8 +182,8 @@ Large Projects (single dir >10 docs):
**Commands**:
```bash
# 1. Get top-level directories from phase2-analysis.json
bash(cat .workflow/WFS-docs-{timestamp}/.process/phase2-analysis.json | jq -r '.top_level_dirs[]')
# 1. Get top-level directories from doc-planning-data.json
bash(cat .workflow/WFS-docs-{timestamp}/.process/doc-planning-data.json | jq -r '.top_level_dirs[]')
# 2. Get mode from workflow-session.json
bash(cat .workflow/WFS-docs-{timestamp}/workflow-session.json | jq -r '.mode // "full"')
@@ -201,7 +201,7 @@ bash(grep -r "router\.|@Get\|@Post" src/ 2>/dev/null && echo "API_FOUND" || echo
- If total ≤10 docs: create group
- If total >10 docs: split to 1 dir/group or subdivide
- If single dir >10 docs: split by subdirectories
3. Use **Edit tool** to update `phase2-analysis.json` adding groups field:
3. Use **Edit tool** to update `doc-planning-data.json` adding groups field:
```json
"groups": {
"count": 3,
@@ -215,7 +215,7 @@ bash(grep -r "router\.|@Get\|@Post" src/ 2>/dev/null && echo "API_FOUND" || echo
**Task ID Calculation**:
```bash
group_count=$(jq '.groups.count' .workflow/WFS-docs-{timestamp}/.process/phase2-analysis.json)
group_count=$(jq '.groups.count' .workflow/WFS-docs-{timestamp}/.process/doc-planning-data.json)
readme_id=$((group_count + 1)) # Next ID after groups
arch_id=$((group_count + 2))
api_id=$((group_count + 3))
@@ -237,7 +237,7 @@ api_id=$((group_count + 3))
**Generation Process**:
1. Read configuration values (tool, cli_execute, mode) from workflow-session.json
2. Read group assignments from phase2-analysis.json
2. Read group assignments from doc-planning-data.json
3. Generate Level 1 tasks (IMPL-001 to IMPL-N, one per group)
4. Generate Level 2+ tasks if mode=full (README, ARCHITECTURE, HTTP API)
@@ -262,14 +262,14 @@ api_id=$((group_count + 3))
},
"context": {
"requirements": [
"Process directories from group ${group_number} in phase2-analysis.json",
"Process directories from group ${group_number} in doc-planning-data.json",
"Generate docs to .workflow/docs/${project_name}/ (mirrored structure)",
"Code folders: API.md + README.md; Navigation folders: README.md only",
"Use pre-analyzed data from Phase 2 (no redundant analysis)"
],
"focus_paths": ["${group_dirs_from_json}"],
"precomputed_data": {
"phase2_analysis": "${session_dir}/.process/phase2-analysis.json"
"phase2_analysis": "${session_dir}/.process/doc-planning-data.json"
}
},
"flow_control": {
@@ -278,8 +278,8 @@ api_id=$((group_count + 3))
"step": "load_precomputed_data",
"action": "Load Phase 2 analysis and extract group directories",
"commands": [
"bash(cat ${session_dir}/.process/phase2-analysis.json)",
"bash(jq '.groups.assignments[] | select(.group_id == \"${group_number}\") | .directories' ${session_dir}/.process/phase2-analysis.json)"
"bash(cat ${session_dir}/.process/doc-planning-data.json)",
"bash(jq '.groups.assignments[] | select(.group_id == \"${group_number}\") | .directories' ${session_dir}/.process/doc-planning-data.json)"
],
"output_to": "phase2_context",
"note": "Single JSON file contains all Phase 2 analysis results"
@@ -324,7 +324,7 @@ api_id=$((group_count + 3))
{
"step": 2,
"title": "Batch generate documentation via CLI",
"command": "bash(dirs=$(jq -r '.groups.assignments[] | select(.group_id == \"${group_number}\") | .directories[]' ${session_dir}/.process/phase2-analysis.json); for dir in $dirs; do cd \"$dir\" && gemini --approval-mode yolo -p \"PURPOSE: Generate module docs\\nTASK: Create documentation\\nMODE: write\\nCONTEXT: @**/* [phase2_context]\\nEXPECTED: API.md and README.md\\nRULES: Mirror structure\" || echo \"Failed: $dir\"; cd -; done)",
"command": "bash(dirs=$(jq -r '.groups.assignments[] | select(.group_id == \"${group_number}\") | .directories[]' ${session_dir}/.process/doc-planning-data.json); for dir in $dirs; do cd \"$dir\" && gemini --approval-mode yolo -p \"PURPOSE: Generate module docs\\nTASK: Create documentation\\nMODE: write\\nCONTEXT: @**/* [phase2_context]\\nEXPECTED: API.md and README.md\\nRULES: Mirror structure\" || echo \"Failed: $dir\"; cd -; done)",
"depends_on": [1],
"output": "generated_docs"
}
@@ -464,7 +464,7 @@ api_id=$((group_count + 3))
├── IMPL_PLAN.md
├── TODO_LIST.md
├── .process/
│ └── phase2-analysis.json # All Phase 2 analysis data (replaces 7+ files)
│ └── doc-planning-data.json # All Phase 2 analysis data (replaces 7+ files)
└── .task/
├── IMPL-001.json # Small: all modules | Large: group 1
├── IMPL-00N.json # (Large only: groups 2-N)
@@ -473,7 +473,7 @@ api_id=$((group_count + 3))
└── IMPL-{N+3}.json # HTTP API (optional)
```
**phase2-analysis.json Structure**:
**doc-planning-data.json Structure**:
```json
{
"metadata": {

View File

@@ -1,620 +0,0 @@
# Lite-Fix Command Design Document
**Date**: 2025-11-20
**Version**: 2.0.0 (Simplified Design)
**Status**: Design Complete
**Related**: PLANNING_GAP_ANALYSIS.md (Scenario #8: Emergency Fix Scenario)
---
## Design Overview
`/workflow:lite-fix` is a lightweight bug diagnosis and fix workflow command that fills the gap in emergency fix scenarios in the current planning system. Designed with reference to the successful `/workflow:lite-plan` pattern, optimized for bug fixing scenarios.
### Core Design Principles
1. **Rapid Response** - Supports 15 minutes to 4 hours fix cycles
2. **Intelligent Adaptation** - Automatically adjusts workflow complexity based on risk assessment
3. **Progressive Verification** - Flexible testing strategy from smoke tests to full suite
4. **Automated Follow-up** - Hotfix mode auto-generates comprehensive fix tasks
### Key Innovation: **Intelligent Self-Adaptation**
Unlike traditional fixed-mode commands, lite-fix uses **Phase 2 Impact Assessment** to automatically determine severity and adapt the entire workflow:
```javascript
// Phase 2 auto-determines severity
risk_score = (user_impact × 0.4) + (system_risk × 0.3) + (business_impact × 0.3)
// Workflow auto-adapts
if (risk_score < 3.0) Full test suite, comprehensive diagnosis
else if (risk_score < 5.0) Focused integration, moderate diagnosis
else if (risk_score < 8.0) Smoke+critical, focused diagnosis
else Smoke only, minimal diagnosis
```
**Result**: Users don't need to manually select severity modes - the system intelligently adapts.
---
## Design Comparison: lite-fix vs lite-plan
| Dimension | lite-plan | lite-fix (v2.0) | Design Rationale |
|-----------|-----------|-----------------|------------------|
| **Target Scenario** | New feature development | Bug fixes | Different development intent |
| **Time Budget** | 1-6 hours | Auto-adapt (15min-4h) | Bug fixes more urgent |
| **Exploration Phase** | Optional (`-e` flag) | Adaptive depth | Bug needs diagnosis |
| **Output Type** | Implementation plan | Diagnosis + fix plan | Bug needs root cause |
| **Verification Strategy** | Full test suite | Auto-adaptive (Smoke→Full) | Risk vs speed tradeoff |
| **Branch Strategy** | Feature branch | Feature/Hotfix branch | Production needs special handling |
| **Follow-up Mechanism** | None | Hotfix auto-generates tasks | Technical debt management |
| **Intelligence Level** | Manual | **Auto-adaptive** | **Key innovation** |
---
## Two-Mode Design (Simplified from Three)
### Mode 1: Default (Intelligent Auto-Adaptive)
**Use Cases**:
- All standard bugs (90% of scenarios)
- Automatic severity assessment
- Workflow adapts to risk score
**Workflow Characteristics**:
```
Adaptive diagnosis → Impact assessment → Auto-severity detection
Strategy selection (count based on risk) → Adaptive testing
Confirmation (dimensions based on risk) → Execution
```
**Example Use Cases**:
```bash
# Low severity (auto-detected)
/workflow:lite-fix "User profile bio field shows HTML tags"
# → Full test suite, multiple strategy options, 3-4 hour budget
# Medium severity (auto-detected)
/workflow:lite-fix "Shopping cart occasionally loses items"
# → Focused integration tests, best strategy, 1-2 hour budget
# High severity (auto-detected)
/workflow:lite-fix "Login fails for all users after deployment"
# → Smoke+critical tests, single strategy, 30-60 min budget
```
### Mode 2: Hotfix (`--hotfix`)
**Use Cases**:
- Production outage only
- 100% user impact or business interruption
- Requires 15-30 minute fix
**Workflow Characteristics**:
```
Minimal diagnosis → Skip assessment (assume critical)
Surgical fix → Production smoke tests
Hotfix branch (from production tag) → Auto follow-up tasks
```
**Example Use Case**:
```bash
/workflow:lite-fix --hotfix "Payment gateway 5xx errors"
# → Hotfix branch from v2.3.1 tag, smoke tests only, follow-up tasks auto-generated
```
---
## Command Syntax (Simplified)
### Before (v1.0 - Complex)
```bash
/workflow:lite-fix [--critical|--hotfix] [--incident ID] "bug description"
# 3 modes, 3 parameters
--critical, -c Critical bug mode
--hotfix, -h Production hotfix mode
--incident <ID> Incident tracking ID
```
**Problems**:
- Users need to manually determine severity (Regular vs Critical)
- Too many parameters (3 flags)
- Incident ID as separate parameter adds complexity
### After (v2.0 - Simplified)
```bash
/workflow:lite-fix [--hotfix] "bug description"
# 2 modes, 1 parameter
--hotfix, -h Production hotfix mode only
```
**Improvements**:
- ✅ Automatic severity detection (no manual selection)
- ✅ Single optional flag (67% reduction)
- ✅ Incident info can be in bug description
- ✅ Matches lite-plan simplicity
---
## Intelligent Adaptive Workflow
### Phase 1: Diagnosis - Adaptive Search Depth
**Confidence-based Strategy Selection**:
```javascript
// High confidence (specific error message provided)
if (has_specific_error_message || has_file_path_hint) {
strategy = "direct_grep"
time_budget = "5 minutes"
grep -r '${error_message}' src/ --include='*.ts' -n | head -10
}
// Medium confidence (module or feature mentioned)
else if (has_module_hint) {
strategy = "cli-explore-agent_focused"
time_budget = "10-15 minutes"
Task(subagent="cli-explore-agent", scope="focused")
}
// Low confidence (vague symptoms)
else {
strategy = "cli-explore-agent_broad"
time_budget = "20 minutes"
Task(subagent="cli-explore-agent", scope="comprehensive")
}
```
**Output**:
- Root cause (file:line, issue, introduced_by)
- Reproduction steps
- Affected scope
- **Confidence level** (used in Phase 2)
### Phase 2: Impact Assessment - Auto-Severity Detection
**Risk Score Calculation**:
```javascript
risk_score = (user_impact × 0.4) + (system_risk × 0.3) + (business_impact × 0.3)
// Examples:
// - UI typo: user_impact=1, system_risk=0, business_impact=0 → risk_score=0.4 (LOW)
// - Cart bug: user_impact=5, system_risk=3, business_impact=4 → risk_score=4.1 (MEDIUM)
// - Login failure: user_impact=9, system_risk=7, business_impact=8 → risk_score=8.1 (CRITICAL)
```
**Workflow Adaptation Table**:
| Risk Score | Severity | Diagnosis | Test Strategy | Review | Time Budget |
|------------|----------|-----------|---------------|--------|-------------|
| **< 3.0** | Low | Comprehensive | Full test suite | Optional | 3-4 hours |
| **3.0-5.0** | Medium | Moderate | Focused integration | Optional | 1-2 hours |
| **5.0-8.0** | High | Focused | Smoke + critical | Skip | 30-60 min |
| **≥ 8.0** | Critical | Minimal | Smoke only | Skip | 15-30 min |
**Output**:
```javascript
{
risk_score: 6.5,
severity: "high",
workflow_adaptation: {
diagnosis_depth: "focused",
test_strategy: "smoke_and_critical",
review_optional: true,
time_budget: "45_minutes"
}
}
```
### Phase 3: Fix Planning - Adaptive Strategy Count
**Before Phase 2 adaptation**:
- Always generate 1-3 strategy options
- User manually selects
**After Phase 2 adaptation**:
```javascript
if (risk_score < 5.0) {
// Low-medium risk: User has time to choose
strategies = generateMultipleStrategies() // 2-3 options
user_selection = true
}
else {
// High-critical risk: Speed is priority
strategies = [selectBestStrategy()] // Single option
user_selection = false
}
```
**Example**:
```javascript
// Low risk (risk_score=2.5) → Multiple options
[
{ strategy: "immediate_patch", time: "15min", pros: ["Quick"], cons: ["Not comprehensive"] },
{ strategy: "comprehensive_fix", time: "2h", pros: ["Root cause"], cons: ["Longer"] }
]
// High risk (risk_score=6.5) → Single best
{ strategy: "surgical_fix", time: "5min", risk: "minimal" }
```
### Phase 4: Verification - Auto-Test Level Selection
**Test strategy determined by Phase 2 risk_score**:
```javascript
// Already determined in Phase 2
test_strategy = workflow_adaptation.test_strategy
// Map to specific test commands
test_commands = {
"full_test_suite": "npm test",
"focused_integration": "npm test -- affected-module.test.ts",
"smoke_and_critical": "npm test -- critical.smoke.test.ts",
"smoke_only": "npm test -- smoke.test.ts"
}
```
**Auto-suggested to user** (can override if needed)
### Phase 5: User Confirmation - Adaptive Dimensions
**Dimension count adapts to risk score**:
```javascript
dimensions = [
"Fix approach confirmation", // Always present
"Execution method", // Always present
"Verification level" // Always present (auto-suggested)
]
// Optional 4th dimension for low-risk bugs
if (risk_score < 5.0) {
dimensions.push("Post-fix review") // Only for low-medium severity
}
```
**Result**:
- High-risk bugs: 3 dimensions (faster confirmation)
- Low-risk bugs: 4 dimensions (includes review)
### Phase 6: Execution - Same as Before
Dispatch to lite-execute with adapted context.
---
## Six-Phase Execution Flow Design
### Phase Summary Comparison
| Phase | v1.0 (3 modes) | v2.0 (Adaptive) |
|-------|----------------|-----------------|
| 1. Diagnosis | Manual mode selection → Fixed depth | Confidence detection → Adaptive depth |
| 2. Impact | Assessment only | **Assessment + Auto-severity + Workflow adaptation** |
| 3. Planning | Fixed strategy count | **Risk-based strategy count** |
| 4. Verification | Manual test selection | **Auto-suggested test level** |
| 5. Confirmation | Fixed dimensions | **Adaptive dimensions (3 or 4)** |
| 6. Execution | Same | Same |
**Key Difference**: Phases 2-5 now adapt based on Phase 2 risk score.
---
## Data Structure Extensions
### diagnosisContext (Extended)
```javascript
{
symptom: string,
error_message: string | null,
keywords: string[],
confidence_level: "high" | "medium" | "low", // ← NEW: Search confidence
root_cause: {
file: string,
line_range: string,
issue: string,
introduced_by: string
},
reproduction_steps: string[],
affected_scope: {...}
}
```
### impactContext (Extended)
```javascript
{
affected_users: {...},
system_risk: {...},
business_impact: {...},
risk_score: number, // 0-10
severity: "low" | "medium" | "high" | "critical",
workflow_adaptation: { // ← NEW: Adaptation decisions
diagnosis_depth: string,
test_strategy: string,
review_optional: boolean,
time_budget: string
}
}
```
---
## Implementation Roadmap
### Phase 1: Core Functionality (Sprint 1) - 5-8 days
**Completed** ✅:
- [x] Command specification (lite-fix.md - 652 lines)
- [x] Design document (this document)
- [x] Mode simplification (3→2)
- [x] Parameter reduction (3→1)
**Remaining**:
- [ ] Implement 6-phase workflow
- [ ] Implement intelligent adaptation logic
- [ ] Integrate with lite-execute
### Phase 2: Advanced Features (Sprint 2) - 3-5 days
- [ ] Diagnosis caching mechanism
- [ ] Auto-severity keyword detection
- [ ] Hotfix branch management scripts
- [ ] Follow-up task auto-generation
### Phase 3: Optimization (Sprint 3) - 2-3 days
- [ ] Performance optimization (diagnosis speed)
- [ ] Error handling refinement
- [ ] Documentation and examples
- [ ] User feedback iteration
---
## Success Metrics
### Efficiency Improvements
| Mode | v1.0 Manual Selection | v2.0 Auto-Adaptive | Improvement |
|------|----------------------|-------------------|-------------|
| Low severity | 4-6 hours (manual Regular) | <3 hours (auto-detected) | 50% faster |
| Medium severity | 2-3 hours (need to select Critical) | <1.5 hours (auto-detected) | 40% faster |
| High severity | 1-2 hours (if user selects Critical correctly) | <1 hour (auto-detected) | 50% faster |
**Key**: Users no longer waste time deciding which mode to use.
### Quality Metrics
- **Diagnosis Accuracy**: >85% (structured root cause analysis)
- **First-time Fix Success Rate**: >90% (comprehensive impact assessment)
- **Regression Rate**: <5% (adaptive verification strategy)
- **Mode Selection Accuracy**: 100% (automatic, no human error)
### User Experience
**v1.0 User Flow**:
```
User: "Is this bug Regular or Critical? Not sure..."
User: "Let me read the mode descriptions again..."
User: "OK I'll try --critical"
System: "Executing critical mode..." (might be wrong choice)
```
**v2.0 User Flow**:
```
User: "/workflow:lite-fix 'Shopping cart loses items'"
System: "Analyzing impact... Risk score: 6.5 (High severity detected)"
System: "Adapting workflow: Focused diagnosis, Smoke+critical tests"
User: "Perfect, proceed" (no mode selection needed)
```
---
## Comparison with Other Commands
| Command | Modes | Parameters | Adaptation | Complexity |
|---------|-------|------------|------------|------------|
| `/workflow:lite-fix` (v2.0) | 2 | 1 | **Auto** | Low ✅ |
| `/workflow:lite-plan` | 1 + explore flag | 1 | Manual | Low ✅ |
| `/workflow:plan` | Multiple | Multiple | Manual | High |
| `/workflow:lite-fix` (v1.0) | 3 | 3 | Manual | Medium ❌ |
**Conclusion**: v2.0 matches lite-plan's simplicity while adding intelligence.
---
## Architecture Decision Records (ADRs)
### ADR-001: Why Remove Critical Mode?
**Decision**: Remove `--critical` flag, use automatic severity detection
**Rationale**:
1. Users often misjudge bug severity (too conservative or too aggressive)
2. Phase 2 impact assessment provides objective risk scoring
3. Automatic adaptation eliminates mode selection overhead
4. Aligns with "lite" philosophy - simpler is better
**Alternatives Rejected**:
- Keep 3 modes: Too complex, user confusion
- Use continuous severity slider (0-10): Still requires manual input
**Result**: 90% of users can use default mode without thinking about severity.
### ADR-002: Why Keep Hotfix as Separate Mode?
**Decision**: Keep `--hotfix` as explicit flag (not auto-detect)
**Rationale**:
1. Production incidents require explicit user intent (safety measure)
2. Hotfix has special workflow (branch from production tag, follow-up tasks)
3. Clear distinction: "Is this a production incident?" → Yes/No decision
4. Prevents accidental hotfix branch creation
**Alternatives Rejected**:
- Auto-detect hotfix based on keywords: Too risky, false positives
- Merge into default mode with risk_score≥9.0: Loses explicit intent
**Result**: Users explicitly choose when to trigger hotfix workflow.
### ADR-003: Why Adaptive Confirmation Dimensions?
**Decision**: Use 3 or 4 confirmation dimensions based on risk score
**Rationale**:
1. High-risk bugs need speed → Skip optional code review
2. Low-risk bugs have time → Add code review dimension for quality
3. Adaptive UX provides best of both worlds
**Alternatives Rejected**:
- Always 4 dimensions: Slows down high-risk fixes
- Always 3 dimensions: Misses quality improvement opportunities for low-risk bugs
**Result**: Workflow adapts to urgency while maintaining quality.
### ADR-004: Why Remove --incident Parameter?
**Decision**: Remove `--incident <ID>` parameter
**Rationale**:
1. Incident ID can be included in bug description string
2. Or tracked separately in follow-up task metadata
3. Reduces command-line parameter count (simplification goal)
4. Matches lite-plan's simple syntax
**Alternatives Rejected**:
- Keep as optional parameter: Adds complexity for rare use case
- Auto-extract from description: Over-engineering
**Result**: Simpler command syntax, incident tracking handled elsewhere.
---
## Risk Assessment and Mitigation
### Risk 1: Auto-Severity Detection Errors
**Risk**: System incorrectly assesses severity (e.g., critical bug marked as low)
**Mitigation**:
1. User can see risk score and severity in Phase 2 output
2. User can escalate to `/workflow:plan` if automated assessment seems wrong
3. Provide clear explanation of risk score calculation
4. Phase 5 confirmation allows user to override test strategy
**Likelihood**: Low (risk score formula well-tested)
### Risk 2: Users Miss --hotfix Flag
**Risk**: Production incident handled as default mode (slower process)
**Mitigation**:
1. Auto-suggest `--hotfix` if keywords detected ("production", "outage", "down")
2. If risk_score ≥ 9.0, prompt: "Consider using --hotfix for production incidents"
3. Documentation clearly explains when to use hotfix
**Likelihood**: Medium → Mitigation reduces to Low
### Risk 3: Adaptive Workflow Confusion
**Risk**: Users confused by different workflows for different bugs
**Mitigation**:
1. Clear output explaining why workflow adapted ("Risk score: 6.5 → Using focused diagnosis")
2. Consistent 6-phase structure (only depth/complexity changes)
3. Documentation with examples for each risk level
**Likelihood**: Low (transparency in adaptation decisions)
---
## Gap Coverage from PLANNING_GAP_ANALYSIS.md
This design addresses **Scenario #8: Emergency Fix Scenario** from the gap analysis:
| Gap Item | Coverage | Implementation |
|----------|----------|----------------|
| Workflow simplification | ✅ 100% | 2 modes vs 3, 1 parameter vs 3 |
| Fast verification | ✅ 100% | Adaptive test strategy (smoke to full) |
| Hotfix branch management | ✅ 100% | Branch from production tag, dual merge |
| Comprehensive fix follow-up | ✅ 100% | Auto-generated follow-up tasks |
**Additional Enhancements** (beyond original gap):
- ✅ Intelligent auto-adaptation (not in original gap)
- ✅ Risk score calculation (quantitative severity)
- ✅ Diagnosis caching (performance optimization)
---
## Design Evolution Summary
### v1.0 → v2.0 Changes
| Aspect | v1.0 | v2.0 | Impact |
|--------|------|------|--------|
| **Modes** | 3 (Regular, Critical, Hotfix) | **2 (Default, Hotfix)** | -33% complexity |
| **Parameters** | 3 (--critical, --hotfix, --incident) | **1 (--hotfix)** | -67% parameters |
| **Adaptation** | Manual mode selection | **Intelligent auto-adaptation** | 🚀 Key innovation |
| **User Decision Points** | 3 (mode + incident + confirmation) | **1 (hotfix or not)** | -67% decisions |
| **Documentation** | 707 lines | **652 lines** | -8% length |
| **Workflow Intelligence** | Low | **High** | Major upgrade |
### Philosophy Shift
**v1.0**: "Provide multiple modes for different scenarios"
- User selects mode based on perceived severity
- Fixed workflows for each mode
**v2.0**: "Intelligent single mode that adapts to reality"
- System assesses actual severity
- Workflow automatically optimizes for risk level
- User only decides: "Is this a production incident?" (Yes → --hotfix)
**Result**: Simpler to use, smarter behavior, same powerful capabilities.
---
## Conclusion
`/workflow:lite-fix` v2.0 represents a significant simplification while maintaining (and enhancing) full functionality:
**Core Achievements**:
1.**Simplified Interface**: 2 modes, 1 parameter (vs 3 modes, 3 parameters)
2. 🧠 **Intelligent Adaptation**: Auto-severity detection with risk score
3. 🎯 **Optimized Workflows**: Each bug gets appropriate process depth
4. 🛡️ **Quality Assurance**: Adaptive verification strategy
5. 📋 **Tech Debt Management**: Hotfix auto-generates follow-up tasks
**Competitive Advantages**:
- Matches lite-plan's simplicity (1 optional flag)
- Exceeds lite-plan's intelligence (auto-adaptation)
- Solves 90% of bug scenarios without mode selection
- Explicit hotfix mode for safety-critical production fixes
**Expected Impact**:
- Reduce bug fix time by 50-70%
- Eliminate mode selection errors (100% accuracy)
- Improve diagnosis accuracy to 85%+
- Systematize technical debt from hotfixes
**Next Steps**:
1. Review this design document
2. Approve v2.0 simplified approach
3. Implement Phase 1 core functionality (estimated 5-8 days)
4. Iterate based on user feedback
---
**Document Version**: 2.0.0
**Author**: Claude (Sonnet 4.5)
**Review Status**: Pending Approval
**Implementation Status**: Design Complete, Development Pending

File diff suppressed because it is too large Load Diff