feat(cli): add support for custom execution IDs and multi-turn conversations

- Introduced `--id <id>` option in CLI for custom execution IDs.
- Enhanced CLI command handling to support multi-turn conversations.
- Updated execution and conversation detail retrieval to accommodate new structure.
- Implemented merging of multiple conversations with tracking of source IDs.
- Improved history management to save and load conversation records.
- Added styles for displaying multi-turn conversation details in the dashboard.
- Refactored existing execution detail functions for backward compatibility.
This commit is contained in:
catlog22
2025-12-13 14:03:24 +08:00
parent 23e15e479e
commit c780544792
14 changed files with 1483 additions and 640 deletions

View File

@@ -130,6 +130,31 @@
"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"
}
}
},

View File

@@ -118,6 +118,31 @@
"pattern": "^T[0-9]+$"
},
"description": "Task IDs this task depends on (e.g., ['T1', 'T2'])"
},
"cli_execution_id": {
"type": "string",
"pattern": "^[a-zA-Z0-9_-]+$",
"description": "Fixed CLI execution ID for this task (e.g., 'session-T1', 'IMPL-001-analysis')"
},
"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"
}
}
},