@jingyi0605/codingns 0.3.6 → 0.4.0

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.
Files changed (185) hide show
  1. package/README.md +3 -0
  2. package/bin/codingns.mjs +489 -1
  3. package/dist/public/assets/{TerminalPage-D00S4KM6.js → TerminalPage-6jHZV9Mh.js} +17 -17
  4. package/dist/public/assets/index-CSVhg7I8.js +123 -0
  5. package/dist/public/assets/index-Ce1VX19m.css +1 -0
  6. package/dist/public/index.html +2 -2
  7. package/dist/server/modules/assistant-capability/assistant-capability-controller.d.ts +173 -0
  8. package/dist/server/modules/assistant-capability/assistant-capability-controller.js +307 -0
  9. package/dist/server/modules/assistant-capability/assistant-capability-controller.js.map +1 -1
  10. package/dist/server/modules/assistant-capability/assistant-capability-service.d.ts +199 -2
  11. package/dist/server/modules/assistant-capability/assistant-capability-service.js +565 -3
  12. package/dist/server/modules/assistant-capability/assistant-capability-service.js.map +1 -1
  13. package/dist/server/modules/butler/assistant-automation-service.d.ts +110 -0
  14. package/dist/server/modules/butler/assistant-automation-service.js +786 -0
  15. package/dist/server/modules/butler/assistant-automation-service.js.map +1 -0
  16. package/dist/server/modules/butler/assistant-automation-trigger.d.ts +94 -0
  17. package/dist/server/modules/butler/assistant-automation-trigger.js +400 -0
  18. package/dist/server/modules/butler/assistant-automation-trigger.js.map +1 -0
  19. package/dist/server/modules/butler/assistant-sandbox-service.d.ts +55 -0
  20. package/dist/server/modules/butler/assistant-sandbox-service.js +266 -0
  21. package/dist/server/modules/butler/assistant-sandbox-service.js.map +1 -0
  22. package/dist/server/modules/butler/butler-action-context-service.d.ts +4 -1
  23. package/dist/server/modules/butler/butler-action-context-service.js +8 -2
  24. package/dist/server/modules/butler/butler-action-context-service.js.map +1 -1
  25. package/dist/server/modules/butler/butler-control-session-service.d.ts +8 -1
  26. package/dist/server/modules/butler/butler-control-session-service.js +154 -40
  27. package/dist/server/modules/butler/butler-control-session-service.js.map +1 -1
  28. package/dist/server/modules/butler/butler-control-timer-scheduler.d.ts +32 -0
  29. package/dist/server/modules/butler/butler-control-timer-scheduler.js +93 -0
  30. package/dist/server/modules/butler/butler-control-timer-scheduler.js.map +1 -0
  31. package/dist/server/modules/butler/butler-control-timer-service.d.ts +42 -0
  32. package/dist/server/modules/butler/butler-control-timer-service.js +132 -0
  33. package/dist/server/modules/butler/butler-control-timer-service.js.map +1 -0
  34. package/dist/server/modules/butler/butler-controller.d.ts +42 -2
  35. package/dist/server/modules/butler/butler-controller.js +79 -12
  36. package/dist/server/modules/butler/butler-controller.js.map +1 -1
  37. package/dist/server/modules/butler/butler-follow-up-service.d.ts +9 -1
  38. package/dist/server/modules/butler/butler-follow-up-service.js +273 -181
  39. package/dist/server/modules/butler/butler-follow-up-service.js.map +1 -1
  40. package/dist/server/modules/butler/butler-inbox-analysis-service.d.ts +4 -1
  41. package/dist/server/modules/butler/butler-inbox-analysis-service.js +18 -4
  42. package/dist/server/modules/butler/butler-inbox-analysis-service.js.map +1 -1
  43. package/dist/server/modules/butler/butler-profile-service.js +2 -5
  44. package/dist/server/modules/butler/butler-profile-service.js.map +1 -1
  45. package/dist/server/modules/butler/butler-project-service.d.ts +3 -1
  46. package/dist/server/modules/butler/butler-project-service.js +7 -1
  47. package/dist/server/modules/butler/butler-project-service.js.map +1 -1
  48. package/dist/server/modules/butler/butler-session-service.d.ts +3 -1
  49. package/dist/server/modules/butler/butler-session-service.js +12 -1
  50. package/dist/server/modules/butler/butler-session-service.js.map +1 -1
  51. package/dist/server/modules/butler/butler-session-summary-service.js +2 -1
  52. package/dist/server/modules/butler/butler-session-summary-service.js.map +1 -1
  53. package/dist/server/modules/butler/butler-workspace-context.d.ts +3 -0
  54. package/dist/server/modules/butler/butler-workspace-context.js +164 -44
  55. package/dist/server/modules/butler/butler-workspace-context.js.map +1 -1
  56. package/dist/server/modules/butler/patrol-execution-service.js +2 -1
  57. package/dist/server/modules/butler/patrol-execution-service.js.map +1 -1
  58. package/dist/server/modules/butler/provider-adapter-registry.d.ts +3 -0
  59. package/dist/server/modules/butler/provider-adapter-registry.js +18 -1
  60. package/dist/server/modules/butler/provider-adapter-registry.js.map +1 -1
  61. package/dist/server/modules/butler/verification-run-service.d.ts +9 -2
  62. package/dist/server/modules/butler/verification-run-service.js +188 -34
  63. package/dist/server/modules/butler/verification-run-service.js.map +1 -1
  64. package/dist/server/modules/debug-target/debug-target-controller.js +1 -1
  65. package/dist/server/modules/debug-target/debug-target-controller.js.map +1 -1
  66. package/dist/server/modules/debug-target/debug-target-service.d.ts +7 -2
  67. package/dist/server/modules/debug-target/debug-target-service.js +563 -100
  68. package/dist/server/modules/debug-target/debug-target-service.js.map +1 -1
  69. package/dist/server/modules/git/git-command-helper-client.d.ts +1 -0
  70. package/dist/server/modules/git/git-command-helper-client.js +19 -26
  71. package/dist/server/modules/git/git-command-helper-client.js.map +1 -1
  72. package/dist/server/modules/git/git-command-runner.js +19 -1
  73. package/dist/server/modules/git/git-command-runner.js.map +1 -1
  74. package/dist/server/modules/preferences/profile-service.d.ts +3 -1
  75. package/dist/server/modules/preferences/profile-service.js +74 -3
  76. package/dist/server/modules/preferences/profile-service.js.map +1 -1
  77. package/dist/server/modules/provider/provider-discovery-helper-client.d.ts +5 -3
  78. package/dist/server/modules/provider/provider-discovery-helper-client.js +129 -43
  79. package/dist/server/modules/provider/provider-discovery-helper-client.js.map +1 -1
  80. package/dist/server/modules/provider/provider-discovery-helper-process.js +44 -0
  81. package/dist/server/modules/provider/provider-discovery-helper-process.js.map +1 -1
  82. package/dist/server/modules/provider/provider-discovery-runtime.js +83 -3
  83. package/dist/server/modules/provider/provider-discovery-runtime.js.map +1 -1
  84. package/dist/server/modules/sessions/claude-runtime-helper-client.js +23 -1
  85. package/dist/server/modules/sessions/claude-runtime-helper-client.js.map +1 -1
  86. package/dist/server/modules/sessions/session-history-service.d.ts +7 -1
  87. package/dist/server/modules/sessions/session-history-service.js +251 -41
  88. package/dist/server/modules/sessions/session-history-service.js.map +1 -1
  89. package/dist/server/modules/sessions/session-live-runtime-service.d.ts +6 -0
  90. package/dist/server/modules/sessions/session-live-runtime-service.js +97 -11
  91. package/dist/server/modules/sessions/session-live-runtime-service.js.map +1 -1
  92. package/dist/server/modules/sessions/session-message-origin-utils.d.ts +12 -0
  93. package/dist/server/modules/sessions/session-message-origin-utils.js +45 -0
  94. package/dist/server/modules/sessions/session-message-origin-utils.js.map +1 -0
  95. package/dist/server/modules/sessions/session-permission-request-service.js +167 -0
  96. package/dist/server/modules/sessions/session-permission-request-service.js.map +1 -1
  97. package/dist/server/modules/skills/builtin-skill-service.js +1 -1
  98. package/dist/server/modules/skills/builtin-skill-service.js.map +1 -1
  99. package/dist/server/modules/skills/builtin-skills/codingns-assistant/SKILL.md +19 -12
  100. package/dist/server/modules/skills/builtin-skills/codingns-assistant/references/cli-workflow.md +9 -3
  101. package/dist/server/modules/tasks/task-helper-client.d.ts +5 -2
  102. package/dist/server/modules/tasks/task-helper-client.js +118 -38
  103. package/dist/server/modules/tasks/task-helper-client.js.map +1 -1
  104. package/dist/server/modules/tasks/task-helper-process.js +94 -3
  105. package/dist/server/modules/tasks/task-helper-process.js.map +1 -1
  106. package/dist/server/modules/tasks/task-types.d.ts +3 -0
  107. package/dist/server/modules/tasks/task-types.js +4 -1
  108. package/dist/server/modules/tasks/task-types.js.map +1 -1
  109. package/dist/server/modules/terminal/command-template-service.d.ts +9 -0
  110. package/dist/server/modules/terminal/command-template-service.js +87 -5
  111. package/dist/server/modules/terminal/command-template-service.js.map +1 -1
  112. package/dist/server/modules/terminal/terminal-controller.d.ts +3 -0
  113. package/dist/server/modules/terminal/terminal-controller.js +41 -0
  114. package/dist/server/modules/terminal/terminal-controller.js.map +1 -1
  115. package/dist/server/modules/workbench/workbench-service.d.ts +3 -0
  116. package/dist/server/modules/workbench/workbench-service.js +4 -3
  117. package/dist/server/modules/workbench/workbench-service.js.map +1 -1
  118. package/dist/server/modules/workbench/workspace-file-watcher.d.ts +14 -6
  119. package/dist/server/modules/workbench/workspace-file-watcher.js +267 -57
  120. package/dist/server/modules/workbench/workspace-file-watcher.js.map +1 -1
  121. package/dist/server/modules/workbench/workspace-panel-snapshot-service.d.ts +2 -0
  122. package/dist/server/modules/workbench/workspace-panel-snapshot-service.js +32 -3
  123. package/dist/server/modules/workbench/workspace-panel-snapshot-service.js.map +1 -1
  124. package/dist/server/modules/worktree/worktree-manager.d.ts +9 -1
  125. package/dist/server/modules/worktree/worktree-manager.js +9 -1
  126. package/dist/server/modules/worktree/worktree-manager.js.map +1 -1
  127. package/dist/server/routes/assistant.js +19 -0
  128. package/dist/server/routes/assistant.js.map +1 -1
  129. package/dist/server/routes/butler.js +5 -0
  130. package/dist/server/routes/butler.js.map +1 -1
  131. package/dist/server/server/create-server.d.ts +8 -0
  132. package/dist/server/server/create-server.js +36 -13
  133. package/dist/server/server/create-server.js.map +1 -1
  134. package/dist/server/storage/repositories/assistant-automation-run-repository.d.ts +12 -0
  135. package/dist/server/storage/repositories/assistant-automation-run-repository.js +139 -0
  136. package/dist/server/storage/repositories/assistant-automation-run-repository.js.map +1 -0
  137. package/dist/server/storage/repositories/assistant-automation-task-repository.d.ts +15 -0
  138. package/dist/server/storage/repositories/assistant-automation-task-repository.js +173 -0
  139. package/dist/server/storage/repositories/assistant-automation-task-repository.js.map +1 -0
  140. package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.d.ts +17 -0
  141. package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.js +164 -0
  142. package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.js.map +1 -0
  143. package/dist/server/storage/repositories/butler-control-session-repository.js +27 -3
  144. package/dist/server/storage/repositories/butler-control-session-repository.js.map +1 -1
  145. package/dist/server/storage/repositories/butler-control-timer-repository.d.ts +15 -0
  146. package/dist/server/storage/repositories/butler-control-timer-repository.js +157 -0
  147. package/dist/server/storage/repositories/butler-control-timer-repository.js.map +1 -0
  148. package/dist/server/storage/repositories/user-preference-profile-repository.js +6 -3
  149. package/dist/server/storage/repositories/user-preference-profile-repository.js.map +1 -1
  150. package/dist/server/storage/sqlite/client.js +239 -2
  151. package/dist/server/storage/sqlite/client.js.map +1 -1
  152. package/dist/server/storage/sqlite/schema.sql +107 -1
  153. package/dist/server/types/domain.d.ts +89 -2
  154. package/dist/server/ws/workbench-ws-hub.d.ts +14 -8
  155. package/dist/server/ws/workbench-ws-hub.js +299 -163
  156. package/dist/server/ws/workbench-ws-hub.js.map +1 -1
  157. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.d.ts +4 -1
  158. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js +111 -3
  159. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js.map +1 -1
  160. package/node_modules/@codingns/session-sync-core/dist/providers/codex.d.ts +6 -1
  161. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js +306 -31
  162. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js.map +1 -1
  163. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.d.ts +5 -1
  164. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js +187 -26
  165. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js.map +1 -1
  166. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.d.ts +4 -1
  167. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js +98 -1
  168. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js.map +1 -1
  169. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.d.ts +2 -0
  170. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js +71 -8
  171. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js.map +1 -1
  172. package/node_modules/@codingns/session-sync-core/dist/providers/utils.d.ts +1 -0
  173. package/node_modules/@codingns/session-sync-core/dist/providers/utils.js +4 -1
  174. package/node_modules/@codingns/session-sync-core/dist/providers/utils.js.map +1 -1
  175. package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.js +44 -0
  176. package/node_modules/@codingns/session-sync-core/dist/runtime/claude-runtime.js.map +1 -1
  177. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js +9 -3
  178. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js.map +1 -1
  179. package/node_modules/@codingns/session-sync-core/dist/runtime/types.d.ts +1 -0
  180. package/node_modules/@codingns/session-sync-core/dist/services.js +17 -8
  181. package/node_modules/@codingns/session-sync-core/dist/services.js.map +1 -1
  182. package/node_modules/@codingns/session-sync-core/dist/types.d.ts +4 -0
  183. package/package.json +1 -1
  184. package/dist/public/assets/index-BlOinYqR.js +0 -122
  185. package/dist/public/assets/index-Dg_7g6lA.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"patrol-execution-service.js","sourceRoot":"","sources":["../../../../src/modules/butler/patrol-execution-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"patrol-execution-service.js","sourceRoot":"","sources":["../../../../src/modules/butler/patrol-execution-service.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@ export interface StartPatrolSessionInput {
17
17
  model: string | null;
18
18
  reasoningLevel: string | null;
19
19
  permissionMode: string | null;
20
+ instructionFilePath: string | null;
20
21
  }
21
22
  export interface PatrolSessionLaunchResult {
22
23
  sessionId: string;
@@ -33,6 +34,7 @@ export interface PatrolProviderAdapter {
33
34
  readonly providerId: "codex" | "claude-code";
34
35
  startPatrolSession(input: StartPatrolSessionInput): Promise<PatrolSessionLaunchResult>;
35
36
  waitForSessionTerminal(sessionId: string): Promise<void>;
37
+ interruptPatrolSession(sessionId: string): Promise<void>;
36
38
  readPatrolResult(sessionId: string): Promise<PatrolSessionResult>;
37
39
  }
38
40
  export declare class ProviderAdapterRegistry {
@@ -54,6 +56,7 @@ export declare class RuntimePatrolProviderAdapter implements PatrolProviderAdapt
54
56
  constructor(providerId: "codex" | "claude-code", sessionLiveRuntimeService: SessionLiveRuntimeService, sessionHistoryService: SessionHistoryService, options?: RuntimePatrolProviderAdapterOptions);
55
57
  startPatrolSession(input: StartPatrolSessionInput): Promise<PatrolSessionLaunchResult>;
56
58
  waitForSessionTerminal(sessionId: string): Promise<void>;
59
+ interruptPatrolSession(sessionId: string): Promise<void>;
57
60
  readPatrolResult(sessionId: string): Promise<PatrolSessionResult>;
58
61
  private waitForTerminalWithSubscription;
59
62
  private readRuntimeState;
@@ -41,7 +41,8 @@ export class RuntimePatrolProviderAdapter {
41
41
  runtimeOptions: {
42
42
  model: input.model,
43
43
  reasoningLevel: input.reasoningLevel,
44
- permissionMode: input.permissionMode
44
+ permissionMode: input.permissionMode,
45
+ providerInstructionFilePath: input.instructionFilePath
45
46
  }
46
47
  });
47
48
  this.sessionOwnerBySessionId.set(accepted.sessionId, input.userId);
@@ -68,6 +69,22 @@ export class RuntimePatrolProviderAdapter {
68
69
  this.sessionOwnerBySessionId.delete(sessionId);
69
70
  }
70
71
  }
72
+ async interruptPatrolSession(sessionId) {
73
+ const userId = this.sessionOwnerBySessionId.get(sessionId);
74
+ if (!userId) {
75
+ return;
76
+ }
77
+ try {
78
+ await this.sessionLiveRuntimeService.interruptSession(sessionId, userId);
79
+ }
80
+ catch (error) {
81
+ const message = error instanceof Error ? error.message : String(error);
82
+ if (message === "SESSION_NOT_RUNNING" || message === "CAPABILITY_NOT_SUPPORTED") {
83
+ return;
84
+ }
85
+ throw error;
86
+ }
87
+ }
71
88
  async readPatrolResult(sessionId) {
72
89
  const history = await this.sessionHistoryService.readRecentHistoryEnvelope(sessionId, 80);
73
90
  const assistantMessages = history?.messages
@@ -1 +1 @@
1
- {"version":3,"file":"provider-adapter-registry.js","sourceRoot":"","sources":["../../../../src/modules/butler/provider-adapter-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-adapter-registry.js","sourceRoot":"","sources":["../../../../src/modules/butler/provider-adapter-registry.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type TaskManager } from "../tasks/task-manager.js";
1
2
  import type { ButlerProjectRepository } from "../../storage/repositories/butler-project-repository.js";
2
3
  import type { ButlerSessionRepository } from "../../storage/repositories/butler-session-repository.js";
3
4
  import type { SessionCheckpointRepository } from "../../storage/repositories/session-checkpoint-repository.js";
@@ -9,6 +10,7 @@ interface CommandExecutionInput {
9
10
  cwd: string;
10
11
  env?: NodeJS.ProcessEnv;
11
12
  timeoutMs: number;
13
+ signal?: AbortSignal;
12
14
  }
13
15
  interface CommandExecutionResult {
14
16
  exitCode: number;
@@ -23,7 +25,7 @@ interface HealthExecutionResult {
23
25
  interface VerificationRunServiceOptions {
24
26
  now?: () => string;
25
27
  runCommand?: (input: CommandExecutionInput) => Promise<CommandExecutionResult>;
26
- runHealthCheck?: (url: string, timeoutMs: number) => Promise<HealthExecutionResult>;
28
+ runHealthCheck?: (url: string, timeoutMs: number, signal?: AbortSignal) => Promise<HealthExecutionResult>;
27
29
  }
28
30
  export interface VerificationRunView {
29
31
  id: string;
@@ -54,16 +56,21 @@ export declare class VerificationRunService {
54
56
  private readonly sessionCheckpointRepository;
55
57
  private readonly verificationRunRepository;
56
58
  private readonly now;
59
+ private readonly taskManager;
57
60
  private readonly runCommand;
58
61
  private readonly runHealthCheck;
59
- constructor(butlerProjectRepository: ButlerProjectRepository, butlerSessionRepository: ButlerSessionRepository, sessionCheckpointRepository: SessionCheckpointRepository, verificationRunRepository: VerificationRunRepository, options?: VerificationRunServiceOptions);
62
+ constructor(butlerProjectRepository: ButlerProjectRepository, butlerSessionRepository: ButlerSessionRepository, sessionCheckpointRepository: SessionCheckpointRepository, verificationRunRepository: VerificationRunRepository, options?: VerificationRunServiceOptions, taskManager?: TaskManager);
60
63
  listRuns(projectId: string, filters?: {
61
64
  status?: VerificationRunStatus;
62
65
  verificationType?: VerificationType;
63
66
  }): VerificationRunView[];
64
67
  getRun(projectId: string, runId: string): VerificationRunView;
65
68
  startRun(projectId: string, input: StartVerificationRunInput): Promise<VerificationRunView>;
69
+ cancelRun(projectId: string, runId: string): VerificationRunView;
70
+ private registerBackgroundTasks;
71
+ private executeRunTask;
66
72
  private executeVerification;
73
+ private writeVerificationProjectStatus;
67
74
  private writeVerificationCheckpoint;
68
75
  private getProjectOrThrow;
69
76
  private getProjectSessionOrThrow;
@@ -4,6 +4,9 @@ import { AppError } from "../../shared/errors/app-error.js";
4
4
  import { resolveCommandLaunch } from "../../shared/utils/command-launch.js";
5
5
  import { createId } from "../../shared/utils/id.js";
6
6
  import { nowIso } from "../../shared/utils/time.js";
7
+ import { createTaskManager } from "../tasks/task-manager.js";
8
+ import { HOST_TASK_TYPES } from "../tasks/task-types.js";
9
+ import { TaskCancelledError } from "../tasks/task-types.js";
7
10
  const DEFAULT_COMMAND_TIMEOUT_MS = 60_000;
8
11
  const DEFAULT_HEALTH_TIMEOUT_MS = 10_000;
9
12
  const MAX_PREVIEW_LENGTH = 2_000;
@@ -13,16 +16,19 @@ export class VerificationRunService {
13
16
  sessionCheckpointRepository;
14
17
  verificationRunRepository;
15
18
  now;
19
+ taskManager;
16
20
  runCommand;
17
21
  runHealthCheck;
18
- constructor(butlerProjectRepository, butlerSessionRepository, sessionCheckpointRepository, verificationRunRepository, options = {}) {
22
+ constructor(butlerProjectRepository, butlerSessionRepository, sessionCheckpointRepository, verificationRunRepository, options = {}, taskManager = createTaskManager()) {
19
23
  this.butlerProjectRepository = butlerProjectRepository;
20
24
  this.butlerSessionRepository = butlerSessionRepository;
21
25
  this.sessionCheckpointRepository = sessionCheckpointRepository;
22
26
  this.verificationRunRepository = verificationRunRepository;
23
27
  this.now = options.now ?? nowIso;
28
+ this.taskManager = taskManager;
24
29
  this.runCommand = options.runCommand ?? runCommandExecution;
25
30
  this.runHealthCheck = options.runHealthCheck ?? runHttpHealthCheck;
31
+ this.registerBackgroundTasks();
26
32
  }
27
33
  listRuns(projectId, filters) {
28
34
  this.getProjectOrThrow(projectId);
@@ -47,7 +53,7 @@ export class VerificationRunService {
47
53
  const verificationType = normalizeVerificationType(input.verificationType);
48
54
  const targetRef = normalizeNullableText(input.targetRef) ?? null;
49
55
  const spec = normalizeSpec(input.spec);
50
- const plan = prepareVerificationPlan(project, verificationType, targetRef, spec);
56
+ prepareVerificationPlan(project, verificationType, targetRef, spec);
51
57
  const butlerSession = input.butlerSessionId
52
58
  ? this.getProjectSessionOrThrow(project.id, input.butlerSessionId)
53
59
  : null;
@@ -75,37 +81,138 @@ export class VerificationRunService {
75
81
  finishedAt: null,
76
82
  createdAt: startedAt
77
83
  });
84
+ const handle = this.taskManager.enqueue(HOST_TASK_TYPES.verificationRunExecute, {
85
+ key: record.id,
86
+ source: "verification_run.execute",
87
+ input: {
88
+ runId: record.id
89
+ }
90
+ });
91
+ void handle.promise.catch(() => undefined);
92
+ return mapVerificationRunRecord(record);
93
+ }
94
+ cancelRun(projectId, runId) {
95
+ this.getProjectOrThrow(projectId);
96
+ const record = this.getRunRecordOrThrow(runId);
97
+ if (record.projectId !== projectId) {
98
+ throw new AppError({
99
+ statusCode: 404,
100
+ errorCode: "VERIFICATION_RUN_NOT_FOUND",
101
+ detail: "当前项目下不存在该验证记录"
102
+ });
103
+ }
104
+ if (record.status !== "queued" && record.status !== "running") {
105
+ throw new AppError({
106
+ statusCode: 409,
107
+ errorCode: "VERIFICATION_RUN_NOT_STOPPABLE",
108
+ detail: "当前验证已经结束,不能再次手动结束"
109
+ });
110
+ }
111
+ const project = this.getProjectOrThrow(projectId);
112
+ const butlerSession = record.butlerSessionId
113
+ ? this.butlerSessionRepository.findById(record.butlerSessionId)
114
+ : null;
115
+ const finishedAt = this.now();
116
+ const summary = "已手动结束当前会话验证,并停止关联自动化执行。";
117
+ const cancelled = this.updateRunRecord({
118
+ ...record,
119
+ status: "cancelled",
120
+ summary,
121
+ artifactRefsJson: record.artifactRefsJson,
122
+ resultJson: JSON.stringify({
123
+ ...parseJsonObject(record.resultJson),
124
+ cancelledBy: "user"
125
+ }),
126
+ finishedAt
127
+ });
128
+ this.writeVerificationProjectStatus(project, normalizeVerificationType(cancelled.verificationType), "cancelled", finishedAt);
129
+ if (butlerSession) {
130
+ this.writeVerificationCheckpoint(butlerSession, {
131
+ status: "cancelled",
132
+ summary,
133
+ artifactRefs: parseJsonArray(cancelled.artifactRefsJson),
134
+ result: parseJsonObject(cancelled.resultJson)
135
+ }, finishedAt);
136
+ }
137
+ this.taskManager.cancel(HOST_TASK_TYPES.verificationRunExecute, record.id, "user_cancelled");
138
+ return mapVerificationRunRecord(cancelled);
139
+ }
140
+ registerBackgroundTasks() {
141
+ if (this.taskManager.has(HOST_TASK_TYPES.verificationRunExecute)) {
142
+ return;
143
+ }
144
+ this.taskManager.register({
145
+ taskType: HOST_TASK_TYPES.verificationRunExecute,
146
+ executionLane: "host_background",
147
+ timeoutMs: 10 * 60_000,
148
+ run: async ({ runId }, context) => {
149
+ await this.executeRunTask(runId, context);
150
+ }
151
+ });
152
+ }
153
+ async executeRunTask(runId, context) {
154
+ const record = this.getRunRecordOrThrow(runId);
155
+ if (record.status !== "running" && record.status !== "queued") {
156
+ return;
157
+ }
158
+ const project = this.getProjectOrThrow(record.projectId);
159
+ const butlerSession = record.butlerSessionId
160
+ ? this.butlerSessionRepository.findById(record.butlerSessionId)
161
+ : null;
162
+ const verificationType = normalizeVerificationType(record.verificationType);
163
+ const plan = prepareVerificationPlan(project, verificationType, record.targetRef, parseJsonObject(record.specJson));
78
164
  try {
79
- const outcome = await this.executeVerification(plan);
165
+ const outcome = await this.executeVerification(plan, context.signal);
166
+ const latest = this.getRunRecordOrThrow(runId);
167
+ if (latest.status === "cancelled") {
168
+ return;
169
+ }
80
170
  const finishedAt = this.now();
81
171
  const updated = this.updateRunRecord({
82
- ...record,
172
+ ...latest,
83
173
  status: outcome.status,
84
174
  summary: outcome.summary,
85
175
  artifactRefsJson: JSON.stringify(outcome.artifactRefs),
86
176
  resultJson: JSON.stringify(outcome.result),
87
177
  finishedAt
88
178
  });
89
- this.butlerProjectRepository.update({
90
- ...project,
91
- lastVerificationAt: finishedAt,
92
- updatedAt: finishedAt,
93
- config: {
94
- ...project.config,
95
- lastVerificationType: verificationType,
96
- lastVerificationStatus: outcome.status
97
- }
98
- });
179
+ this.writeVerificationProjectStatus(project, verificationType, outcome.status, finishedAt);
99
180
  if (butlerSession) {
100
181
  this.writeVerificationCheckpoint(butlerSession, outcome, finishedAt);
101
182
  }
102
- return mapVerificationRunRecord(updated);
103
183
  }
104
184
  catch (error) {
185
+ const latest = this.getRunRecordOrThrow(runId);
186
+ if (latest.status === "cancelled") {
187
+ throw error;
188
+ }
105
189
  const finishedAt = this.now();
190
+ if (context.signal.aborted || error instanceof TaskCancelledError) {
191
+ const cancelled = this.updateRunRecord({
192
+ ...latest,
193
+ status: "cancelled",
194
+ summary: latest.summary ?? "已手动结束当前会话验证,并停止关联自动化执行。",
195
+ artifactRefsJson: latest.artifactRefsJson,
196
+ resultJson: JSON.stringify({
197
+ ...parseJsonObject(latest.resultJson),
198
+ cancelledBy: "task_signal"
199
+ }),
200
+ finishedAt
201
+ });
202
+ this.writeVerificationProjectStatus(project, verificationType, "cancelled", finishedAt);
203
+ if (butlerSession) {
204
+ this.writeVerificationCheckpoint(butlerSession, {
205
+ status: "cancelled",
206
+ summary: cancelled.summary ?? "已手动结束当前会话验证,并停止关联自动化执行。",
207
+ artifactRefs: parseJsonArray(cancelled.artifactRefsJson),
208
+ result: parseJsonObject(cancelled.resultJson)
209
+ }, finishedAt);
210
+ }
211
+ throw error;
212
+ }
106
213
  const detail = error instanceof Error ? error.message : String(error);
107
- const failed = this.updateRunRecord({
108
- ...record,
214
+ this.updateRunRecord({
215
+ ...latest,
109
216
  status: "failed",
110
217
  summary: detail,
111
218
  artifactRefsJson: JSON.stringify([]),
@@ -114,16 +221,7 @@ export class VerificationRunService {
114
221
  }),
115
222
  finishedAt
116
223
  });
117
- this.butlerProjectRepository.update({
118
- ...project,
119
- lastVerificationAt: finishedAt,
120
- updatedAt: finishedAt,
121
- config: {
122
- ...project.config,
123
- lastVerificationType: verificationType,
124
- lastVerificationStatus: "failed"
125
- }
126
- });
224
+ this.writeVerificationProjectStatus(project, verificationType, "failed", finishedAt);
127
225
  if (butlerSession) {
128
226
  this.writeVerificationCheckpoint(butlerSession, {
129
227
  status: "failed",
@@ -134,17 +232,18 @@ export class VerificationRunService {
134
232
  }
135
233
  }, finishedAt);
136
234
  }
137
- return mapVerificationRunRecord(failed);
235
+ throw error;
138
236
  }
139
237
  }
140
- async executeVerification(plan) {
238
+ async executeVerification(plan, signal) {
141
239
  if (plan.kind === "command") {
142
240
  const result = await this.runCommand({
143
241
  command: plan.command,
144
242
  args: plan.args,
145
243
  cwd: plan.cwd,
146
244
  env: plan.env,
147
- timeoutMs: plan.timeoutMs
245
+ timeoutMs: plan.timeoutMs,
246
+ signal
148
247
  });
149
248
  const passed = result.exitCode === plan.expectedExitCode;
150
249
  const summary = passed
@@ -165,7 +264,7 @@ export class VerificationRunService {
165
264
  }
166
265
  };
167
266
  }
168
- const result = await this.runHealthCheck(plan.url, plan.timeoutMs);
267
+ const result = await this.runHealthCheck(plan.url, plan.timeoutMs, signal);
169
268
  const passed = plan.expectedStatus === null ? result.ok : result.statusCode === plan.expectedStatus;
170
269
  const summary = passed
171
270
  ? `健康检查通过:${plan.url} 返回 ${result.statusCode}`
@@ -190,8 +289,24 @@ export class VerificationRunService {
190
289
  }
191
290
  };
192
291
  }
292
+ writeVerificationProjectStatus(project, verificationType, status, finishedAt) {
293
+ this.butlerProjectRepository.update({
294
+ ...project,
295
+ lastVerificationAt: finishedAt,
296
+ updatedAt: finishedAt,
297
+ config: {
298
+ ...project.config,
299
+ lastVerificationType: verificationType,
300
+ lastVerificationStatus: status
301
+ }
302
+ });
303
+ }
193
304
  writeVerificationCheckpoint(butlerSession, outcome, capturedAt) {
194
- const progressState = outcome.status === "failed" ? "blocked" : outcome.status === "skipped" ? "unknown" : "done";
305
+ const progressState = outcome.status === "failed"
306
+ ? "blocked"
307
+ : outcome.status === "skipped" || outcome.status === "cancelled"
308
+ ? "unknown"
309
+ : "done";
195
310
  this.sessionCheckpointRepository.create({
196
311
  id: createId(),
197
312
  butlerSessionId: butlerSession.id,
@@ -202,7 +317,9 @@ export class VerificationRunService {
202
317
  riskFlags: outcome.status === "failed" ? [outcome.summary] : [],
203
318
  nextActions: outcome.status === "failed"
204
319
  ? ["检查验证结果并修复失败原因"]
205
- : ["记录验证结论并继续推进后续任务"],
320
+ : outcome.status === "cancelled"
321
+ ? ["如需继续验证,请重新发起一次验证"]
322
+ : ["记录验证结论并继续推进后续任务"],
206
323
  capturedAt
207
324
  });
208
325
  this.butlerSessionRepository.update({
@@ -301,6 +418,7 @@ function normalizeVerificationStatus(value) {
301
418
  case "passed":
302
419
  case "failed":
303
420
  case "skipped":
421
+ case "cancelled":
304
422
  return value;
305
423
  default:
306
424
  return "failed";
@@ -575,13 +693,31 @@ async function runCommandExecution(input) {
575
693
  clearTimeout(timer);
576
694
  callback();
577
695
  };
696
+ const cleanupAbort = () => {
697
+ input.signal?.removeEventListener("abort", handleAbort);
698
+ };
578
699
  const timer = setTimeout(() => {
579
700
  child.kill("SIGTERM");
580
701
  finish(() => {
702
+ cleanupAbort();
581
703
  reject(new Error(`VERIFICATION_COMMAND_TIMEOUT:${input.command}`));
582
704
  });
583
705
  }, input.timeoutMs);
584
706
  timer.unref?.();
707
+ const handleAbort = () => {
708
+ child.kill("SIGTERM");
709
+ finish(() => {
710
+ cleanupAbort();
711
+ reject(input.signal?.reason ?? new TaskCancelledError("验证执行已取消"));
712
+ });
713
+ };
714
+ if (input.signal) {
715
+ if (input.signal.aborted) {
716
+ handleAbort();
717
+ return;
718
+ }
719
+ input.signal.addEventListener("abort", handleAbort, { once: true });
720
+ }
585
721
  child.stdout.on("data", (chunk) => {
586
722
  stdout += String(chunk);
587
723
  });
@@ -590,11 +726,13 @@ async function runCommandExecution(input) {
590
726
  });
591
727
  child.on("error", (error) => {
592
728
  finish(() => {
729
+ cleanupAbort();
593
730
  reject(new Error(`VERIFICATION_COMMAND_FAILED:${error.message}`));
594
731
  });
595
732
  });
596
733
  child.on("close", (exitCode) => {
597
734
  finish(() => {
735
+ cleanupAbort();
598
736
  resolve({
599
737
  exitCode: exitCode ?? 1,
600
738
  stdout,
@@ -604,12 +742,24 @@ async function runCommandExecution(input) {
604
742
  });
605
743
  });
606
744
  }
607
- async function runHttpHealthCheck(url, timeoutMs) {
745
+ async function runHttpHealthCheck(url, timeoutMs, signal) {
608
746
  const controller = new AbortController();
747
+ const cleanupAbort = () => {
748
+ signal?.removeEventListener("abort", handleAbort);
749
+ };
609
750
  const timer = setTimeout(() => {
610
751
  controller.abort();
611
752
  }, timeoutMs);
612
753
  timer.unref?.();
754
+ const handleAbort = () => {
755
+ controller.abort(signal?.reason);
756
+ };
757
+ if (signal) {
758
+ if (signal.aborted) {
759
+ throw signal.reason ?? new TaskCancelledError("验证执行已取消");
760
+ }
761
+ signal.addEventListener("abort", handleAbort, { once: true });
762
+ }
613
763
  try {
614
764
  const response = await fetch(url, {
615
765
  method: "GET",
@@ -623,10 +773,14 @@ async function runHttpHealthCheck(url, timeoutMs) {
623
773
  };
624
774
  }
625
775
  catch (error) {
776
+ if (controller.signal.aborted && signal?.aborted) {
777
+ throw signal.reason ?? new TaskCancelledError("验证执行已取消");
778
+ }
626
779
  const detail = error instanceof Error ? error.message : String(error);
627
780
  throw new Error(`VERIFICATION_HEALTHCHECK_FAILED:${detail}`);
628
781
  }
629
782
  finally {
783
+ cleanupAbort();
630
784
  clearTimeout(timer);
631
785
  }
632
786
  }