feat: 更新问题规划和队列命令,增强解决方案注册和用户选择逻辑

This commit is contained in:
catlog22
2025-12-28 19:58:44 +08:00
parent 8b17fad723
commit 338c3d612c
5 changed files with 139 additions and 9 deletions

View File

@@ -252,7 +252,11 @@ for (let i = 0; i < agentTasks.length; i += MAX_PARALLEL) {
for (const item of summary.bound || []) {
console.log(`${item.issue_id}: ${item.solution_id} (${item.task_count} tasks)`);
}
pendingSelections.push(...(summary.pending_selection || []));
// Collect and notify pending selections
for (const pending of summary.pending_selection || []) {
console.log(`${pending.issue_id}: ${pending.solutions.length} solutions → awaiting selection`);
pendingSelections.push(pending);
}
if (summary.conflicts?.length > 0) {
console.log(`⚠ Conflicts: ${summary.conflicts.map(c => c.file).join(', ')}`);
}
@@ -261,11 +265,13 @@ for (let i = 0; i < agentTasks.length; i += MAX_PARALLEL) {
}
```
### Phase 3: Multi-Solution Selection
### Phase 3: Multi-Solution Selection (MANDATORY when pendingSelections > 0)
```javascript
// Only handle issues where agent generated multiple solutions
// MUST trigger user selection when multiple solutions exist
if (pendingSelections.length > 0) {
console.log(`\n## User Selection Required: ${pendingSelections.length} issue(s) have multiple solutions\n`);
const answer = AskUserQuestion({
questions: pendingSelections.map(({ issue_id, solutions }) => ({
question: `Select solution for ${issue_id}:`,

View File

@@ -199,6 +199,8 @@ Phase 5: Queue Output
### Phase 1: Solution Loading
**NOTE**: Execute code directly. DO NOT pre-read solution files - Bash cat handles all reading.
```javascript
// Load issues.jsonl
const issuesPath = '.workflow/issues/issues.jsonl';