Files
Claude-Code-Workflow/.ccw/workflows/cli-templates/schemas/fix-plan-json-schema.json
catlog22 a77c965e89 feat: Implement terminal panel for command execution and monitoring
- Added TerminalPanel component with navigation and main area for terminal interactions.
- Integrated terminal session management with CLI execution output display.
- Enhanced SolutionDrawer to open terminal panel on command execution.
- Updated localization files for terminal panel strings in English and Chinese.
- Introduced hooks for terminal panel state management.
- Created JSON schemas for plan overview and fix plan types.
2026-02-13 00:22:16 +08:00

316 lines
10 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Fix Plan Schema",
"description": "Bug fix plan from cli-lite-planning-agent or direct planning",
"type": "object",
"required": [
"summary",
"root_cause",
"strategy",
"tasks",
"estimated_time",
"recommended_execution",
"severity",
"risk_level",
"_metadata"
],
"properties": {
"summary": {
"type": "string",
"description": "2-3 sentence overview of the fix plan"
},
"root_cause": {
"type": "string",
"description": "Consolidated root cause statement from all diagnoses"
},
"strategy": {
"type": "string",
"enum": ["immediate_patch", "comprehensive_fix", "refactor"],
"description": "Fix strategy: immediate_patch (minimal change), comprehensive_fix (proper solution), refactor (structural improvement)"
},
"tasks": {
"type": "array",
"minItems": 1,
"maxItems": 5,
"items": {
"type": "object",
"required": ["id", "title", "scope", "action", "description", "implementation", "verification"],
"properties": {
"id": {
"type": "string",
"pattern": "^FIX[0-9]+$",
"description": "Task identifier (FIX1, FIX2, FIX3...)"
},
"title": {
"type": "string",
"description": "Task title (action verb + target, e.g., 'Fix token validation edge case')"
},
"scope": {
"type": "string",
"description": "Task scope: module path (src/auth/), feature name, or single file. Prefer module level."
},
"file": {
"type": "string",
"description": "Primary file (deprecated, use scope + modification_points instead)"
},
"action": {
"type": "string",
"enum": ["Fix", "Update", "Refactor", "Add", "Delete", "Configure"],
"description": "Primary action type"
},
"description": {
"type": "string",
"description": "What to fix (1-2 sentences)"
},
"modification_points": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": ["file", "target", "change"],
"properties": {
"file": {
"type": "string",
"description": "File path within scope"
},
"target": {
"type": "string",
"description": "Function/class/line range (e.g., 'validateToken:45-60')"
},
"change": {
"type": "string",
"description": "Brief description of change"
}
}
},
"description": "All modification points for this fix task. Group related changes into one task."
},
"implementation": {
"type": "array",
"items": {"type": "string"},
"minItems": 2,
"maxItems": 5,
"description": "Step-by-step fix implementation guide"
},
"verification": {
"type": "array",
"items": {"type": "string"},
"minItems": 1,
"maxItems": 3,
"description": "Verification/test criteria to confirm fix works"
},
"reference": {
"type": "object",
"properties": {
"pattern": {
"type": "string",
"description": "Pattern name to follow"
},
"files": {
"type": "array",
"items": {"type": "string"},
"description": "Reference file paths to study"
},
"examples": {
"type": "string",
"description": "Specific guidance or example references"
}
},
"description": "Reference materials for fix implementation (optional)"
},
"depends_on": {
"type": "array",
"items": {
"type": "string",
"pattern": "^FIX[0-9]+$"
},
"description": "Task IDs this task depends on (e.g., ['FIX1'])"
},
"risk": {
"type": "string",
"enum": ["low", "medium", "high"],
"description": "Risk level of this specific fix task"
},
"cli_execution_id": {
"type": "string",
"pattern": "^[a-zA-Z0-9_-]+$",
"description": "Fixed CLI execution ID for this fix task (e.g., 'session-FIX1', 'bugfix-001-diagnosis')"
},
"cli_execution": {
"type": "object",
"properties": {
"strategy": {
"type": "string",
"enum": ["new", "resume", "fork", "merge_fork"],
"description": "CLI execution strategy: new (no deps), resume (1 dep, continue), fork (1 dep, branch), merge_fork (N deps, combine)"
},
"resume_from": {
"type": "string",
"description": "Parent task's cli_execution_id (for resume/fork strategies)"
},
"merge_from": {
"type": "array",
"items": {"type": "string"},
"description": "Multiple parents' cli_execution_ids (for merge_fork strategy)"
}
},
"description": "CLI execution strategy based on task dependencies"
}
}
},
"description": "Structured fix task breakdown (1-5 tasks)"
},
"flow_control": {
"type": "object",
"properties": {
"execution_order": {
"type": "array",
"items": {
"type": "object",
"properties": {
"phase": {
"type": "string",
"description": "Phase name (e.g., 'parallel-1', 'sequential-1')"
},
"tasks": {
"type": "array",
"items": {"type": "string"},
"description": "Task IDs in this phase"
},
"type": {
"type": "string",
"enum": ["parallel", "sequential"],
"description": "Execution type"
}
}
},
"description": "Ordered execution phases"
},
"exit_conditions": {
"type": "object",
"properties": {
"success": {
"type": "string",
"description": "Condition for successful fix completion"
},
"failure": {
"type": "string",
"description": "Condition that indicates fix failure"
}
},
"description": "Conditions for fix workflow termination"
}
},
"description": "Execution flow control (optional, auto-inferred from depends_on if not provided)"
},
"focus_paths": {
"type": "array",
"items": {"type": "string"},
"description": "Key file paths affected by this fix (aggregated from tasks)"
},
"test_strategy": {
"type": "object",
"properties": {
"scope": {
"type": "string",
"enum": ["unit", "integration", "e2e", "smoke", "full"],
"description": "Test scope to run after fix"
},
"specific_tests": {
"type": "array",
"items": {"type": "string"},
"description": "Specific test files or patterns to run"
},
"manual_verification": {
"type": "array",
"items": {"type": "string"},
"description": "Manual verification steps if automated tests not available"
}
},
"description": "Testing strategy for fix verification"
},
"rollback_plan": {
"type": "object",
"properties": {
"strategy": {
"type": "string",
"enum": ["git_revert", "feature_flag", "manual"],
"description": "Rollback strategy if fix fails"
},
"steps": {
"type": "array",
"items": {"type": "string"},
"description": "Rollback steps"
}
},
"description": "Rollback plan if fix causes issues (optional, recommended for high severity)"
},
"estimated_time": {
"type": "string",
"description": "Total estimated fix time (e.g., '30 minutes', '2 hours')"
},
"recommended_execution": {
"type": "string",
"enum": ["Agent", "Codex"],
"description": "Recommended execution method based on complexity"
},
"severity": {
"type": "string",
"enum": ["Low", "Medium", "High", "Critical"],
"description": "Bug severity level"
},
"risk_level": {
"type": "string",
"enum": ["low", "medium", "high"],
"description": "Risk level of implementing the fix"
},
"_metadata": {
"type": "object",
"required": ["timestamp", "source"],
"properties": {
"timestamp": {
"type": "string",
"format": "date-time",
"description": "ISO 8601 timestamp of planning"
},
"source": {
"type": "string",
"enum": ["cli-lite-planning-agent", "direct-planning"],
"description": "Planning source"
},
"planning_mode": {
"type": "string",
"enum": ["direct", "agent-based"],
"description": "Planning execution mode"
},
"diagnosis_angles": {
"type": "array",
"items": {"type": "string"},
"description": "Diagnosis angles used for context"
},
"duration_seconds": {
"type": "integer",
"description": "Planning duration in seconds"
}
}
}
},
"deprecated": true,
"deprecated_message": "Migrated to plan-overview-fix-schema.json (extends base) + task-schema.json.",
"migration_guide": {
"plan_level": "→ plan-overview-fix-schema.json (继承 base含 fix_context)",
"task_level": "→ .task/FIX-*.json (task-schema.json)",
"field_mapping": {
"root_cause": "→ fix_context.root_cause",
"strategy": "→ fix_context.strategy",
"severity": "→ fix_context.severity",
"risk_level": "→ fix_context.risk_level",
"test_strategy": "→ plan-overview-fix-schema.test_strategy",
"rollback_plan": "→ plan-overview-fix-schema.rollback_plan",
"tasks[].verification[]": "→ convergence.criteria[]",
"tasks[].risk": "→ risks[] (结构化)"
}
}
}