@intrect/openswarm 0.17.2 → 0.17.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 +21 -5
- package/config.example.yaml +18 -0
- package/dist/adapters/agenticLoop.d.ts +2 -0
- package/dist/adapters/agenticLoop.d.ts.map +1 -1
- package/dist/adapters/agenticLoop.js +6 -3
- package/dist/adapters/agenticLoop.js.map +1 -1
- package/dist/adapters/base.d.ts.map +1 -1
- package/dist/adapters/base.js +9 -0
- package/dist/adapters/base.js.map +1 -1
- package/dist/adapters/claude.d.ts.map +1 -1
- package/dist/adapters/claude.js +6 -3
- package/dist/adapters/claude.js.map +1 -1
- package/dist/adapters/codex.d.ts.map +1 -1
- package/dist/adapters/codex.js +3 -2
- package/dist/adapters/codex.js.map +1 -1
- package/dist/adapters/codexResponses.d.ts +2 -1
- package/dist/adapters/codexResponses.d.ts.map +1 -1
- package/dist/adapters/codexResponses.js +34 -30
- package/dist/adapters/codexResponses.js.map +1 -1
- package/dist/adapters/errorClassification.d.ts +11 -0
- package/dist/adapters/errorClassification.d.ts.map +1 -1
- package/dist/adapters/errorClassification.js +21 -0
- package/dist/adapters/errorClassification.js.map +1 -1
- package/dist/adapters/gpt.d.ts.map +1 -1
- package/dist/adapters/gpt.js +1 -0
- package/dist/adapters/gpt.js.map +1 -1
- package/dist/adapters/local.d.ts.map +1 -1
- package/dist/adapters/local.js +1 -0
- package/dist/adapters/local.js.map +1 -1
- package/dist/adapters/openrouter.d.ts.map +1 -1
- package/dist/adapters/openrouter.js +1 -0
- package/dist/adapters/openrouter.js.map +1 -1
- package/dist/adapters/processRegistry.d.ts.map +1 -1
- package/dist/adapters/processRegistry.js +8 -0
- package/dist/adapters/processRegistry.js.map +1 -1
- package/dist/adapters/types.d.ts +2 -0
- package/dist/adapters/types.d.ts.map +1 -1
- package/dist/agents/pairPipeline.d.ts +10 -139
- package/dist/agents/pairPipeline.d.ts.map +1 -1
- package/dist/agents/pairPipeline.js +127 -35
- package/dist/agents/pairPipeline.js.map +1 -1
- package/dist/agents/pairPipelineTypes.d.ts +109 -0
- package/dist/agents/pairPipelineTypes.d.ts.map +1 -0
- package/dist/agents/pairPipelineTypes.js +2 -0
- package/dist/agents/pairPipelineTypes.js.map +1 -0
- package/dist/agents/pipelineGuards.d.ts.map +1 -1
- package/dist/agents/pipelineGuards.js +346 -0
- package/dist/agents/pipelineGuards.js.map +1 -1
- package/dist/agents/pipelineTaskPrefix.d.ts +3 -0
- package/dist/agents/pipelineTaskPrefix.d.ts.map +1 -0
- package/dist/agents/pipelineTaskPrefix.js +16 -0
- package/dist/agents/pipelineTaskPrefix.js.map +1 -0
- package/dist/agents/reflection.d.ts +1 -1
- package/dist/agents/reflection.d.ts.map +1 -1
- package/dist/agents/reflection.js +3 -1
- package/dist/agents/reflection.js.map +1 -1
- package/dist/agents/reviewer.d.ts +6 -0
- package/dist/agents/reviewer.d.ts.map +1 -1
- package/dist/agents/reviewer.js +4 -1
- package/dist/agents/reviewer.js.map +1 -1
- package/dist/agents/stageErrorClassification.d.ts +16 -0
- package/dist/agents/stageErrorClassification.d.ts.map +1 -0
- package/dist/agents/stageErrorClassification.js +38 -0
- package/dist/agents/stageErrorClassification.js.map +1 -0
- package/dist/agents/stageModelResolver.d.ts +8 -0
- package/dist/agents/stageModelResolver.d.ts.map +1 -0
- package/dist/agents/stageModelResolver.js +22 -0
- package/dist/agents/stageModelResolver.js.map +1 -0
- package/dist/agents/worker.d.ts +33 -0
- package/dist/agents/worker.d.ts.map +1 -1
- package/dist/agents/worker.js +59 -4
- package/dist/agents/worker.js.map +1 -1
- package/dist/agents/workerFanout.d.ts +38 -0
- package/dist/agents/workerFanout.d.ts.map +1 -0
- package/dist/agents/workerFanout.js +277 -0
- package/dist/agents/workerFanout.js.map +1 -0
- package/dist/agents/workerFanoutGate.d.ts +48 -0
- package/dist/agents/workerFanoutGate.d.ts.map +1 -0
- package/dist/agents/workerFanoutGate.js +146 -0
- package/dist/agents/workerFanoutGate.js.map +1 -0
- package/dist/agents/workerValidationEvidence.d.ts +5 -0
- package/dist/agents/workerValidationEvidence.d.ts.map +1 -0
- package/dist/agents/workerValidationEvidence.js +75 -0
- package/dist/agents/workerValidationEvidence.js.map +1 -0
- package/dist/automation/autonomousRunner.d.ts +18 -6
- package/dist/automation/autonomousRunner.d.ts.map +1 -1
- package/dist/automation/autonomousRunner.js +209 -39
- package/dist/automation/autonomousRunner.js.map +1 -1
- package/dist/automation/backlogGrooming.d.ts +52 -0
- package/dist/automation/backlogGrooming.d.ts.map +1 -0
- package/dist/automation/backlogGrooming.js +231 -0
- package/dist/automation/backlogGrooming.js.map +1 -0
- package/dist/automation/runnerExecution.d.ts +1 -1
- package/dist/automation/runnerExecution.d.ts.map +1 -1
- package/dist/automation/runnerExecution.js +31 -9
- package/dist/automation/runnerExecution.js.map +1 -1
- package/dist/automation/runnerTypes.d.ts +3 -1
- package/dist/automation/runnerTypes.d.ts.map +1 -1
- package/dist/automation/taskSource.d.ts +6 -3
- package/dist/automation/taskSource.d.ts.map +1 -1
- package/dist/automation/taskSource.js +5 -0
- package/dist/automation/taskSource.js.map +1 -1
- package/dist/cli/daemon.d.ts +20 -3
- package/dist/cli/daemon.d.ts.map +1 -1
- package/dist/cli/daemon.js +42 -2
- package/dist/cli/daemon.js.map +1 -1
- package/dist/cli/fixBoard.d.ts +14 -0
- package/dist/cli/fixBoard.d.ts.map +1 -0
- package/dist/cli/fixBoard.js +32 -0
- package/dist/cli/fixBoard.js.map +1 -0
- package/dist/cli/fixCommand.d.ts +8 -0
- package/dist/cli/fixCommand.d.ts.map +1 -1
- package/dist/cli/fixCommand.js +47 -8
- package/dist/cli/fixCommand.js.map +1 -1
- package/dist/cli/memoryCommand.d.ts +37 -0
- package/dist/cli/memoryCommand.d.ts.map +1 -0
- package/dist/cli/memoryCommand.js +156 -0
- package/dist/cli/memoryCommand.js.map +1 -0
- package/dist/cli/reviewAudit.d.ts +68 -0
- package/dist/cli/reviewAudit.d.ts.map +1 -1
- package/dist/cli/reviewAudit.js +147 -4
- package/dist/cli/reviewAudit.js.map +1 -1
- package/dist/cli/reviewMaxCommand.d.ts +2 -0
- package/dist/cli/reviewMaxCommand.d.ts.map +1 -1
- package/dist/cli/reviewMaxCommand.js +61 -36
- package/dist/cli/reviewMaxCommand.js.map +1 -1
- package/dist/cli.js +68 -13
- package/dist/cli.js.map +1 -1
- package/dist/core/config.d.ts +413 -0
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +51 -5
- package/dist/core/config.js.map +1 -1
- package/dist/core/eventHub.d.ts +22 -0
- package/dist/core/eventHub.d.ts.map +1 -1
- package/dist/core/eventHub.js +1 -0
- package/dist/core/eventHub.js.map +1 -1
- package/dist/core/providerOverride.d.ts +9 -0
- package/dist/core/providerOverride.d.ts.map +1 -1
- package/dist/core/providerOverride.js +12 -0
- package/dist/core/providerOverride.js.map +1 -1
- package/dist/core/service.d.ts.map +1 -1
- package/dist/core/service.js +8 -2
- package/dist/core/service.js.map +1 -1
- package/dist/core/types.d.ts +61 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/linear/linear.d.ts +2 -1
- package/dist/linear/linear.d.ts.map +1 -1
- package/dist/linear/linear.js +16 -6
- package/dist/linear/linear.js.map +1 -1
- package/dist/locale/prompts/en.d.ts.map +1 -1
- package/dist/locale/prompts/en.js +11 -1
- package/dist/locale/prompts/en.js.map +1 -1
- package/dist/locale/prompts/ko.d.ts.map +1 -1
- package/dist/locale/prompts/ko.js +11 -1
- package/dist/locale/prompts/ko.js.map +1 -1
- package/dist/memory/compaction.d.ts +2 -2
- package/dist/memory/compaction.d.ts.map +1 -1
- package/dist/memory/compaction.js +22 -17
- package/dist/memory/compaction.js.map +1 -1
- package/dist/memory/index.d.ts +3 -3
- package/dist/memory/index.js +3 -3
- package/dist/memory/memoryCore.d.ts +15 -27
- package/dist/memory/memoryCore.d.ts.map +1 -1
- package/dist/memory/memoryCore.js +112 -97
- package/dist/memory/memoryCore.js.map +1 -1
- package/dist/memory/memoryFilters.d.ts +8 -0
- package/dist/memory/memoryFilters.d.ts.map +1 -0
- package/dist/memory/memoryFilters.js +26 -0
- package/dist/memory/memoryFilters.js.map +1 -0
- package/dist/memory/memoryOps.d.ts +7 -23
- package/dist/memory/memoryOps.d.ts.map +1 -1
- package/dist/memory/memoryOps.js +49 -109
- package/dist/memory/memoryOps.js.map +1 -1
- package/dist/memory/repoKnowledge.d.ts.map +1 -1
- package/dist/memory/repoKnowledge.js +48 -3
- package/dist/memory/repoKnowledge.js.map +1 -1
- package/dist/orchestration/conflictDetector.d.ts.map +1 -1
- package/dist/orchestration/conflictDetector.js +26 -7
- package/dist/orchestration/conflictDetector.js.map +1 -1
- package/dist/orchestration/taskScheduler.d.ts +5 -0
- package/dist/orchestration/taskScheduler.d.ts.map +1 -1
- package/dist/orchestration/taskScheduler.js +36 -12
- package/dist/orchestration/taskScheduler.js.map +1 -1
- package/dist/registry/memoryBridge.js +4 -4
- package/dist/registry/memoryBridge.js.map +1 -1
- package/dist/support/chatMemory.js +1 -1
- package/dist/support/chatMemory.js.map +1 -1
- package/dist/support/dashboardHtml.d.ts +1 -1
- package/dist/support/dashboardHtml.d.ts.map +1 -1
- package/dist/support/dashboardHtml.js +12 -0
- package/dist/support/dashboardHtml.js.map +1 -1
- package/dist/support/gitTracker.d.ts +30 -3
- package/dist/support/gitTracker.d.ts.map +1 -1
- package/dist/support/gitTracker.js +108 -29
- package/dist/support/gitTracker.js.map +1 -1
- package/dist/support/repoMetadata.d.ts +10 -0
- package/dist/support/repoMetadata.d.ts.map +1 -1
- package/dist/support/repoMetadata.js +31 -0
- package/dist/support/repoMetadata.js.map +1 -1
- package/dist/support/updateNotifier.d.ts +12 -0
- package/dist/support/updateNotifier.d.ts.map +1 -1
- package/dist/support/updateNotifier.js +71 -0
- package/dist/support/updateNotifier.js.map +1 -1
- package/dist/support/web.d.ts.map +1 -1
- package/dist/support/web.js +5 -3
- package/dist/support/web.js.map +1 -1
- package/dist/support/worktreeManager.d.ts +33 -0
- package/dist/support/worktreeManager.d.ts.map +1 -1
- package/dist/support/worktreeManager.js +172 -2
- package/dist/support/worktreeManager.js.map +1 -1
- package/dist/tui/App.js +1 -1
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/components/AuditBoard.d.ts +3 -2
- package/dist/tui/components/AuditBoard.d.ts.map +1 -1
- package/dist/tui/components/AuditBoard.js +13 -4
- package/dist/tui/components/AuditBoard.js.map +1 -1
- package/dist/tui/components/DataTable.d.ts +3 -1
- package/dist/tui/components/DataTable.d.ts.map +1 -1
- package/dist/tui/components/DataTable.js +22 -5
- package/dist/tui/components/DataTable.js.map +1 -1
- package/dist/tui/components/StageTimeline.d.ts +1 -1
- package/dist/tui/components/StageTimeline.d.ts.map +1 -1
- package/dist/tui/components/StageTimeline.js +5 -2
- package/dist/tui/components/StageTimeline.js.map +1 -1
- package/dist/tui/components/SubagentTree.d.ts +6 -6
- package/dist/tui/components/SubagentTree.d.ts.map +1 -1
- package/dist/tui/components/SubagentTree.js +33 -5
- package/dist/tui/components/SubagentTree.js.map +1 -1
- package/dist/tui/eventCoalescer.d.ts +29 -0
- package/dist/tui/eventCoalescer.d.ts.map +1 -0
- package/dist/tui/eventCoalescer.js +56 -0
- package/dist/tui/eventCoalescer.js.map +1 -0
- package/dist/tui/hooks/usePipelineEvents.d.ts +1 -1
- package/dist/tui/hooks/usePipelineEvents.d.ts.map +1 -1
- package/dist/tui/hooks/usePipelineEvents.js +18 -4
- package/dist/tui/hooks/usePipelineEvents.js.map +1 -1
- package/dist/tui/monitorRows.d.ts +41 -2
- package/dist/tui/monitorRows.d.ts.map +1 -1
- package/dist/tui/monitorRows.js +86 -7
- package/dist/tui/monitorRows.js.map +1 -1
- package/dist/tui/panels/MonitorPanel.d.ts +2 -1
- package/dist/tui/panels/MonitorPanel.d.ts.map +1 -1
- package/dist/tui/panels/MonitorPanel.js +2 -2
- package/dist/tui/panels/MonitorPanel.js.map +1 -1
- package/dist/tui/panels/PipelinePanel.d.ts.map +1 -1
- package/dist/tui/panels/PipelinePanel.js +6 -1
- package/dist/tui/panels/PipelinePanel.js.map +1 -1
- package/dist/tui/pipelineEvents.d.ts +14 -0
- package/dist/tui/pipelineEvents.d.ts.map +1 -1
- package/dist/tui/pipelineEvents.js +89 -1
- package/dist/tui/pipelineEvents.js.map +1 -1
- package/dist/tui/subagentTree.d.ts +26 -3
- package/dist/tui/subagentTree.d.ts.map +1 -1
- package/dist/tui/subagentTree.js +89 -14
- package/dist/tui/subagentTree.js.map +1 -1
- package/package.json +1 -1
package/dist/tui/monitorRows.js
CHANGED
|
@@ -5,15 +5,64 @@
|
|
|
5
5
|
// ============================================
|
|
6
6
|
export function projectsToTable(projects) {
|
|
7
7
|
return {
|
|
8
|
-
columns: ['', 'PROJECT', 'RUN', 'QUEUE'],
|
|
8
|
+
columns: ['', 'PROJECT', 'PATH', 'GIT/WT', 'LINEAR', 'RUN', 'QUEUE', 'PEND', 'LAST'],
|
|
9
9
|
rows: projects.map((p) => [
|
|
10
10
|
p.enabled ? '●' : '○',
|
|
11
11
|
p.name,
|
|
12
|
+
compactPath(p.path),
|
|
13
|
+
gitSummary(p),
|
|
14
|
+
p.linearProject ?? '',
|
|
12
15
|
String(p.running?.length ?? 0),
|
|
13
16
|
String(p.queued?.length ?? 0),
|
|
17
|
+
String(p.pending?.length ?? 0),
|
|
18
|
+
latestProjectActivity(p),
|
|
14
19
|
]),
|
|
15
20
|
};
|
|
16
21
|
}
|
|
22
|
+
function compactPath(path) {
|
|
23
|
+
const parts = path.split('/').filter(Boolean);
|
|
24
|
+
return parts.length <= 2 ? path : `…/${parts.slice(-2).join('/')}`;
|
|
25
|
+
}
|
|
26
|
+
function gitSummary(p) {
|
|
27
|
+
const git = p.git;
|
|
28
|
+
const branch = git?.branch ?? (p.prs?.[0]?.branch);
|
|
29
|
+
if (!branch)
|
|
30
|
+
return '';
|
|
31
|
+
const dirty = git?.hasChanges ? ` +${git.uncommittedFiles ?? 0}` : '';
|
|
32
|
+
const sync = `${git?.ahead ? ` ↑${git.ahead}` : ''}${git?.behind ? ` ↓${git.behind}` : ''}`;
|
|
33
|
+
return `${branch}${dirty}${sync}`;
|
|
34
|
+
}
|
|
35
|
+
function latestProjectActivity(p) {
|
|
36
|
+
const running = p.running?.[0];
|
|
37
|
+
if (running)
|
|
38
|
+
return `run ${truncate(running.title || running.id, 18)}`;
|
|
39
|
+
const queued = p.queued?.[0];
|
|
40
|
+
if (queued)
|
|
41
|
+
return `queue ${truncate(queued.title || queued.id, 16)}`;
|
|
42
|
+
const pending = p.pending?.[0];
|
|
43
|
+
if (pending)
|
|
44
|
+
return `${pending.linearState ?? 'Todo'} ${pending.issueIdentifier ?? pending.id}`;
|
|
45
|
+
const pr = p.prs?.[0];
|
|
46
|
+
if (pr)
|
|
47
|
+
return `PR #${pr.number}`;
|
|
48
|
+
return '';
|
|
49
|
+
}
|
|
50
|
+
function shortModel(model) {
|
|
51
|
+
return model ? model.split('-').slice(-2).join('-') : '';
|
|
52
|
+
}
|
|
53
|
+
function elapsed(ms) {
|
|
54
|
+
if (!ms)
|
|
55
|
+
return '';
|
|
56
|
+
if (ms < 1000)
|
|
57
|
+
return `${ms}ms`;
|
|
58
|
+
return `${Math.round(ms / 1000)}s`;
|
|
59
|
+
}
|
|
60
|
+
function titleOf(data) {
|
|
61
|
+
return data.issueIdentifier || data.title || data.taskId || '';
|
|
62
|
+
}
|
|
63
|
+
function truncate(value, max) {
|
|
64
|
+
return value.length > max ? `${value.slice(0, max - 1)}…` : value;
|
|
65
|
+
}
|
|
17
66
|
const STAGE_ICON = { start: '◐', complete: '●', fail: '✗' };
|
|
18
67
|
/** Most-recent pipeline stage events as task rows (newest first). */
|
|
19
68
|
export function pipelineToTable(stages, limit = 15) {
|
|
@@ -24,20 +73,36 @@ export function pipelineToTable(stages, limit = 15) {
|
|
|
24
73
|
info.set(ev.data.taskId, ev.data.issueIdentifier || ev.data.title || ev.data.taskId);
|
|
25
74
|
}
|
|
26
75
|
else if (ev.type === 'pipeline:stage' && ev.data.taskId && ev.data.stage) {
|
|
27
|
-
events.push({ taskId: ev.data.taskId, stage: ev.data.stage, status: ev.data.status ?? ''
|
|
76
|
+
events.push({ ...ev.data, taskId: ev.data.taskId, stage: ev.data.stage, status: ev.data.status ?? '' });
|
|
28
77
|
}
|
|
29
78
|
}
|
|
30
79
|
const recent = events.slice(-limit).reverse();
|
|
31
80
|
return {
|
|
32
|
-
columns: ['TASK', 'STAGE', 'MODEL', '
|
|
81
|
+
columns: ['TASK', 'PROJECT', 'STAGE', 'MODEL', 'STATE', 'AGE', 'DETAIL'],
|
|
33
82
|
rows: recent.map((e) => [
|
|
34
|
-
(info.get(e.taskId) ?? e
|
|
83
|
+
truncate(info.get(e.taskId) ?? titleOf(e), 16),
|
|
84
|
+
e.repository ?? compactPath(e.projectPath ?? ''),
|
|
35
85
|
e.stage,
|
|
36
|
-
e.model
|
|
37
|
-
`${STAGE_ICON[e.status] ?? '○'} ${e.status}`,
|
|
86
|
+
shortModel(e.model),
|
|
87
|
+
`${STAGE_ICON[e.status] ?? '○'} ${e.status}${e.decision ? `/${e.decision}` : ''}`,
|
|
88
|
+
elapsed(e.durationMs),
|
|
89
|
+
stageDetail(e),
|
|
38
90
|
]),
|
|
39
91
|
};
|
|
40
92
|
}
|
|
93
|
+
function stageDetail(e) {
|
|
94
|
+
if (e.error)
|
|
95
|
+
return truncate(e.error, 24);
|
|
96
|
+
if (e.summary)
|
|
97
|
+
return truncate(e.summary, 24);
|
|
98
|
+
if (e.feedback)
|
|
99
|
+
return truncate(e.feedback, 24);
|
|
100
|
+
if (e.filesChangedCount != null)
|
|
101
|
+
return `${e.filesChangedCount} files`;
|
|
102
|
+
if (e.issuesCount != null)
|
|
103
|
+
return `${e.issuesCount} issues`;
|
|
104
|
+
return '';
|
|
105
|
+
}
|
|
41
106
|
const PRIO = (p) => {
|
|
42
107
|
if (typeof p === 'string') {
|
|
43
108
|
const normalized = p.toLowerCase();
|
|
@@ -51,13 +116,27 @@ export function stuckToTable(stuck, failed) {
|
|
|
51
116
|
i.identifier,
|
|
52
117
|
i.title.length > 40 ? `${i.title.slice(0, 39)}…` : i.title,
|
|
53
118
|
PRIO(i.priority),
|
|
119
|
+
i.project?.name ?? '',
|
|
54
120
|
i.reason.length > 30 ? `${i.reason.slice(0, 29)}…` : i.reason,
|
|
121
|
+
issueContext(i),
|
|
55
122
|
];
|
|
56
123
|
return {
|
|
57
|
-
columns: ['KIND', 'ID', 'TITLE', 'PRIO', 'REASON'],
|
|
124
|
+
columns: ['KIND', 'ID', 'TITLE', 'PRIO', 'PROJECT', 'REASON', 'CONTEXT'],
|
|
58
125
|
rows: [...stuck.map(row('stuck')), ...failed.map(row('failed'))],
|
|
59
126
|
};
|
|
60
127
|
}
|
|
128
|
+
function issueContext(i) {
|
|
129
|
+
const latestComment = [...(i.comments ?? [])]
|
|
130
|
+
.sort((a, b) => b.createdAt.localeCompare(a.createdAt))[0];
|
|
131
|
+
if (latestComment?.body)
|
|
132
|
+
return truncate(latestComment.body.replace(/\s+/g, ' ').trim(), 24);
|
|
133
|
+
if (typeof i.stuckDays === 'number')
|
|
134
|
+
return `${i.stuckDays}d stale`;
|
|
135
|
+
const labels = (i.labels ?? []).filter(l => ['retry', 'failed', 'blocked', 'needs-help', 'swarm:stuck'].includes(l));
|
|
136
|
+
if (labels.length > 0)
|
|
137
|
+
return truncate(labels.join(','), 24);
|
|
138
|
+
return i.state ?? '';
|
|
139
|
+
}
|
|
61
140
|
export function issuesToTable(issues) {
|
|
62
141
|
return {
|
|
63
142
|
columns: ['TITLE', 'STATUS', 'PRIO'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monitorRows.js","sourceRoot":"","sources":["../../src/tui/monitorRows.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,gEAAgE;AAChE,6EAA6E;AAC7E,6EAA6E;AAC7E,+CAA+C;
|
|
1
|
+
{"version":3,"file":"monitorRows.js","sourceRoot":"","sources":["../../src/tui/monitorRows.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ export interface MonitorPanelProps {
|
|
|
3
3
|
port?: number;
|
|
4
4
|
fetcher: (port: number) => Promise<Table>;
|
|
5
5
|
empty?: string;
|
|
6
|
+
terminalWidth?: number;
|
|
6
7
|
}
|
|
7
|
-
export declare function MonitorPanel({ port, fetcher, empty }: MonitorPanelProps): import("react").JSX.Element;
|
|
8
|
+
export declare function MonitorPanel({ port, fetcher, empty, terminalWidth }: MonitorPanelProps): import("react").JSX.Element;
|
|
8
9
|
//# sourceMappingURL=MonitorPanel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonitorPanel.d.ts","sourceRoot":"","sources":["../../../src/tui/panels/MonitorPanel.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"MonitorPanel.d.ts","sourceRoot":"","sources":["../../../src/tui/panels/MonitorPanel.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,iBAAiB,+BAMtF"}
|
|
@@ -6,7 +6,7 @@ import { Text } from 'ink';
|
|
|
6
6
|
import { DataTable } from '../components/DataTable.js';
|
|
7
7
|
import { useMonitor } from '../hooks/useMonitor.js';
|
|
8
8
|
import { theme } from '../theme.js';
|
|
9
|
-
export function MonitorPanel({ port, fetcher, empty }) {
|
|
9
|
+
export function MonitorPanel({ port, fetcher, empty, terminalWidth }) {
|
|
10
10
|
const { table, error, loading } = useMonitor(port, fetcher);
|
|
11
11
|
if (!port)
|
|
12
12
|
return _jsx(Text, { dimColor: true, children: "\u25CB daemon port unknown" });
|
|
@@ -14,6 +14,6 @@ export function MonitorPanel({ port, fetcher, empty }) {
|
|
|
14
14
|
return _jsx(Text, { color: theme.err, children: `load failed: ${error}` });
|
|
15
15
|
if (!table)
|
|
16
16
|
return _jsx(Text, { dimColor: true, children: loading ? 'loading…' : '(no data)' });
|
|
17
|
-
return _jsx(DataTable, { columns: table.columns, rows: table.rows, empty: empty });
|
|
17
|
+
return _jsx(DataTable, { columns: table.columns, rows: table.rows, empty: empty, terminalWidth: terminalWidth });
|
|
18
18
|
}
|
|
19
19
|
//# sourceMappingURL=MonitorPanel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonitorPanel.js","sourceRoot":"","sources":["../../../src/tui/panels/MonitorPanel.tsx"],"names":[],"mappings":";AAAA,wEAAwE;AACxE,2EAA2E;AAC3E,+EAA+E;AAC/E,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"MonitorPanel.js","sourceRoot":"","sources":["../../../src/tui/panels/MonitorPanel.tsx"],"names":[],"mappings":";AAAA,wEAAwE;AACxE,2EAA2E;AAC3E,+EAA+E;AAC/E,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAUpC,MAAM,UAAU,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAqB;IACrF,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5D,IAAI,CAAC,IAAI;QAAE,OAAO,KAAC,IAAI,IAAC,QAAQ,iDAA6B,CAAC;IAC9D,IAAI,KAAK;QAAE,OAAO,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,GAAG,YAAG,gBAAgB,KAAK,EAAE,GAAQ,CAAC;IAC3E,IAAI,CAAC,KAAK;QAAE,OAAO,KAAC,IAAI,IAAC,QAAQ,kBAAE,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,GAAQ,CAAC;IAC9E,OAAO,KAAC,SAAS,IAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,GAAI,CAAC;AAC7G,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PipelinePanel.d.ts","sourceRoot":"","sources":["../../../src/tui/panels/PipelinePanel.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PipelinePanel.d.ts","sourceRoot":"","sources":["../../../src/tui/panels/PipelinePanel.tsx"],"names":[],"mappings":"AAYA,MAAM,WAAW,kBAAkB;IACjC,2EAA2E;IAC3E,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE,kBAAkB,+BA2BzD"}
|
|
@@ -3,6 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
3
3
|
// Subscribes to the daemon SSE stream and shows the stage timeline + live log,
|
|
4
4
|
// the CLI counterpart of the web dashboard's PIPELINE tab.
|
|
5
5
|
import { Box, Text } from 'ink';
|
|
6
|
+
import { useMemo } from 'react';
|
|
6
7
|
import { StageTimeline } from '../components/StageTimeline.js';
|
|
7
8
|
import { SubagentTree } from '../components/SubagentTree.js';
|
|
8
9
|
import { LiveLog } from '../components/LiveLog.js';
|
|
@@ -11,12 +12,16 @@ import { buildSubagentTree } from '../subagentTree.js';
|
|
|
11
12
|
import { theme } from '../theme.js';
|
|
12
13
|
export function PipelinePanel({ port }) {
|
|
13
14
|
const { stages, logs, connected } = usePipelineEvents(port);
|
|
15
|
+
// Stabilize the tree identity so it only rebuilds when stages actually change
|
|
16
|
+
// (log-only updates keep the same `stages` reference). Prevents SubagentTree's
|
|
17
|
+
// spinner effect from re-subscribing every render + lets React.memo skip it. (INT-2407)
|
|
18
|
+
const repositories = useMemo(() => buildSubagentTree(stages), [stages]);
|
|
14
19
|
const live = !!port && connected;
|
|
15
20
|
const label = !port
|
|
16
21
|
? ' daemon port unknown'
|
|
17
22
|
: connected
|
|
18
23
|
? ` live (:${port})`
|
|
19
24
|
: ` connecting :${port}…`;
|
|
20
|
-
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { children: [_jsx(Text, { color: live ? theme.ok : theme.dim, children: live ? '●' : '○' }), _jsx(Text, { dimColor: true, children: label })] }), _jsx(SubagentTree, {
|
|
25
|
+
return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { children: [_jsx(Text, { color: live ? theme.ok : theme.dim, children: live ? '●' : '○' }), _jsx(Text, { dimColor: true, children: label })] }), _jsx(SubagentTree, { repositories: repositories }), _jsx(Box, { marginTop: 1, children: _jsx(StageTimeline, { stages: stages }) }), _jsx(Box, { marginTop: 1, children: _jsx(LiveLog, { logs: logs }) })] }));
|
|
21
26
|
}
|
|
22
27
|
//# sourceMappingURL=PipelinePanel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PipelinePanel.js","sourceRoot":"","sources":["../../../src/tui/panels/PipelinePanel.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+EAA+E;AAC/E,2DAA2D;AAC3D,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAOpC,MAAM,UAAU,aAAa,CAAC,EAAE,IAAI,EAAsB;IACxD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC;IACjC,MAAM,KAAK,GAAG,CAAC,IAAI;QACjB,CAAC,CAAC,sBAAsB;QACxB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,WAAW,IAAI,GAAG;YACpB,CAAC,CAAC,gBAAgB,IAAI,GAAG,CAAC;IAC5B,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,YAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAQ,EACnE,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,GAAQ,IACxB,EACP,KAAC,YAAY,IAAC,
|
|
1
|
+
{"version":3,"file":"PipelinePanel.js","sourceRoot":"","sources":["../../../src/tui/panels/PipelinePanel.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+EAA+E;AAC/E,2DAA2D;AAC3D,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAOpC,MAAM,UAAU,aAAa,CAAC,EAAE,IAAI,EAAsB;IACxD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC5D,8EAA8E;IAC9E,+EAA+E;IAC/E,wFAAwF;IACxF,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACxE,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC;IACjC,MAAM,KAAK,GAAG,CAAC,IAAI;QACjB,CAAC,CAAC,sBAAsB;QACxB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,WAAW,IAAI,GAAG;YACpB,CAAC,CAAC,gBAAgB,IAAI,GAAG,CAAC;IAC5B,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,YAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAQ,EACnE,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,GAAQ,IACxB,EACP,KAAC,YAAY,IAAC,YAAY,EAAE,YAAY,GAAI,EAC5C,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YACf,KAAC,aAAa,IAAC,MAAM,EAAE,MAAM,GAAI,GAC7B,EACN,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YACf,KAAC,OAAO,IAAC,IAAI,EAAE,IAAI,GAAI,GACnB,IACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -3,11 +3,19 @@ export interface StageEntry {
|
|
|
3
3
|
taskId: string;
|
|
4
4
|
stage: string;
|
|
5
5
|
status: 'start' | 'complete' | 'fail';
|
|
6
|
+
repository?: string;
|
|
7
|
+
projectPath?: string;
|
|
8
|
+
worktree?: string;
|
|
9
|
+
branch?: string;
|
|
10
|
+
issueIdentifier?: string;
|
|
11
|
+
title?: string;
|
|
6
12
|
model?: string;
|
|
7
13
|
durationMs?: number;
|
|
8
14
|
costUsd?: number;
|
|
9
15
|
decision?: 'approve' | 'revise' | 'reject';
|
|
10
16
|
summary?: string;
|
|
17
|
+
activity?: string;
|
|
18
|
+
rateLimitResetsAt?: number;
|
|
11
19
|
}
|
|
12
20
|
export interface PipelineState {
|
|
13
21
|
stages: StageEntry[];
|
|
@@ -18,4 +26,10 @@ export declare const MAX_LOGS = 200;
|
|
|
18
26
|
export declare const initialPipelineState: PipelineState;
|
|
19
27
|
/** Fold one HubEvent into pipeline state (reducer shape: (state, action)). */
|
|
20
28
|
export declare function reducePipelineEvent(state: PipelineState, ev: HubEvent): PipelineState;
|
|
29
|
+
/**
|
|
30
|
+
* Fold a batch of events into state in a single step so a coalesced burst of
|
|
31
|
+
* SSE events produces one new state (one commit → one repaint). (INT-2407)
|
|
32
|
+
*/
|
|
33
|
+
export declare function reducePipelineEvents(state: PipelineState, events: HubEvent[]): PipelineState;
|
|
34
|
+
export declare function classifyActivity(line: string): string | undefined;
|
|
21
35
|
//# sourceMappingURL=pipelineEvents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipelineEvents.d.ts","sourceRoot":"","sources":["../../src/tui/pipelineEvents.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"pipelineEvents.d.ts","sourceRoot":"","sources":["../../src/tui/pipelineEvents.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,eAAO,MAAM,UAAU,MAAM,CAAC;AAC9B,eAAO,MAAM,QAAQ,MAAM,CAAC;AAE5B,eAAO,MAAM,oBAAoB,EAAE,aAAwC,CAAC;AAE5E,8EAA8E;AAC9E,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,GAAG,aAAa,CA+DrF;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,aAAa,CAE5F;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAajE"}
|
|
@@ -14,17 +14,105 @@ export function reducePipelineEvent(state, ev) {
|
|
|
14
14
|
taskId: d.taskId,
|
|
15
15
|
stage: d.stage,
|
|
16
16
|
status: d.status,
|
|
17
|
+
repository: d.repository,
|
|
18
|
+
projectPath: d.projectPath,
|
|
19
|
+
worktree: d.worktree,
|
|
20
|
+
branch: d.branch,
|
|
21
|
+
issueIdentifier: d.issueIdentifier,
|
|
22
|
+
title: d.title,
|
|
17
23
|
model: d.model,
|
|
18
24
|
durationMs: d.durationMs,
|
|
19
25
|
costUsd: d.costUsd,
|
|
20
26
|
decision: d.decision,
|
|
21
27
|
summary: d.summary,
|
|
28
|
+
activity: d.status === 'start' ? 'waiting' : activityFromStage(d.error),
|
|
29
|
+
rateLimitResetsAt: d.rateLimitResetsAt,
|
|
30
|
+
};
|
|
31
|
+
return { ...state, stages: [...state.stages, entry].slice(-MAX_STAGES) };
|
|
32
|
+
}
|
|
33
|
+
if (ev.type === 'pipeline:fanout') {
|
|
34
|
+
const d = ev.data;
|
|
35
|
+
const summary = d.enabled
|
|
36
|
+
? `${d.shouldFanOut ? 'fan-out recommended' : 'single-worker path'} (score ${d.score}/${d.threshold})`
|
|
37
|
+
: 'fan-out disabled';
|
|
38
|
+
const entry = {
|
|
39
|
+
taskId: d.taskId,
|
|
40
|
+
stage: 'fanout',
|
|
41
|
+
status: 'complete',
|
|
42
|
+
summary: d.reasons.length > 0 ? `${summary}: ${d.reasons.join(', ')}` : summary,
|
|
43
|
+
activity: d.shouldFanOut ? 'fan-out' : 'single-worker',
|
|
22
44
|
};
|
|
23
45
|
return { ...state, stages: [...state.stages, entry].slice(-MAX_STAGES) };
|
|
24
46
|
}
|
|
25
47
|
if (ev.type === 'log') {
|
|
26
|
-
|
|
48
|
+
const activity = classifyActivity(ev.data.line);
|
|
49
|
+
return {
|
|
50
|
+
...state,
|
|
51
|
+
stages: activity
|
|
52
|
+
? updateLatestActivity(state.stages, ev.data.taskId, ev.data.stage, activity)
|
|
53
|
+
: state.stages,
|
|
54
|
+
logs: [...state.logs, `[${ev.data.stage}] ${ev.data.line}`].slice(-MAX_LOGS),
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
if (ev.type === 'process:spawn') {
|
|
58
|
+
return {
|
|
59
|
+
...state,
|
|
60
|
+
stages: updateLatestActivity(state.stages, ev.data.taskId, ev.data.stage, 'waiting', ev.data.model),
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
if (ev.type === 'process:exit') {
|
|
64
|
+
if (!ev.data.taskId || !ev.data.stage)
|
|
65
|
+
return state;
|
|
66
|
+
return {
|
|
67
|
+
...state,
|
|
68
|
+
stages: state.stages.map((stage) => stage.taskId === ev.data.taskId && stage.stage === ev.data.stage && stage.activity === 'waiting'
|
|
69
|
+
? { ...stage, activity: undefined }
|
|
70
|
+
: stage),
|
|
71
|
+
};
|
|
27
72
|
}
|
|
28
73
|
return state;
|
|
29
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Fold a batch of events into state in a single step so a coalesced burst of
|
|
77
|
+
* SSE events produces one new state (one commit → one repaint). (INT-2407)
|
|
78
|
+
*/
|
|
79
|
+
export function reducePipelineEvents(state, events) {
|
|
80
|
+
return events.reduce(reducePipelineEvent, state);
|
|
81
|
+
}
|
|
82
|
+
export function classifyActivity(line) {
|
|
83
|
+
const text = line.trim();
|
|
84
|
+
const lower = text.toLowerCase();
|
|
85
|
+
if (/\b(rate[-\s]?limit|quota|429)\b/.test(lower))
|
|
86
|
+
return 'rate-limited';
|
|
87
|
+
const tool = text.match(/(?:tool[:\s]+|🔧\s*)([a-zA-Z_][\w-]*)/);
|
|
88
|
+
if (tool)
|
|
89
|
+
return `tool: ${tool[1]}`;
|
|
90
|
+
if (/\b(apply_patch|read_file|write_file|edit_file|bash|shell|rg|grep)\b/.test(lower)) {
|
|
91
|
+
const matched = lower.match(/\b(apply_patch|read_file|write_file|edit_file|bash|shell|rg|grep)\b/);
|
|
92
|
+
return matched ? `tool: ${matched[1]}` : 'tool';
|
|
93
|
+
}
|
|
94
|
+
if (/\b(reasoning|thinking|analyzing|checking|planning)\b/.test(lower) || text.startsWith('💭'))
|
|
95
|
+
return 'thinking';
|
|
96
|
+
if (/\b(waiting|pending|queued)\b/.test(lower))
|
|
97
|
+
return 'waiting';
|
|
98
|
+
return undefined;
|
|
99
|
+
}
|
|
100
|
+
function activityFromStage(error) {
|
|
101
|
+
return error ? classifyActivity(error) : undefined;
|
|
102
|
+
}
|
|
103
|
+
function updateLatestActivity(stages, taskId, stageName, activity, model) {
|
|
104
|
+
for (let i = stages.length - 1; i >= 0; i--) {
|
|
105
|
+
const stage = stages[i];
|
|
106
|
+
if (stage.taskId !== taskId || stage.stage !== stageName || stage.status !== 'start')
|
|
107
|
+
continue;
|
|
108
|
+
const next = stages.slice();
|
|
109
|
+
next[i] = {
|
|
110
|
+
...stage,
|
|
111
|
+
activity,
|
|
112
|
+
model: stage.model ?? model,
|
|
113
|
+
};
|
|
114
|
+
return next;
|
|
115
|
+
}
|
|
116
|
+
return stages;
|
|
117
|
+
}
|
|
30
118
|
//# sourceMappingURL=pipelineEvents.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipelineEvents.js","sourceRoot":"","sources":["../../src/tui/pipelineEvents.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,mEAAmE;AACnE,8EAA8E;AAC9E,4DAA4D;AAC5D,+CAA+C;
|
|
1
|
+
{"version":3,"file":"pipelineEvents.js","sourceRoot":"","sources":["../../src/tui/pipelineEvents.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,33 @@
|
|
|
1
1
|
import type { StageEntry } from './pipelineEvents.js';
|
|
2
2
|
export type TaskStatus = 'start' | 'complete' | 'fail';
|
|
3
|
-
export interface
|
|
3
|
+
export interface RoleNode {
|
|
4
|
+
role: string;
|
|
5
|
+
status: TaskStatus;
|
|
6
|
+
model?: string;
|
|
7
|
+
durationMs?: number;
|
|
8
|
+
decision?: 'approve' | 'revise' | 'reject';
|
|
9
|
+
summary?: string;
|
|
10
|
+
activity?: string;
|
|
11
|
+
rateLimitResetsAt?: number;
|
|
12
|
+
}
|
|
13
|
+
export interface WorktreeNode {
|
|
4
14
|
taskId: string;
|
|
5
|
-
|
|
15
|
+
issueIdentifier?: string;
|
|
16
|
+
title?: string;
|
|
17
|
+
branch?: string;
|
|
18
|
+
worktree?: string;
|
|
19
|
+
currentStage?: string;
|
|
20
|
+
durationMs?: number;
|
|
21
|
+
decision?: 'approve' | 'revise' | 'reject';
|
|
22
|
+
roles: RoleNode[];
|
|
6
23
|
/** Rolled-up status: fail if any stage failed, complete if all complete, else running. */
|
|
7
24
|
status: TaskStatus;
|
|
8
25
|
}
|
|
9
|
-
export
|
|
26
|
+
export interface RepositoryNode {
|
|
27
|
+
repository: string;
|
|
28
|
+
projectPath?: string;
|
|
29
|
+
worktrees: WorktreeNode[];
|
|
30
|
+
status: TaskStatus;
|
|
31
|
+
}
|
|
32
|
+
export declare function buildSubagentTree(stages: StageEntry[]): RepositoryNode[];
|
|
10
33
|
//# sourceMappingURL=subagentTree.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagentTree.d.ts","sourceRoot":"","sources":["../../src/tui/subagentTree.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"subagentTree.d.ts","sourceRoot":"","sources":["../../src/tui/subagentTree.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;AAEvD,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,0FAA0F;IAC1F,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,cAAc,EAAE,CAoDxE"}
|
package/dist/tui/subagentTree.js
CHANGED
|
@@ -1,25 +1,57 @@
|
|
|
1
1
|
// ============================================
|
|
2
2
|
// OpenSwarm - Subagent tree (EPIC INT-1813 S7 / INT-1940)
|
|
3
|
-
// Pure grouping of pipeline stage entries into a
|
|
4
|
-
// the Claude-Code-subagent view of concurrent runs. Derived from the existing
|
|
5
|
-
// taskId-keyed events (each worktree task = one node, its stages = children), so
|
|
6
|
-
// no new backend event stream is required to surface the tree.
|
|
3
|
+
// Pure grouping of pipeline stage entries into a repository → worktree → role tree.
|
|
7
4
|
// ============================================
|
|
8
5
|
export function buildSubagentTree(stages) {
|
|
9
|
-
const
|
|
6
|
+
const byRepository = new Map();
|
|
10
7
|
for (const s of stages) {
|
|
11
|
-
const
|
|
12
|
-
|
|
8
|
+
const repository = s.repository ?? repoNameFromPath(s.projectPath) ?? 'unknown repository';
|
|
9
|
+
const worktreeKey = s.issueIdentifier ?? inferIssueIdentifier(s.taskId) ?? s.taskId ?? s.worktree ?? s.branch;
|
|
10
|
+
const repo = byRepository.get(repository) ?? new Map();
|
|
11
|
+
const arr = repo.get(worktreeKey);
|
|
12
|
+
if (arr) {
|
|
13
13
|
arr.push(s);
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
repo.delete(worktreeKey);
|
|
15
|
+
repo.set(worktreeKey, arr);
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
repo.set(worktreeKey, [s]);
|
|
19
|
+
}
|
|
20
|
+
byRepository.set(repository, repo);
|
|
16
21
|
}
|
|
17
|
-
return [...
|
|
18
|
-
const
|
|
22
|
+
return [...byRepository.entries()].map(([repository, worktreeMap]) => {
|
|
23
|
+
const worktrees = [...worktreeMap.values()].map((worktreeStages) => {
|
|
24
|
+
const latestStages = latestByStage(worktreeStages);
|
|
25
|
+
const latest = latestStages[latestStages.length - 1];
|
|
26
|
+
const roles = latestStages.map((stage) => ({
|
|
27
|
+
role: displayRole(stage.stage),
|
|
28
|
+
status: stage.status,
|
|
29
|
+
model: stage.model,
|
|
30
|
+
durationMs: stage.durationMs,
|
|
31
|
+
decision: stage.decision,
|
|
32
|
+
summary: stage.summary,
|
|
33
|
+
activity: stage.activity,
|
|
34
|
+
rateLimitResetsAt: stage.rateLimitResetsAt,
|
|
35
|
+
}));
|
|
36
|
+
const withMetadata = [...latestStages].reverse();
|
|
37
|
+
return {
|
|
38
|
+
taskId: latest?.taskId ?? worktreeStages[0]?.taskId ?? 'unknown-task',
|
|
39
|
+
issueIdentifier: firstDefined(withMetadata, (stage) => stage.issueIdentifier) ?? inferIssueIdentifier(latest?.taskId) ?? latest?.taskId,
|
|
40
|
+
title: firstDefined(withMetadata, (stage) => stage.title),
|
|
41
|
+
branch: firstDefined(withMetadata, (stage) => stage.branch),
|
|
42
|
+
worktree: firstDefined(withMetadata, (stage) => stage.worktree) ?? worktreeNameFromPath(latest?.projectPath),
|
|
43
|
+
currentStage: latest ? displayRole(latest.stage) : undefined,
|
|
44
|
+
durationMs: latest?.durationMs,
|
|
45
|
+
decision: findLast(latestStages, (stage) => Boolean(stage.decision))?.decision,
|
|
46
|
+
roles,
|
|
47
|
+
status: rollUp(latestStages),
|
|
48
|
+
};
|
|
49
|
+
});
|
|
19
50
|
return {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
51
|
+
repository,
|
|
52
|
+
projectPath: worktrees.map((w) => w.worktree).find(Boolean) ? undefined : latestProjectPath(worktreeMap),
|
|
53
|
+
worktrees,
|
|
54
|
+
status: rollUp(worktrees.flatMap((w) => w.roles.map((role) => ({ status: role.status })))),
|
|
23
55
|
};
|
|
24
56
|
});
|
|
25
57
|
}
|
|
@@ -38,4 +70,47 @@ function rollUp(stages) {
|
|
|
38
70
|
return 'complete';
|
|
39
71
|
return 'start';
|
|
40
72
|
}
|
|
73
|
+
function displayRole(stage) {
|
|
74
|
+
if (stage === 'draft')
|
|
75
|
+
return 'Drafter';
|
|
76
|
+
if (stage === 'decompose')
|
|
77
|
+
return 'Planner';
|
|
78
|
+
return stage.charAt(0).toUpperCase() + stage.slice(1);
|
|
79
|
+
}
|
|
80
|
+
function repoNameFromPath(projectPath) {
|
|
81
|
+
if (!projectPath)
|
|
82
|
+
return undefined;
|
|
83
|
+
const normalized = projectPath.replace(/\/+$/, '');
|
|
84
|
+
const beforeWorktree = normalized.replace(/\/worktree\/[^/]+$/, '');
|
|
85
|
+
return beforeWorktree.split('/').pop();
|
|
86
|
+
}
|
|
87
|
+
function worktreeNameFromPath(projectPath) {
|
|
88
|
+
return projectPath?.match(/\/worktree\/([^/]+)\/?$/)?.[1];
|
|
89
|
+
}
|
|
90
|
+
function inferIssueIdentifier(taskId) {
|
|
91
|
+
return taskId?.match(/[A-Z]+-\d+/)?.[0];
|
|
92
|
+
}
|
|
93
|
+
function firstDefined(items, select) {
|
|
94
|
+
for (const item of items) {
|
|
95
|
+
const value = select(item);
|
|
96
|
+
if (value !== undefined && value !== '')
|
|
97
|
+
return value;
|
|
98
|
+
}
|
|
99
|
+
return undefined;
|
|
100
|
+
}
|
|
101
|
+
function latestProjectPath(worktreeMap) {
|
|
102
|
+
for (const stages of worktreeMap.values()) {
|
|
103
|
+
const latest = findLast(stages, (stage) => Boolean(stage.projectPath));
|
|
104
|
+
if (latest?.projectPath)
|
|
105
|
+
return latest.projectPath;
|
|
106
|
+
}
|
|
107
|
+
return undefined;
|
|
108
|
+
}
|
|
109
|
+
function findLast(items, predicate) {
|
|
110
|
+
for (let i = items.length - 1; i >= 0; i--) {
|
|
111
|
+
if (predicate(items[i]))
|
|
112
|
+
return items[i];
|
|
113
|
+
}
|
|
114
|
+
return undefined;
|
|
115
|
+
}
|
|
41
116
|
//# sourceMappingURL=subagentTree.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagentTree.js","sourceRoot":"","sources":["../../src/tui/subagentTree.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,0DAA0D;AAC1D,
|
|
1
|
+
{"version":3,"file":"subagentTree.js","sourceRoot":"","sources":["../../src/tui/subagentTree.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED