@coralai/sps-cli 0.57.8 → 0.57.10
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/dist/commands/projectInit.d.ts.map +1 -1
- package/dist/commands/projectInit.js +6 -1
- package/dist/commands/projectInit.js.map +1 -1
- package/dist/commands/setup.d.ts +9 -4
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +35 -67
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/skillCommand.js +17 -14
- package/dist/commands/skillCommand.js.map +1 -1
- package/dist/commands/tick.d.ts.map +1 -1
- package/dist/commands/tick.js +28 -7
- package/dist/commands/tick.js.map +1 -1
- package/dist/console/index.d.ts.map +1 -1
- package/dist/console/index.js +2 -0
- package/dist/console/index.js.map +1 -1
- package/dist/console/routes/chat.d.ts.map +1 -1
- package/dist/console/routes/chat.js +12 -3
- package/dist/console/routes/chat.js.map +1 -1
- package/dist/console/routes/rules.d.ts +10 -0
- package/dist/console/routes/rules.d.ts.map +1 -0
- package/dist/console/routes/rules.js +20 -0
- package/dist/console/routes/rules.js.map +1 -0
- package/dist/console/routes/skills.d.ts.map +1 -1
- package/dist/console/routes/skills.js +17 -0
- package/dist/console/routes/skills.js.map +1 -1
- package/dist/console-assets/assets/{index-l-4ti4ol.js → index-DoxhWidy.js} +209 -199
- package/dist/console-assets/assets/index-Dy_Uu2sP.css +10 -0
- package/dist/console-assets/index.html +2 -2
- package/dist/core/agents/AcpBackend.d.ts +15 -2
- package/dist/core/agents/AcpBackend.d.ts.map +1 -1
- package/dist/core/agents/AcpBackend.js +59 -6
- package/dist/core/agents/AcpBackend.js.map +1 -1
- package/dist/core/agents/AgentBackend.d.ts +20 -4
- package/dist/core/agents/AgentBackend.d.ts.map +1 -1
- package/dist/core/agents/ClaudeSdkBackend.d.ts +3 -1
- package/dist/core/agents/ClaudeSdkBackend.d.ts.map +1 -1
- package/dist/core/agents/ClaudeSdkBackend.js +7 -3
- package/dist/core/agents/ClaudeSdkBackend.js.map +1 -1
- package/dist/core/agents/resolveBackend.d.ts +2 -0
- package/dist/core/agents/resolveBackend.d.ts.map +1 -1
- package/dist/core/agents/resolveBackend.js +1 -1
- package/dist/core/agents/resolveBackend.js.map +1 -1
- package/dist/core/skills/SkillsManager.d.ts +6 -1
- package/dist/core/skills/SkillsManager.d.ts.map +1 -1
- package/dist/core/skills/SkillsManager.js +7 -3
- package/dist/core/skills/SkillsManager.js.map +1 -1
- package/dist/core/skills/distribution.d.ts +17 -2
- package/dist/core/skills/distribution.d.ts.map +1 -1
- package/dist/core/skills/distribution.js +42 -4
- package/dist/core/skills/distribution.js.map +1 -1
- package/dist/core/skills/index.d.ts +2 -1
- package/dist/core/skills/index.d.ts.map +1 -1
- package/dist/core/skills/index.js +2 -1
- package/dist/core/skills/index.js.map +1 -1
- package/dist/core/skills/policy.d.ts +24 -0
- package/dist/core/skills/policy.d.ts.map +1 -0
- package/dist/core/skills/policy.js +91 -0
- package/dist/core/skills/policy.js.map +1 -0
- package/dist/core/skills/types.d.ts +2 -0
- package/dist/core/skills/types.d.ts.map +1 -1
- package/dist/daemon/daemonClient.d.ts +5 -0
- package/dist/daemon/daemonClient.d.ts.map +1 -1
- package/dist/daemon/daemonClient.js.map +1 -1
- package/dist/daemon/sessionDaemon.d.ts.map +1 -1
- package/dist/daemon/sessionDaemon.js.map +1 -1
- package/dist/engines/smartarrange/PipelineWorkerExec.d.ts +1 -1
- package/dist/engines/smartarrange/runner.d.ts +0 -2
- package/dist/engines/smartarrange/runner.d.ts.map +1 -1
- package/dist/engines/smartarrange/runner.js +9 -71
- package/dist/engines/smartarrange/runner.js.map +1 -1
- package/dist/manager/worker-manager-impl.d.ts +18 -1
- package/dist/manager/worker-manager-impl.d.ts.map +1 -1
- package/dist/manager/worker-manager-impl.js +148 -17
- package/dist/manager/worker-manager-impl.js.map +1 -1
- package/dist/manager/worker-manager.d.ts +12 -0
- package/dist/manager/worker-manager.d.ts.map +1 -1
- package/dist/services/RulesService.d.ts +16 -0
- package/dist/services/RulesService.d.ts.map +1 -0
- package/dist/services/RulesService.js +42 -0
- package/dist/services/RulesService.js.map +1 -0
- package/dist/services/SkillService.d.ts +25 -0
- package/dist/services/SkillService.d.ts.map +1 -1
- package/dist/services/SkillService.js +44 -42
- package/dist/services/SkillService.js.map +1 -1
- package/dist/services/container.d.ts +2 -0
- package/dist/services/container.d.ts.map +1 -1
- package/dist/services/container.js +2 -0
- package/dist/services/container.js.map +1 -1
- package/dist/shared/domainEvents.d.ts +7 -1
- package/dist/shared/domainEvents.d.ts.map +1 -1
- package/dist/shared/domainEvents.js.map +1 -1
- package/dist/shared/projectRepo.d.ts +3 -0
- package/dist/shared/projectRepo.d.ts.map +1 -0
- package/dist/shared/projectRepo.js +23 -0
- package/dist/shared/projectRepo.js.map +1 -0
- package/package.json +1 -1
- package/dist/console-assets/assets/index-BOpxRNe1.css +0 -10
- package/dist/engines/smartarrange/AcpWorkerExec.d.ts +0 -35
- package/dist/engines/smartarrange/AcpWorkerExec.d.ts.map +0 -1
- package/dist/engines/smartarrange/AcpWorkerExec.js +0 -71
- package/dist/engines/smartarrange/AcpWorkerExec.js.map +0 -1
- package/project-template/.claude/CLAUDE.md +0 -66
- package/project-template/.claude/hooks/start.sh +0 -44
- package/project-template/.claude/hooks/stop.sh +0 -54
- package/project-template/.claude/rules/.gitkeep +0 -0
- package/project-template/.claude/settings.json +0 -32
- package/project-template/.claude/settings.local.json.template +0 -3
- package/project-template/.claude/skills/.gitkeep +0 -0
- package/project-template/README.md +0 -10
- package/project-template/batch_scheduler.sh +0 -8
- package/project-template/conf.template +0 -61
- package/project-template/deploy.sh +0 -3
- package/project-template/pm_meta/.gitkeep +0 -0
|
@@ -1,23 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module engines/smartarrange/runner
|
|
3
|
-
* @description SmartArrange 组装层:把 LLMClient / CardSink /
|
|
4
|
-
* 暴露 tick()/approve() 给 tick
|
|
3
|
+
* @description SmartArrange 组装层:把 LLMClient / CardSink / PipelineWorkerExec 装进 SmartArrangeEngine,
|
|
4
|
+
* 暴露 tick()/approve() 给 tick 命令调。执行统一交给 pipeline(归一路线,见 docs/design/smartarrange-on-pipeline.md)。
|
|
5
5
|
* @layer engine
|
|
6
6
|
* @boundedContext smartarrange
|
|
7
7
|
*/
|
|
8
8
|
import { existsSync, readFileSync } from 'node:fs';
|
|
9
9
|
import { join } from 'node:path';
|
|
10
10
|
import { loadAgentsConfig } from '../../core/intel/agentsConfig.js';
|
|
11
|
-
import { loadGlobalEnv } from '../../core/config.js';
|
|
12
|
-
import { buildWorkerMemoryInstructions, ensureMemoryProvidersRegistered, memoryEnv, resolveMemoryConfig, searchMemoryUnified } from '../../core/memoryProvider.js';
|
|
13
11
|
import { LLMClient } from '../../providers/LLMClient.js';
|
|
14
|
-
import { getProvider } from '../../providers/llm/providers.js';
|
|
15
12
|
import { createTaskBackend } from '../../providers/registry.js';
|
|
16
|
-
import { resolveBackend } from '../../core/agents/resolveBackend.js';
|
|
17
|
-
import { makeFileSink } from '../../core/agents/workerOutputSink.js';
|
|
18
|
-
import { createReviewerModel } from '../../providers/llm/modelFactory.js';
|
|
19
13
|
import { SmartArrangeEngine } from '../SmartArrangeEngine.js';
|
|
20
|
-
import { AcpWorkerExec } from './AcpWorkerExec.js';
|
|
21
14
|
import { PipelineWorkerExec } from './PipelineWorkerExec.js';
|
|
22
15
|
import { IntelCardSink } from './cardSink.js';
|
|
23
16
|
import { ProjectPipelineAdapter } from '../../core/projectPipelineAdapter.js';
|
|
@@ -25,11 +18,7 @@ import { captureScreenshot } from './screenshot.js';
|
|
|
25
18
|
export class SmartArrangeRunner {
|
|
26
19
|
exec;
|
|
27
20
|
engine;
|
|
28
|
-
/** 归一路线开关:on = 执行交 pipeline(PipelineWorkerExec),orchestrator 只产卡+评审;off = 旧 AcpWorkerExec 独立执行。 */
|
|
29
|
-
onPipeline;
|
|
30
21
|
constructor(ctx) {
|
|
31
|
-
const onPipeline = ctx.config.raw.SMARTARRANGE_ON_PIPELINE === 'true';
|
|
32
|
-
this.onPipeline = onPipeline;
|
|
33
22
|
const agents = loadAgentsConfig();
|
|
34
23
|
// 项目级模型覆盖(只覆盖 model 串,agent/mode/provider 沿用全局默认);空=用全局。
|
|
35
24
|
if (ctx.config.WORKER_MODEL)
|
|
@@ -38,46 +27,16 @@ export class SmartArrangeRunner {
|
|
|
38
27
|
agents.reviewer = { ...agents.reviewer, model: ctx.config.SA_REVIEWER_MODEL };
|
|
39
28
|
const llm = new LLMClient(agents, ctx.cwd); // 传 cwd → orchestrate 挂只读探查工具
|
|
40
29
|
const taskBackend = createTaskBackend(ctx.config); // 卡 = markdown 文件,与看板同源
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
cards = new IntelCardSink(taskBackend, adapter.states.backlog);
|
|
48
|
-
exec = new PipelineWorkerExec(taskBackend, adapter);
|
|
49
|
-
ctx.log?.('[smartArrange] on-pipeline:执行交给 pipeline,orchestrator 只产卡+评审');
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
// 旧路线:AcpWorkerExec 在一个保活 AgentBackend 会话上跨 tick 独立执行。
|
|
53
|
-
cards = new IntelCardSink(taskBackend); // 卡落 Inprogress(已派发)
|
|
54
|
-
const memProvider = resolveMemoryConfig(loadGlobalEnv()).provider;
|
|
55
|
-
const memInstr = buildWorkerMemoryInstructions(ctx.project, memProvider);
|
|
56
|
-
const backend = resolveBackend(agents.worker, {
|
|
57
|
-
cwd: ctx.cwd,
|
|
58
|
-
project: ctx.project,
|
|
59
|
-
modelName: agents.worker.model,
|
|
60
|
-
sessionName: `sps-sa-${ctx.project}`,
|
|
61
|
-
acpExtraEnv: buildWorkerEnv(ctx.project, agents),
|
|
62
|
-
logsDir: ctx.logsDir,
|
|
63
|
-
makeModel: () => createReviewerModel({ providerId: agents.worker.providerId ?? 'codex', model: agents.worker.model }),
|
|
64
|
-
sessionFile: join(ctx.runtimeDir, 'worker-session.json'),
|
|
65
|
-
memoryFile: join(ctx.runtimeDir, 'worker-memory.md'),
|
|
66
|
-
});
|
|
67
|
-
backend.subscribe?.(makeFileSink(join(ctx.logsDir, `sps-sa-${ctx.project}-output.log`)));
|
|
68
|
-
const recall = async (query) => {
|
|
69
|
-
const { hits } = await searchMemoryUnified(ctx.project, query, loadGlobalEnv());
|
|
70
|
-
if (!hits.length)
|
|
71
|
-
return '';
|
|
72
|
-
return `<recalled-memory>\n${hits.map((h, i) => `${i + 1}. ${h}`).join('\n')}\n</recalled-memory>\n\n`;
|
|
73
|
-
};
|
|
74
|
-
exec = new AcpWorkerExec(backend, memInstr, recall);
|
|
75
|
-
}
|
|
76
|
-
this.exec = exec;
|
|
30
|
+
// 归一:卡落 Backlog → pipeline 的 scheduler/StageEngine 自取、派 worker(skills/durable resume/重试/监控全白拿);
|
|
31
|
+
// exec 只读看板(busy/新完成),不 spawn、不保活。worker 的 memory/prompt 由 StageEngine 侧负责。
|
|
32
|
+
const adapter = new ProjectPipelineAdapter(ctx.config, ctx.cwd);
|
|
33
|
+
const cards = new IntelCardSink(taskBackend, adapter.states.backlog);
|
|
34
|
+
this.exec = new PipelineWorkerExec(taskBackend, adapter);
|
|
35
|
+
ctx.log?.('[smartArrange] 执行交给 pipeline,orchestrator 只产卡+评审');
|
|
77
36
|
this.engine = new SmartArrangeEngine({
|
|
78
37
|
llm,
|
|
79
38
|
cards,
|
|
80
|
-
exec,
|
|
39
|
+
exec: this.exec,
|
|
81
40
|
planFile: join(ctx.runtimeDir, 'plan.json'),
|
|
82
41
|
sessionFile: join(ctx.runtimeDir, 'session.json'),
|
|
83
42
|
readGoal: () => readGoal(ctx.cwd),
|
|
@@ -108,25 +67,4 @@ function readGoal(cwd) {
|
|
|
108
67
|
return '';
|
|
109
68
|
}
|
|
110
69
|
}
|
|
111
|
-
/** worker env:三方 Anthropic 兼容 → 注 ANTHROPIC_BASE_URL/AUTH_TOKEN;空 providerId=官方 claude。
|
|
112
|
-
* 并注入记忆 env(SPS_MEMORY_PROVIDER/URL),与 pipeline worker 一致 → smartArrange 也能存取记忆。 */
|
|
113
|
-
function buildWorkerEnv(project, agents) {
|
|
114
|
-
ensureMemoryProvidersRegistered();
|
|
115
|
-
const env = {
|
|
116
|
-
SPS_PROJECT: project,
|
|
117
|
-
...memoryEnv(resolveMemoryConfig(loadGlobalEnv())),
|
|
118
|
-
};
|
|
119
|
-
if (agents.worker.providerId) {
|
|
120
|
-
const p = getProvider(agents.worker.providerId);
|
|
121
|
-
if (p) {
|
|
122
|
-
env.ANTHROPIC_BASE_URL = p.baseUrl.replace(/\/+$/, '');
|
|
123
|
-
env.ANTHROPIC_AUTH_TOKEN = p.apiKey;
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
// claude-acp 不接受 model 入参,模型只能经 ANTHROPIC_MODEL 环境变量传给 claude CLI;
|
|
127
|
-
// 官方订阅用别名(sonnet/opus),三方端点用其 model 串。非 claude 后端走各自 modelName/makeModel。
|
|
128
|
-
if (agents.worker.agent === 'claude' && agents.worker.model)
|
|
129
|
-
env.ANTHROPIC_MODEL = agents.worker.model;
|
|
130
|
-
return env;
|
|
131
|
-
}
|
|
132
70
|
//# sourceMappingURL=runner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/engines/smartarrange/runner.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/engines/smartarrange/runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import type { AgentRuntime } from '@coralai/claude-code-agent';
|
|
2
2
|
import type { CompletionJudge } from './completion-judge.js';
|
|
3
3
|
import type { ProcessSupervisor } from './supervisor.js';
|
|
4
|
-
import type { InspectQuery, RecoveryContext, RecoveryResult, TaskCancelRequest, TaskConfirmRequest, TaskInputRequest, TaskResumeRequest, TaskRunRequest, TaskRunResponse, WorkerEventHandler, WorkerManager, WorkerSnapshot } from './worker-manager.js';
|
|
4
|
+
import type { BackendFactory, InspectQuery, RecoveryContext, RecoveryResult, TaskCancelRequest, TaskConfirmRequest, TaskInputRequest, TaskResumeRequest, TaskRunRequest, TaskRunResponse, WorkerEventHandler, WorkerManager, WorkerSnapshot } from './worker-manager.js';
|
|
5
5
|
export interface WorkerManagerDeps {
|
|
6
6
|
supervisor: ProcessSupervisor;
|
|
7
7
|
completionJudge: CompletionJudge;
|
|
8
8
|
agentRuntime: AgentRuntime | null;
|
|
9
9
|
stateFile: string;
|
|
10
10
|
maxWorkers: number;
|
|
11
|
+
/** L3 P2:给定则 spawn/monitor/cancel 走 per-slot AgentBackend(北极星,agent 无关),
|
|
12
|
+
* 不走 agentRuntime。由组装根按 flag `PIPELINE_VIA_AGENTBACKEND` 决定是否注入(缺省=旧路)。 */
|
|
13
|
+
backendFactory?: BackendFactory;
|
|
11
14
|
}
|
|
12
15
|
export declare class WorkerManagerImpl implements WorkerManager {
|
|
13
16
|
private readonly supervisor;
|
|
@@ -20,7 +23,14 @@ export declare class WorkerManagerImpl implements WorkerManager {
|
|
|
20
23
|
private readonly timeouts;
|
|
21
24
|
/** Abort controllers for ACP completion monitors keyed by slot name. */
|
|
22
25
|
private readonly acpMonitorAborts;
|
|
26
|
+
/** L3 P2:per-slot AgentBackend(flag on 时启用),跨卡暖复用。 */
|
|
27
|
+
private readonly backendFactory;
|
|
28
|
+
private readonly slotBackends;
|
|
23
29
|
constructor(deps: WorkerManagerDeps);
|
|
30
|
+
/** flag on(注入了工厂)→ spawn/monitor/cancel 走 AgentBackend 而非 agentRuntime。 */
|
|
31
|
+
private get viaBackend();
|
|
32
|
+
/** 取(或惰性建)某 slot 的 backend;跨卡复用同实例 → 会话暖着、durable resume 连续。 */
|
|
33
|
+
private getSlotBackend;
|
|
24
34
|
run(request: TaskRunRequest): Promise<TaskRunResponse>;
|
|
25
35
|
resume(request: TaskResumeRequest): Promise<TaskRunResponse>;
|
|
26
36
|
cancel(request: TaskCancelRequest): Promise<void>;
|
|
@@ -44,6 +54,13 @@ export declare class WorkerManagerImpl implements WorkerManager {
|
|
|
44
54
|
* letting CompletionJudge guess from git artifacts.
|
|
45
55
|
*/
|
|
46
56
|
private monitorAcpCompletion;
|
|
57
|
+
/**
|
|
58
|
+
* L3 P2:AgentBackend 版完成监控 —— 轮询 backend.runState() 直到终态,语义同 monitorAcpCompletion:
|
|
59
|
+
* completed → 直接信任,finalize 完成;failed/cancelled → finalize 失败;
|
|
60
|
+
* lost(进程死)→ 回退 CompletionJudge(查 git 证据)。
|
|
61
|
+
* 用轮询(非 subscribe)→ 天然绕开"reclaim/resume 后订阅需重挂"的坑;runState 在 P1 实测可靠返 completed。
|
|
62
|
+
*/
|
|
63
|
+
private monitorViaBackend;
|
|
47
64
|
/**
|
|
48
65
|
* Finalize an ACP worker with a known status — emit event and release resources.
|
|
49
66
|
* Bypasses CompletionJudge since ACP protocol provides authoritative status.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-manager-impl.d.ts","sourceRoot":"","sources":["../../src/manager/worker-manager-impl.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"worker-manager-impl.d.ts","sourceRoot":"","sources":["../../src/manager/worker-manager-impl.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAC,cAAc,EAAE,YAAY,EACvC,eAAe,EAAE,cAAc,EAAC,iBAAiB,EAAC,kBAAkB,EACpE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAc,kBAAkB,EACpG,aAAa,EACb,cAAc,EACf,MAAM,qBAAqB,CAAC;AAI7B,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB;gFAC4E;IAC5E,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AA+BD,qBAAa,iBAAkB,YAAW,aAAa;IACrD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4B;IAC1D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6B;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqC;IAC9D,wEAAwE;IACxE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAsC;IACvE,sDAAsD;IACtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmC;gBAEpD,IAAI,EAAE,iBAAiB;IASnC,2EAA2E;IAC3E,OAAO,KAAK,UAAU,GAErB;IAED,gEAAgE;IAChE,OAAO,CAAC,cAAc;IAchB,GAAG,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAgBtD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IAc5D,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IA4GvD,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,EAAE;IA2B9C,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAIpC,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IASnD,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;YAsErD,eAAe;YA0Hf,UAAU;IA6CxB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,oBAAoB;IA2F5B;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IA2DzB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAiCzB,iFAAiF;IACjF,OAAO,CAAC,kBAAkB;IAiB1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgC1B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAkDvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;OAEG;IACH,OAAO,CAAC,UAAU;IAalB;;OAEG;IACH,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,EAAE;IAEV,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAwBjB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,YAAY;IA8BpB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,SAAS;IAQjB,OAAO,IAAI,IAAI;IAoCf,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,GAAG;IAEX;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAO5B;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;CAM7B"}
|
|
@@ -39,12 +39,29 @@ export class WorkerManagerImpl {
|
|
|
39
39
|
timeouts = new Map();
|
|
40
40
|
/** Abort controllers for ACP completion monitors keyed by slot name. */
|
|
41
41
|
acpMonitorAborts = new Map();
|
|
42
|
+
/** L3 P2:per-slot AgentBackend(flag on 时启用),跨卡暖复用。 */
|
|
43
|
+
backendFactory;
|
|
44
|
+
slotBackends = new Map();
|
|
42
45
|
constructor(deps) {
|
|
43
46
|
this.supervisor = deps.supervisor;
|
|
44
47
|
this.completionJudge = deps.completionJudge;
|
|
45
48
|
this.agentRuntime = deps.agentRuntime;
|
|
46
49
|
this.stateFile = deps.stateFile;
|
|
47
50
|
this.maxWorkers = deps.maxWorkers;
|
|
51
|
+
this.backendFactory = deps.backendFactory ?? null;
|
|
52
|
+
}
|
|
53
|
+
/** flag on(注入了工厂)→ spawn/monitor/cancel 走 AgentBackend 而非 agentRuntime。 */
|
|
54
|
+
get viaBackend() {
|
|
55
|
+
return this.backendFactory != null;
|
|
56
|
+
}
|
|
57
|
+
/** 取(或惰性建)某 slot 的 backend;跨卡复用同实例 → 会话暖着、durable resume 连续。 */
|
|
58
|
+
getSlotBackend(slot, opts) {
|
|
59
|
+
let b = this.slotBackends.get(slot);
|
|
60
|
+
if (!b) {
|
|
61
|
+
b = this.backendFactory(slot, opts);
|
|
62
|
+
this.slotBackends.set(slot, b);
|
|
63
|
+
}
|
|
64
|
+
return b;
|
|
48
65
|
}
|
|
49
66
|
// ─── run / resume ────────────────────────────────────────────
|
|
50
67
|
async run(request) {
|
|
@@ -93,6 +110,44 @@ export class WorkerManagerImpl {
|
|
|
93
110
|
// emit a second, contradictory finalize for the same slot.
|
|
94
111
|
this.acpMonitorAborts.get(slot)?.abort();
|
|
95
112
|
this.acpMonitorAborts.delete(slot);
|
|
113
|
+
// L3 P2:backend 路径 —— 同样先看是否已完成(避免"完成+NEEDS-FIX"矛盾),否则 cancel 在途 run
|
|
114
|
+
// (会话保活,下次派卡暖复用;镜像 agentRuntime.cancelRun,不 OS-kill——backend 无 pid 句柄)。
|
|
115
|
+
if (this.viaBackend) {
|
|
116
|
+
const backend = this.slotBackends.get(slot);
|
|
117
|
+
if (backend) {
|
|
118
|
+
try {
|
|
119
|
+
if ((await backend.runState()) === 'completed') {
|
|
120
|
+
this.releaseSlotInState(slot, taskId);
|
|
121
|
+
this.taskSlotMap.delete(taskId);
|
|
122
|
+
this.emitEvent({
|
|
123
|
+
type: 'run.completed', taskId, cardId: taskId, project,
|
|
124
|
+
phase, slot, workerId,
|
|
125
|
+
timestamp: new Date().toISOString(), state: 'completed',
|
|
126
|
+
exitCode: 0,
|
|
127
|
+
completionResult: { status: 'completed', reason: 'backend_completed_pre_cancel' },
|
|
128
|
+
});
|
|
129
|
+
this.log(`Cancel for ${workerId} skipped: backend run already completed`);
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
await backend.cancel?.();
|
|
133
|
+
}
|
|
134
|
+
catch (err) {
|
|
135
|
+
this.log(`backend cancel best-effort failed for ${workerId}: ${err instanceof Error ? err.message : String(err)}`);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
this.releaseSlotInState(slot, taskId);
|
|
139
|
+
this.taskSlotMap.delete(taskId);
|
|
140
|
+
this.emitEvent({
|
|
141
|
+
type: 'run.failed', taskId, cardId: taskId, project,
|
|
142
|
+
phase, slot, workerId,
|
|
143
|
+
timestamp: new Date().toISOString(), state: 'failed',
|
|
144
|
+
exitCode: 1,
|
|
145
|
+
completionResult: { status: 'failed', reason: `cancelled_${reason}` },
|
|
146
|
+
error: `Cancelled: ${reason}`,
|
|
147
|
+
});
|
|
148
|
+
this.log(`Cancelled worker ${workerId} via backend (reason=${reason})`);
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
96
151
|
// Completion-aware cancel for ACP workers. The OS-level supervisor.kill is
|
|
97
152
|
// unreliable here: it targets a possibly-stale pid, SIGKILL can ESRCH, and the
|
|
98
153
|
// ACP run keeps running. Two guards:
|
|
@@ -261,7 +316,7 @@ export class WorkerManagerImpl {
|
|
|
261
316
|
let sessionId;
|
|
262
317
|
let resourceAcquired = true; // track whether resource was released by spawn-fail path
|
|
263
318
|
try {
|
|
264
|
-
if (!this.agentRuntime) {
|
|
319
|
+
if (!this.viaBackend && !this.agentRuntime) {
|
|
265
320
|
throw new Error('acp-sdk transport requires agentRuntime');
|
|
266
321
|
}
|
|
267
322
|
// Env vars exposed to the spawned agent process (and its hook scripts).
|
|
@@ -284,22 +339,38 @@ export class WorkerManagerImpl {
|
|
|
284
339
|
// Atomically write per-slot "current card" marker. This is the
|
|
285
340
|
// authoritative source of current-card info for hook scripts.
|
|
286
341
|
this.writeCurrentCardFile(slot, taskId, stageName);
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
342
|
+
if (this.viaBackend) {
|
|
343
|
+
// L3 P2:执行走 per-slot AgentBackend(北极星,agent 无关)。durable resume 下沉进
|
|
344
|
+
// backend.ensure(构造时 seed resumeSessionId → loadSession);skills 走 dispatch opts。
|
|
345
|
+
// pid 不由 backend 暴露(P2a),跨重启续跑靠 sessionId,不靠 pid orphan 监控(见 recover=P2b)。
|
|
346
|
+
const backend = this.getSlotBackend(slot, { cwd, extraEnv, resumeSessionId });
|
|
347
|
+
await backend.dispatch(prompt, ctx.skills ? { skills: ctx.skills } : undefined);
|
|
348
|
+
sessionId = backend.sessionId ?? undefined;
|
|
349
|
+
pid = null;
|
|
350
|
+
this.monitorViaBackend({
|
|
351
|
+
workerId, taskId, cardId, project, phase, slot, branch, cwd,
|
|
352
|
+
targetBranch, outputFile, tool, transport, maxRetries,
|
|
353
|
+
completionStrategy: ctx.completionStrategy,
|
|
354
|
+
}, backend);
|
|
355
|
+
}
|
|
356
|
+
else {
|
|
357
|
+
// durable resume:带 resumeSessionId 走 startRun,底层 ensureSession → loadSession 冷重放 transcript
|
|
358
|
+
// (进程已被杀也能续上);缺省则全新会话。注意不走 resumeRun —— 那是热接、offline 抛错、不 loadSession。
|
|
359
|
+
const session = await this.agentRuntime.startRun(slot, prompt, tool, cwd, {
|
|
360
|
+
extraEnv,
|
|
361
|
+
...(resumeSessionId ? { resumeSessionId } : {}),
|
|
362
|
+
...(ctx.skills ? { skills: ctx.skills } : {}),
|
|
363
|
+
});
|
|
364
|
+
sessionId = session.sessionId;
|
|
365
|
+
pid = session.pid ?? null;
|
|
366
|
+
// ACP completion monitor — polls inspectRun until terminal state
|
|
367
|
+
this.monitorAcpCompletion({
|
|
368
|
+
workerId, taskId, cardId, project, phase, slot, branch, cwd,
|
|
369
|
+
targetBranch, outputFile, tool, transport, maxRetries,
|
|
370
|
+
sessionName: session.sessionName,
|
|
371
|
+
completionStrategy: ctx.completionStrategy,
|
|
372
|
+
});
|
|
373
|
+
}
|
|
303
374
|
}
|
|
304
375
|
catch (err) {
|
|
305
376
|
this.log(`Spawn failed for ${taskId}: ${err instanceof Error ? err.message : String(err)}`);
|
|
@@ -452,6 +523,60 @@ export class WorkerManagerImpl {
|
|
|
452
523
|
// Start first poll after a short delay (let the run initialize)
|
|
453
524
|
pendingTimeout = setTimeout(poll, pollIntervalMs);
|
|
454
525
|
}
|
|
526
|
+
/**
|
|
527
|
+
* L3 P2:AgentBackend 版完成监控 —— 轮询 backend.runState() 直到终态,语义同 monitorAcpCompletion:
|
|
528
|
+
* completed → 直接信任,finalize 完成;failed/cancelled → finalize 失败;
|
|
529
|
+
* lost(进程死)→ 回退 CompletionJudge(查 git 证据)。
|
|
530
|
+
* 用轮询(非 subscribe)→ 天然绕开"reclaim/resume 后订阅需重挂"的坑;runState 在 P1 实测可靠返 completed。
|
|
531
|
+
*/
|
|
532
|
+
monitorViaBackend(ctx, backend) {
|
|
533
|
+
const pollIntervalMs = 10_000; // 10s,与 ACP 监控一致
|
|
534
|
+
// 抢占同 slot 的旧监控(slot 复用时防幽灵轮询)。
|
|
535
|
+
this.acpMonitorAborts.get(ctx.slot)?.abort();
|
|
536
|
+
const abortController = new AbortController();
|
|
537
|
+
this.acpMonitorAborts.set(ctx.slot, abortController);
|
|
538
|
+
let pendingTimeout = null;
|
|
539
|
+
const poll = async () => {
|
|
540
|
+
if (abortController.signal.aborted)
|
|
541
|
+
return;
|
|
542
|
+
try {
|
|
543
|
+
const st = await backend.runState();
|
|
544
|
+
if (abortController.signal.aborted)
|
|
545
|
+
return;
|
|
546
|
+
if (st === 'completed') {
|
|
547
|
+
this.log(`backend monitor: ${ctx.taskId} completed (authoritative)`);
|
|
548
|
+
this.acpMonitorAborts.delete(ctx.slot);
|
|
549
|
+
this.finalizeAcpWorker(ctx, 'run.completed', 0, { status: 'completed', reason: 'backend_completed' });
|
|
550
|
+
return;
|
|
551
|
+
}
|
|
552
|
+
if (st === 'failed' || st === 'cancelled') {
|
|
553
|
+
this.log(`backend monitor: ${ctx.taskId} ${st} (authoritative)`);
|
|
554
|
+
this.acpMonitorAborts.delete(ctx.slot);
|
|
555
|
+
this.finalizeAcpWorker(ctx, 'run.failed', 1, { status: 'failed', reason: `backend_${st}` });
|
|
556
|
+
return;
|
|
557
|
+
}
|
|
558
|
+
if (st === 'lost') {
|
|
559
|
+
this.log(`backend monitor: ${ctx.taskId} lost — falling back to CompletionJudge`);
|
|
560
|
+
this.acpMonitorAborts.delete(ctx.slot);
|
|
561
|
+
await this.handleExit({ ...ctx, exitCode: 1 });
|
|
562
|
+
return;
|
|
563
|
+
}
|
|
564
|
+
// running/idle —— 继续轮询
|
|
565
|
+
pendingTimeout = setTimeout(poll, pollIntervalMs);
|
|
566
|
+
}
|
|
567
|
+
catch (err) {
|
|
568
|
+
if (abortController.signal.aborted)
|
|
569
|
+
return;
|
|
570
|
+
this.log(`backend monitor error for ${ctx.taskId}: ${err instanceof Error ? err.message : String(err)}`);
|
|
571
|
+
pendingTimeout = setTimeout(poll, pollIntervalMs);
|
|
572
|
+
}
|
|
573
|
+
};
|
|
574
|
+
abortController.signal.addEventListener('abort', () => {
|
|
575
|
+
if (pendingTimeout)
|
|
576
|
+
clearTimeout(pendingTimeout);
|
|
577
|
+
}, { once: true });
|
|
578
|
+
pendingTimeout = setTimeout(poll, pollIntervalMs);
|
|
579
|
+
}
|
|
455
580
|
/**
|
|
456
581
|
* Finalize an ACP worker with a known status — emit event and release resources.
|
|
457
582
|
* Bypasses CompletionJudge since ACP protocol provides authoritative status.
|
|
@@ -735,6 +860,12 @@ export class WorkerManagerImpl {
|
|
|
735
860
|
controller.abort();
|
|
736
861
|
}
|
|
737
862
|
this.acpMonitorAborts.clear();
|
|
863
|
+
// L3 P2:tick 退出时停掉所有 per-slot backend(杀 ACP 子进程释放内存)。
|
|
864
|
+
// sessionId 已由 pipeline 层持久化(pipeline-sessions.json),下次 tick seed resumeSessionId 续 → 停无损。
|
|
865
|
+
for (const [_slot, backend] of this.slotBackends) {
|
|
866
|
+
backend.stop().catch(() => { });
|
|
867
|
+
}
|
|
868
|
+
this.slotBackends.clear();
|
|
738
869
|
// v0.41.2: Hygiene — delete per-slot marker files so the runtime/ dir
|
|
739
870
|
// doesn't accumulate stale files across tick runs. Safe here because
|
|
740
871
|
// cleanup only fires on tick exit (no active hook could still need them).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-manager-impl.js","sourceRoot":"","sources":["../../src/manager/worker-manager-impl.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worker-manager-impl.js","sourceRoot":"","sources":["../../src/manager/worker-manager-impl.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,18 @@
|
|
|
14
14
|
* @boundedContext worker-lifecycle
|
|
15
15
|
*/
|
|
16
16
|
import type { CompletionResult } from './completion-judge.js';
|
|
17
|
+
import type { AgentBackend } from '../core/agents/AgentBackend.js';
|
|
18
|
+
/**
|
|
19
|
+
* per-slot AgentBackend 工厂(L3 P2,flag `PIPELINE_VIA_AGENTBACKEND`)。给定则 worker-manager
|
|
20
|
+
* 的 spawn/monitor/cancel 走 AgentBackend(北极星,agent 无关),不走 claude-code-agent 的 AgentRuntime。
|
|
21
|
+
* 组装根(tick.ts)经 resolveBackend 构造,worker-manager 只认这个抽象、不认具体后端。
|
|
22
|
+
* 一个 slot 一个 backend 实例,跨卡暖复用;durable resume 靠 opts.resumeSessionId 下沉进 backend.ensure。
|
|
23
|
+
*/
|
|
24
|
+
export type BackendFactory = (slot: string, opts: {
|
|
25
|
+
cwd: string;
|
|
26
|
+
extraEnv: Record<string, string>;
|
|
27
|
+
resumeSessionId?: string;
|
|
28
|
+
}) => AgentBackend;
|
|
17
29
|
export type WorkerState = 'idle' | 'starting' | 'running' | 'waiting_input' | 'needs_confirmation' | 'completed' | 'failed';
|
|
18
30
|
export type WorkerPhase = 'development' | 'integration';
|
|
19
31
|
export interface WMPendingInput {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-manager.d.ts","sourceRoot":"","sources":["../../src/manager/worker-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"worker-manager.d.ts","sourceRoot":"","sources":["../../src/manager/worker-manager.ts"],"names":[],"mappings":"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"}
|