agkan 3.14.1 → 3.15.1

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 (136) hide show
  1. package/README.ja.md +29 -0
  2. package/README.md +29 -0
  3. package/dist/board/BulkRunService.d.ts.map +1 -1
  4. package/dist/board/BulkRunService.js +20 -4
  5. package/dist/board/BulkRunService.js.map +1 -1
  6. package/dist/board/boardRoutes.d.ts +1 -0
  7. package/dist/board/boardRoutes.d.ts.map +1 -1
  8. package/dist/board/boardRoutes.js +17 -1
  9. package/dist/board/boardRoutes.js.map +1 -1
  10. package/dist/board/client/main.js +18 -4
  11. package/dist/board/server.js +1 -1
  12. package/dist/board/server.js.map +1 -1
  13. package/dist/cli/commands/agent-guide.d.ts.map +1 -1
  14. package/dist/cli/commands/agent-guide.js +8 -1
  15. package/dist/cli/commands/agent-guide.js.map +1 -1
  16. package/dist/cli/commands/block/add.js +10 -10
  17. package/dist/cli/commands/block/add.js.map +1 -1
  18. package/dist/cli/commands/block/list.js +4 -4
  19. package/dist/cli/commands/block/list.js.map +1 -1
  20. package/dist/cli/commands/block/remove.js +9 -9
  21. package/dist/cli/commands/block/remove.js.map +1 -1
  22. package/dist/cli/commands/comment/add.js +2 -2
  23. package/dist/cli/commands/comment/add.js.map +1 -1
  24. package/dist/cli/commands/comment/delete.js +2 -2
  25. package/dist/cli/commands/comment/delete.js.map +1 -1
  26. package/dist/cli/commands/comment/list.js +2 -2
  27. package/dist/cli/commands/comment/list.js.map +1 -1
  28. package/dist/cli/commands/config/get.js +2 -2
  29. package/dist/cli/commands/config/get.js.map +1 -1
  30. package/dist/cli/commands/init.d.ts.map +1 -1
  31. package/dist/cli/commands/init.js +9 -0
  32. package/dist/cli/commands/init.js.map +1 -1
  33. package/dist/cli/commands/meta/delete.js +3 -3
  34. package/dist/cli/commands/meta/delete.js.map +1 -1
  35. package/dist/cli/commands/meta/get.js +3 -3
  36. package/dist/cli/commands/meta/get.js.map +1 -1
  37. package/dist/cli/commands/meta/list.js +2 -2
  38. package/dist/cli/commands/meta/list.js.map +1 -1
  39. package/dist/cli/commands/meta/set.js +4 -4
  40. package/dist/cli/commands/meta/set.js.map +1 -1
  41. package/dist/cli/commands/tag/add.js +7 -7
  42. package/dist/cli/commands/tag/add.js.map +1 -1
  43. package/dist/cli/commands/tag/attach.d.ts.map +1 -1
  44. package/dist/cli/commands/tag/attach.js +14 -25
  45. package/dist/cli/commands/tag/attach.js.map +1 -1
  46. package/dist/cli/commands/tag/delete.d.ts.map +1 -1
  47. package/dist/cli/commands/tag/delete.js +12 -24
  48. package/dist/cli/commands/tag/delete.js.map +1 -1
  49. package/dist/cli/commands/tag/detach.d.ts.map +1 -1
  50. package/dist/cli/commands/tag/detach.js +14 -25
  51. package/dist/cli/commands/tag/detach.js.map +1 -1
  52. package/dist/cli/commands/tag/list.js +2 -2
  53. package/dist/cli/commands/tag/list.js.map +1 -1
  54. package/dist/cli/commands/tag/rename.d.ts.map +1 -1
  55. package/dist/cli/commands/tag/rename.js +15 -27
  56. package/dist/cli/commands/tag/rename.js.map +1 -1
  57. package/dist/cli/commands/tag/show.js +3 -3
  58. package/dist/cli/commands/tag/show.js.map +1 -1
  59. package/dist/cli/commands/task/add.js +11 -11
  60. package/dist/cli/commands/task/add.js.map +1 -1
  61. package/dist/cli/commands/task/archive.js +3 -3
  62. package/dist/cli/commands/task/archive.js.map +1 -1
  63. package/dist/cli/commands/task/copy.js +5 -5
  64. package/dist/cli/commands/task/copy.js.map +1 -1
  65. package/dist/cli/commands/task/count.js +4 -4
  66. package/dist/cli/commands/task/count.js.map +1 -1
  67. package/dist/cli/commands/task/delete.js +3 -3
  68. package/dist/cli/commands/task/delete.js.map +1 -1
  69. package/dist/cli/commands/task/find.js +2 -2
  70. package/dist/cli/commands/task/find.js.map +1 -1
  71. package/dist/cli/commands/task/get.js +3 -3
  72. package/dist/cli/commands/task/get.js.map +1 -1
  73. package/dist/cli/commands/task/list.d.ts.map +1 -1
  74. package/dist/cli/commands/task/list.js +169 -170
  75. package/dist/cli/commands/task/list.js.map +1 -1
  76. package/dist/cli/commands/task/purge.js +3 -3
  77. package/dist/cli/commands/task/purge.js.map +1 -1
  78. package/dist/cli/commands/task/unarchive.js +3 -3
  79. package/dist/cli/commands/task/unarchive.js.map +1 -1
  80. package/dist/cli/commands/task/update-helpers.js +11 -11
  81. package/dist/cli/commands/task/update-helpers.js.map +1 -1
  82. package/dist/cli/commands/task/update-parent.js +8 -8
  83. package/dist/cli/commands/task/update-parent.js.map +1 -1
  84. package/dist/cli/commands/task/update.js +3 -3
  85. package/dist/cli/commands/task/update.js.map +1 -1
  86. package/dist/cli/utils/error-handler.js +4 -4
  87. package/dist/cli/utils/error-handler.js.map +1 -1
  88. package/dist/cli/utils/output-formatter.js +2 -2
  89. package/dist/cli/utils/output-formatter.js.map +1 -1
  90. package/dist/cli/utils/tag-resolver.d.ts +21 -0
  91. package/dist/cli/utils/tag-resolver.d.ts.map +1 -0
  92. package/dist/cli/utils/tag-resolver.js +22 -0
  93. package/dist/cli/utils/tag-resolver.js.map +1 -0
  94. package/dist/db/config.d.ts +8 -0
  95. package/dist/db/config.d.ts.map +1 -1
  96. package/dist/db/config.js +14 -0
  97. package/dist/db/config.js.map +1 -1
  98. package/dist/hooks/hook-stop.mjs +135 -56
  99. package/dist/services/index.d.ts +1 -2
  100. package/dist/services/index.d.ts.map +1 -1
  101. package/dist/services/index.js +1 -3
  102. package/dist/services/index.js.map +1 -1
  103. package/dist/services/types.d.ts +28 -0
  104. package/dist/services/types.d.ts.map +1 -0
  105. package/dist/services/types.js +6 -0
  106. package/dist/services/types.js.map +1 -0
  107. package/dist/terminal/PtySessionService.d.ts +1 -1
  108. package/dist/terminal/PtySessionService.d.ts.map +1 -1
  109. package/dist/terminal/PtySessionService.js +14 -9
  110. package/dist/terminal/PtySessionService.js.map +1 -1
  111. package/dist/terminal/buildHookEnv.d.ts +8 -0
  112. package/dist/terminal/buildHookEnv.d.ts.map +1 -0
  113. package/dist/terminal/buildHookEnv.js +24 -0
  114. package/dist/terminal/buildHookEnv.js.map +1 -0
  115. package/dist/utils/runTargetStatus.d.ts +9 -0
  116. package/dist/utils/runTargetStatus.d.ts.map +1 -0
  117. package/dist/utils/runTargetStatus.js +17 -0
  118. package/dist/utils/runTargetStatus.js.map +1 -0
  119. package/package.json +20 -30
  120. package/dist/board/client/board.js +0 -2743
  121. package/dist/cli/utils/response-formatter.d.ts +0 -19
  122. package/dist/cli/utils/response-formatter.d.ts.map +0 -1
  123. package/dist/cli/utils/response-formatter.js +0 -43
  124. package/dist/cli/utils/response-formatter.js.map +0 -1
  125. package/dist/models/Attachment.d.ts +0 -25
  126. package/dist/models/Attachment.d.ts.map +0 -1
  127. package/dist/models/Attachment.js +0 -7
  128. package/dist/models/Attachment.js.map +0 -1
  129. package/dist/services/AttachmentService.d.ts +0 -62
  130. package/dist/services/AttachmentService.d.ts.map +0 -1
  131. package/dist/services/AttachmentService.js +0 -95
  132. package/dist/services/AttachmentService.js.map +0 -1
  133. package/dist/services/ClaudeProcessService.d.ts +0 -110
  134. package/dist/services/ClaudeProcessService.d.ts.map +0 -1
  135. package/dist/services/ClaudeProcessService.js +0 -310
  136. package/dist/services/ClaudeProcessService.js.map +0 -1
package/dist/db/config.js CHANGED
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.buildPermissionArgs = buildPermissionArgs;
6
7
  exports.loadConfig = loadConfig;
7
8
  exports.isTestMode = isTestMode;
8
9
  exports.getConfigFileName = getConfigFileName;
@@ -12,6 +13,19 @@ exports.resolveDatabasePath = resolveDatabasePath;
12
13
  const fs_1 = __importDefault(require("fs"));
13
14
  const path_1 = __importDefault(require("path"));
14
15
  const js_yaml_1 = __importDefault(require("js-yaml"));
16
+ /**
17
+ * Build claude CLI permission arguments from config.
18
+ * - "skipPermissions" → --dangerously-skip-permissions (legacy behavior)
19
+ * - any other value → --permission-mode <value>
20
+ * - undefined → --permission-mode auto (default)
21
+ */
22
+ function buildPermissionArgs(config) {
23
+ const mode = config.permissionMode;
24
+ if (mode === 'skipPermissions') {
25
+ return ['--dangerously-skip-permissions'];
26
+ }
27
+ return ['--permission-mode', mode ?? 'auto'];
28
+ }
15
29
  /**
16
30
  * Load and parse the configuration file.
17
31
  * Returns the parsed Config object, or an empty object if the file does not exist or is invalid.
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/db/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/db/config.ts"],"names":[],"mappings":"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"}
@@ -43,19 +43,100 @@ function findLastToolUse(entries) {
43
43
  return null;
44
44
  }
45
45
 
46
- // Returns true if a tool_result for toolUseId exists in any entry after afterIndex.
47
- function isToolResultPresent(entries, toolUseId, afterIndex) {
48
- if (!toolUseId) return false;
49
- for (let i = afterIndex + 1; i < entries.length; i++) {
50
- const content = entries[i]?.message?.content;
46
+ // Collects every tool_use across the ENTIRE transcript (not just the last turn) that looks
47
+ // like a still-running background job.
48
+ // A background job may have been started several turns ago and still be running while
49
+ // the current turn ends on an unrelated tool (e.g. ScheduleWakeup) — the last-tool-only
50
+ // view used by findLastToolUse cannot see it, so a full scan is required here.
51
+ //
52
+ // Two shapes are recognized:
53
+ // 1. Bash or Task with input.run_in_background === true (the documented flag).
54
+ // 2. Agent, with no flag at all, when `includeAgentWithoutFlag` is true. Newer CLI
55
+ // versions run sub-agents under the tool name `Agent` and default to background
56
+ // execution without ever setting run_in_background (see #667). This shape is only
57
+ // opted into by the caller for BOARD_TARGET_STATUS-less (planning) sessions: this
58
+ // guard runs before the status-reached check, so if an Agent's completion is never
59
+ // observed as a matching <task-notification>, treating it as background here would
60
+ // permanently block status-based termination for pr/run sessions.
61
+ function findBackgroundJobToolUses(entries, { includeAgentWithoutFlag = false } = {}) {
62
+ const jobs = [];
63
+ for (const entry of entries) {
64
+ if (entry?.type !== 'assistant') continue;
65
+ const content = entry?.message?.content;
51
66
  if (!Array.isArray(content)) continue;
52
- if (content.some((item) => item?.type === 'tool_result' && item?.tool_use_id === toolUseId)) {
67
+ for (const item of content) {
68
+ if (item?.type !== 'tool_use') continue;
69
+ const isFlaggedBashOrTask =
70
+ (item.name === 'Bash' || item.name === 'Task') &&
71
+ item.input &&
72
+ typeof item.input === 'object' &&
73
+ item.input.run_in_background === true;
74
+ const isUnflaggedAgent = includeAgentWithoutFlag && item.name === 'Agent';
75
+ if (isFlaggedBashOrTask || isUnflaggedAgent) {
76
+ // A missing id means we cannot verify completion at all — treat conservatively
77
+ // as unfinished rather than silently skipping the guard.
78
+ jobs.push(item.id ?? null);
79
+ }
80
+ }
81
+ }
82
+ return jobs;
83
+ }
84
+
85
+ // The real completion signal for a background Bash/Task is a `<task-notification>` block
86
+ // (delivered via a queue-operation transcript entry's `content` string) whose
87
+ // `<tool-use-id>` matches the original tool_use id. The immediate "running in background"
88
+ // ack is a normal tool_result and must NOT be mistaken for completion.
89
+ function isBackgroundJobComplete(entries, toolUseId) {
90
+ const marker = `<tool-use-id>${toolUseId}</tool-use-id>`;
91
+ for (const entry of entries) {
92
+ if (typeof entry?.content === 'string' && entry.content.includes(marker)) {
53
93
  return true;
54
94
  }
55
95
  }
56
96
  return false;
57
97
  }
58
98
 
99
+ // Fetches the current task status from the board and checks whether it has reached the
100
+ // run's target status. Reached = current status matches target, or has advanced to a
101
+ // terminal status (done/closed). On fetch failure or non-200, returns false so the caller
102
+ // falls through to the normal guard checks instead of overriding them.
103
+ async function isTargetStatusReached(apiUrl, token, taskId, targetStatus) {
104
+ try {
105
+ const res = await fetch(`${apiUrl}/api/internal/tasks/${taskId}/status`, {
106
+ method: 'GET',
107
+ headers: { 'x-hook-token': token },
108
+ });
109
+ if (!res.ok) return false;
110
+ const data = await res.json();
111
+ const status = data && data.status;
112
+ return status === targetStatus || status === 'done' || status === 'closed';
113
+ } catch (err) {
114
+ process.stderr.write(`hook-stop: status check failed: ${(err && err.message) || err}\n`);
115
+ return false;
116
+ }
117
+ }
118
+
119
+ // Notifies the board of completion. Unlinks the main session's session file first, then
120
+ // POSTs the completion — the file is only removed once completion is actually reported.
121
+ async function notifyComplete(apiUrl, token, taskId, sessionFile) {
122
+ await fs.unlink(sessionFile).catch(() => {});
123
+ try {
124
+ const res = await fetch(`${apiUrl}/api/internal/hooks/stop`, {
125
+ method: 'POST',
126
+ headers: {
127
+ 'content-type': 'application/json',
128
+ 'x-hook-token': token,
129
+ },
130
+ body: JSON.stringify({ taskId, reason: 'complete' }),
131
+ });
132
+ if (!res.ok) {
133
+ process.stderr.write(`hook-stop: API responded ${res.status}\n`);
134
+ }
135
+ } catch (err) {
136
+ process.stderr.write(`hook-stop: ${(err && err.message) || err}\n`);
137
+ }
138
+ }
139
+
59
140
  async function main() {
60
141
  const taskIdRaw = process.env.BOARD_TASK_ID;
61
142
  const apiUrl = process.env.BOARD_API_URL;
@@ -86,70 +167,68 @@ async function main() {
86
167
  }
87
168
 
88
169
  const entries = parseTranscript(jsonl);
89
- const lastTool = findLastToolUse(entries);
90
- if (lastTool?.name === 'AskUserQuestion') return;
91
- // When Claude ends a turn with a backgrounded Bash still running,
92
- // do not signal "complete" to the server: that would kill the PTY
93
- // session and abort the still-running background job.
94
- if (
95
- lastTool?.name === 'Bash' &&
96
- lastTool.input &&
97
- typeof lastTool.input === 'object' &&
98
- lastTool.input.run_in_background === true &&
99
- !isToolResultPresent(entries, lastTool.id, lastTool.entryIndex)
100
- ) {
101
- return;
102
- }
103
- // When Claude ends a turn with a backgrounded Task (sub-agent) still running,
104
- // do not signal "complete": that would kill the PTY session and abort the agent.
105
- if (
106
- lastTool?.name === 'Task' &&
107
- lastTool.input &&
108
- typeof lastTool.input === 'object' &&
109
- lastTool.input.run_in_background === true &&
110
- !isToolResultPresent(entries, lastTool.id, lastTool.entryIndex)
111
- ) {
112
- return;
113
- }
114
- // Monitor is always waiting for streamed events from a background process.
115
- // Signalling "complete" while Monitor is active would abort the wait.
116
- if (lastTool?.name === 'Monitor') {
117
- return;
118
- }
119
170
 
120
171
  const taskId = Number(taskIdRaw);
121
172
  if (!Number.isFinite(taskId)) return;
122
173
 
123
- // Check whether this is the main session or a sub-agent session.
124
- // Only the main session should notify the board; sub-agent sessions must be ignored.
174
+ // Determine whether this is the main session or a sub-agent session (a sub-agent's
175
+ // Stop must not notify the board). Do not unlink the session file here yet if an
176
+ // interactive guard below causes an early return, we would lose the marker needed to
177
+ // tell the main session apart from a sub-agent. It is only unlinked inside
178
+ // notifyComplete, right before the completion POST is actually sent.
125
179
  const sessionFile = `/tmp/board-main-session-${taskIdRaw}`;
126
180
  try {
127
181
  const mainSessionId = (await fs.readFile(sessionFile, 'utf-8')).trim();
128
182
  if (mainSessionId && mainSessionId !== payload?.session_id) {
129
- // This is a sub-agent stop — do not notify the board.
130
- return;
183
+ return; // Sub-agent's Stop
131
184
  }
132
- // This is the main session — clean up the file before notifying.
133
- await fs.unlink(sessionFile).catch(() => {});
134
185
  } catch {
135
- // file may not exist (e.g. hook-session-start was not used); proceed with API call.
186
+ // No file means hook-session-start was not used; proceed as the main session.
136
187
  }
137
188
 
138
- try {
139
- const res = await fetch(`${apiUrl}/api/internal/hooks/stop`, {
140
- method: 'POST',
141
- headers: {
142
- 'content-type': 'application/json',
143
- 'x-hook-token': token,
144
- },
145
- body: JSON.stringify({ taskId, reason: 'complete' }),
146
- });
147
- if (!res.ok) {
148
- process.stderr.write(`hook-stop: API responded ${res.status}\n`);
189
+ const lastTool = findLastToolUse(entries);
190
+ if (lastTool?.name === 'AskUserQuestion') return;
191
+ // Monitor is always waiting for streamed events from a background process.
192
+ // Signalling "complete" while Monitor is active would abort the wait.
193
+ if (lastTool?.name === 'Monitor') return;
194
+
195
+ const targetStatus = process.env.BOARD_TARGET_STATUS;
196
+
197
+ // If a background Bash/Task (e.g. an orchestrated sub-agent) was started in an earlier
198
+ // turn and hasn't completed yet, keep the session alive instead of sending complete.
199
+ // This guard takes priority over the status-based check below: a sub-agent advancing
200
+ // the task's status (even to a terminal one) is not a reliable completion signal while
201
+ // other background work is still in flight — sending complete here would tear down the
202
+ // PTY process tree and kill the still-running sub-agent along with it (see #666).
203
+ //
204
+ // The `Agent`-without-flag shape (see findBackgroundJobToolUses) is only opted into when
205
+ // there is no BOARD_TARGET_STATUS, i.e. planning sessions with no other termination
206
+ // signal to fall back on. pr/run/direct sessions always have BOARD_TARGET_STATUS set and
207
+ // rely on the status-reached check below as their sole termination signal (see #667) —
208
+ // opting an unverified completion shape into their guard could wedge them open forever.
209
+ const backgroundJobIds = findBackgroundJobToolUses(entries, { includeAgentWithoutFlag: !targetStatus });
210
+ const hasUnfinishedBackgroundJob = backgroundJobIds.some((id) => !isBackgroundJobComplete(entries, id));
211
+ if (hasUnfinishedBackgroundJob) return;
212
+
213
+ // When a target status is configured (pr/run/direct), status-reached is the ONLY
214
+ // termination signal — there is no unconditional fallback. Sending complete on any other
215
+ // basis here would risk killing an in-flight run whose activity doesn't happen to match
216
+ // one of the guards above (see #667: the CLI's tool names and flags for background work
217
+ // are not a stable contract to enumerate against). If the status hasn't reached target
218
+ // yet — including because the status check itself failed — the safe failure mode is to
219
+ // leave the session running: it stays visible on the board and can be stopped manually,
220
+ // which is recoverable, unlike a kill-in-flight that destroys unsaved progress.
221
+ if (targetStatus) {
222
+ const reached = await isTargetStatusReached(apiUrl, token, taskId, targetStatus);
223
+ if (reached) {
224
+ await notifyComplete(apiUrl, token, taskId, sessionFile);
149
225
  }
150
- } catch (err) {
151
- process.stderr.write(`hook-stop: ${(err && err.message) || err}\n`);
226
+ return;
152
227
  }
228
+
229
+ // No target status configured (planning session / legacy environment): preserve the
230
+ // original unconditional-complete behavior for backward compatibility.
231
+ await notifyComplete(apiUrl, token, taskId, sessionFile);
153
232
  }
154
233
 
155
234
  await main();
@@ -11,6 +11,5 @@ export { MetadataService } from './MetadataService';
11
11
  export { CommentService } from './CommentService';
12
12
  export { ExportImportService } from './ExportImportService';
13
13
  export type { ExportData, ExportedTask, ExportedComment, ImportResult } from './ExportImportService';
14
- export { ClaudeProcessService } from './ClaudeProcessService';
15
- export type { ClaudeStreamEvent, OutputEvent, SubscribeCallback } from './ClaudeProcessService';
14
+ export type { RunLog, OutputEvent, CompletionConfirmCallback } from './types';
16
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrG,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC"}
@@ -4,7 +4,7 @@
4
4
  * Centrally manages all service classes
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.ClaudeProcessService = exports.ExportImportService = exports.CommentService = exports.MetadataService = exports.TaskTagService = exports.TagService = exports.TaskBlockService = exports.FileService = exports.TaskService = void 0;
7
+ exports.ExportImportService = exports.CommentService = exports.MetadataService = exports.TaskTagService = exports.TagService = exports.TaskBlockService = exports.FileService = exports.TaskService = void 0;
8
8
  var TaskService_1 = require("./TaskService");
9
9
  Object.defineProperty(exports, "TaskService", { enumerable: true, get: function () { return TaskService_1.TaskService; } });
10
10
  var FileService_1 = require("./FileService");
@@ -21,6 +21,4 @@ var CommentService_1 = require("./CommentService");
21
21
  Object.defineProperty(exports, "CommentService", { enumerable: true, get: function () { return CommentService_1.CommentService; } });
22
22
  var ExportImportService_1 = require("./ExportImportService");
23
23
  Object.defineProperty(exports, "ExportImportService", { enumerable: true, get: function () { return ExportImportService_1.ExportImportService; } });
24
- var ClaudeProcessService_1 = require("./ClaudeProcessService");
25
- Object.defineProperty(exports, "ClaudeProcessService", { enumerable: true, get: function () { return ClaudeProcessService_1.ClaudeProcessService; } });
26
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AACzB,2CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,6DAA4D;AAAnD,0HAAA,mBAAmB,OAAA;AAE5B,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AACzB,2CAA0C;AAAjC,wGAAA,UAAU,OAAA;AACnB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AACvB,6DAA4D;AAAnD,0HAAA,mBAAmB,OAAA"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Shared service-layer type definitions used by claude process runners.
3
+ */
4
+ export type OutputEvent = {
5
+ kind: 'text';
6
+ text: string;
7
+ } | {
8
+ kind: 'tool_use';
9
+ name: string;
10
+ input: Record<string, unknown>;
11
+ } | {
12
+ kind: 'done';
13
+ exitCode: number;
14
+ } | {
15
+ kind: 'error';
16
+ message: string;
17
+ };
18
+ export interface RunLog {
19
+ id: number;
20
+ task_id: number;
21
+ started_at: string;
22
+ finished_at: string | null;
23
+ exit_code: number | null;
24
+ session_id: string | null;
25
+ events: OutputEvent[];
26
+ }
27
+ export type CompletionConfirmCallback = (taskId: number, targetStatus: string) => void;
28
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/services/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAClE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvC,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,MAAM,MAAM,yBAAyB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Shared service-layer type definitions used by claude process runners.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/services/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -1,5 +1,5 @@
1
1
  import type { StorageBackend } from '../db/types/repository';
2
- import type { RunLog, CompletionConfirmCallback } from '../services/ClaudeProcessService';
2
+ import type { RunLog, CompletionConfirmCallback } from '../services/types';
3
3
  import { AttentionStateService } from '../services/AttentionStateService';
4
4
  export declare function stripAnsi(text: string): string;
5
5
  type OutputEvent = {
@@ -1 +1 @@
1
- {"version":3,"file":"PtySessionService.d.ts","sourceRoot":"","sources":["../../src/terminal/PtySessionService.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,wBAAwB,CAAC;AACxE,OAAO,KAAK,EACV,MAAM,EAEN,yBAAyB,EAC1B,MAAM,kCAAkC,CAAC;AAI1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAY9C;AAgBD,KAAK,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAC3F,KAAK,iBAAiB,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AA0BtD,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,OAAO,CAAC,EAAE,CAAwB;IAClC,OAAO,CAAC,6BAA6B,CAA8B;IACnE,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,4BAA4B,CAA6C;IACjF,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,qBAAqB,CAA+B;IAC5D,OAAO,CAAC,mBAAmB,CAAgB;IAC3C,OAAO,CAAC,gBAAgB,CAAuB;gBAEnC,EAAE,CAAC,EAAE,cAAc,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,wBAAwB;IAO1E,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIjC,2BAA2B,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAO7D,0BAA0B,CAAC,QAAQ,EAAE,yBAAyB,GAAG,MAAM,IAAI;IAO3E,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAInE,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAItC,OAAO,CAAC,wBAAwB;IAI1B,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,SAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiKnH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAiBpC,gBAAgB,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE;IAIzD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAInC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,MAAM,IAAI;IAkBxE,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAkBvE,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAShF,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIxD,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAI9C,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE;CAarC"}
1
+ {"version":3,"file":"PtySessionService.d.ts","sourceRoot":"","sources":["../../src/terminal/PtySessionService.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,wBAAwB,CAAC;AACxE,OAAO,KAAK,EAAE,MAAM,EAAoC,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAI7G,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAG1E,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAY9C;AAgBD,KAAK,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAC3F,KAAK,iBAAiB,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AA0BtD,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,OAAO,CAAC,EAAE,CAAwB;IAClC,OAAO,CAAC,6BAA6B,CAA8B;IACnE,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,4BAA4B,CAA6C;IACjF,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,qBAAqB,CAA+B;IAC5D,OAAO,CAAC,mBAAmB,CAAgB;IAC3C,OAAO,CAAC,gBAAgB,CAAuB;gBAEnC,EAAE,CAAC,EAAE,cAAc,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,wBAAwB;IAO1E,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIjC,2BAA2B,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAO7D,0BAA0B,CAAC,QAAQ,EAAE,yBAAyB,GAAG,MAAM,IAAI;IAO3E,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAInE,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAItC,OAAO,CAAC,wBAAwB;IAI1B,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,SAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6JnH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAsBpC,gBAAgB,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE;IAIzD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAInC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,MAAM,IAAI;IAqBxE,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAkBvE,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAShF,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIxD,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAI9C,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE;CAarC"}
@@ -39,7 +39,8 @@ const pty = __importStar(require("node-pty"));
39
39
  const child_process_1 = require("child_process");
40
40
  const errors_1 = require("../errors");
41
41
  const claudeHookSettings_1 = require("../hooks/claudeHookSettings");
42
- const hookToken_1 = require("../utils/hookToken");
42
+ const buildHookEnv_1 = require("./buildHookEnv");
43
+ const config_1 = require("../db/config");
43
44
  function stripAnsi(text) {
44
45
  return (text
45
46
  // CSI sequences: ESC [ <param bytes> <intermediate bytes> <final byte>
@@ -122,13 +123,9 @@ class PtySessionService {
122
123
  const modelArgs = model ? ['--model', model] : [];
123
124
  const effortArgs = effort ? ['--effort', effort] : [];
124
125
  const settingsArgs = this.hookSettingsPath ? ['--settings', this.hookSettingsPath] : [];
125
- const args = [...settingsArgs, ...modelArgs, ...effortArgs, '--dangerously-skip-permissions'];
126
- const hookEnv = {};
127
- if (this.boardApiUrl !== null && this.boardApiUrl !== '') {
128
- hookEnv.BOARD_TASK_ID = String(taskId);
129
- hookEnv.BOARD_API_URL = this.boardApiUrl;
130
- hookEnv.BOARD_HOOK_TOKEN = (0, hookToken_1.getHookToken)();
131
- }
126
+ const permissionArgs = (0, config_1.buildPermissionArgs)((0, config_1.loadConfig)());
127
+ const args = [...settingsArgs, ...modelArgs, ...effortArgs, ...permissionArgs];
128
+ const hookEnv = (0, buildHookEnv_1.buildHookEnv)(taskId, this.boardApiUrl, command);
132
129
  const ptyProcess = pty.spawn(CLAUDE_BIN, args, {
133
130
  name: 'xterm-256color',
134
131
  cols: 220,
@@ -259,8 +256,13 @@ class PtySessionService {
259
256
  info.promptTimer = null;
260
257
  }
261
258
  info.pendingPrompt = null;
262
- info.exitSubscribers.clear();
259
+ // Mark as user-stopped before emitting so synchronous subscribers (e.g. boardRoutes.ts)
260
+ // observe isUserStopped() === true and skip auto-advancing status on this done event.
263
261
  this.userStoppedTasks.add(taskId);
262
+ // Notify subscribers before clearing so they can advance (e.g. BulkRunService.runNext()).
263
+ const doneEvent = { kind: 'done', exitCode: 0 };
264
+ info.exitSubscribers.forEach((cb) => cb(doneEvent));
265
+ info.exitSubscribers.clear();
264
266
  info.ptyProcess.kill();
265
267
  this.sessions.delete(taskId);
266
268
  this.attentionStateService?.clearTask(taskId);
@@ -283,6 +285,9 @@ class PtySessionService {
283
285
  return () => { };
284
286
  }
285
287
  }
288
+ // Session not found and no run log: process may have exited before subscription.
289
+ // Notify caller immediately so the caller can advance to the next action.
290
+ callback({ kind: 'error', message: `No session or run log found for taskId ${taskId}` });
286
291
  return () => { };
287
292
  }
288
293
  info.exitSubscribers.add(callback);
@@ -1 +1 @@
1
- {"version":3,"file":"PtySessionService.js","sourceRoot":"","sources":["../../src/terminal/PtySessionService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PtySessionService.js","sourceRoot":"","sources":["../../src/terminal/PtySessionService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Board hook 用の環境変数を構築する。
3
+ * - boardApiUrl が未設定(null/'')ならフック無効 = 空オブジェクト。
4
+ * - command が目標statusを持つ(pr/run/direct)場合は BOARD_TARGET_STATUS を付与する。
5
+ * planning は目標statusを持たないため付与しない。
6
+ */
7
+ export declare function buildHookEnv(taskId: number, boardApiUrl: string | null, command: string): Record<string, string>;
8
+ //# sourceMappingURL=buildHookEnv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildHookEnv.d.ts","sourceRoot":"","sources":["../../src/terminal/buildHookEnv.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAShH"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildHookEnv = buildHookEnv;
4
+ const hookToken_1 = require("../utils/hookToken");
5
+ const runTargetStatus_1 = require("../utils/runTargetStatus");
6
+ /**
7
+ * Board hook 用の環境変数を構築する。
8
+ * - boardApiUrl が未設定(null/'')ならフック無効 = 空オブジェクト。
9
+ * - command が目標statusを持つ(pr/run/direct)場合は BOARD_TARGET_STATUS を付与する。
10
+ * planning は目標statusを持たないため付与しない。
11
+ */
12
+ function buildHookEnv(taskId, boardApiUrl, command) {
13
+ const env = {};
14
+ if (boardApiUrl === null || boardApiUrl === '')
15
+ return env;
16
+ env.BOARD_TASK_ID = String(taskId);
17
+ env.BOARD_API_URL = boardApiUrl;
18
+ env.BOARD_HOOK_TOKEN = (0, hookToken_1.getHookToken)();
19
+ const targetStatus = (0, runTargetStatus_1.runTargetStatus)(command);
20
+ if (targetStatus !== null)
21
+ env.BOARD_TARGET_STATUS = targetStatus;
22
+ return env;
23
+ }
24
+ //# sourceMappingURL=buildHookEnv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildHookEnv.js","sourceRoot":"","sources":["../../src/terminal/buildHookEnv.ts"],"names":[],"mappings":";;AASA,oCASC;AAlBD,kDAAkD;AAClD,8DAA2D;AAE3D;;;;;GAKG;AACH,SAAgB,YAAY,CAAC,MAAc,EAAE,WAA0B,EAAE,OAAe;IACtF,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,IAAI,WAAW,KAAK,IAAI,IAAI,WAAW,KAAK,EAAE;QAAE,OAAO,GAAG,CAAC;IAC3D,GAAG,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,GAAG,CAAC,aAAa,GAAG,WAAW,CAAC;IAChC,GAAG,CAAC,gBAAgB,GAAG,IAAA,wBAAY,GAAE,CAAC;IACtC,MAAM,YAAY,GAAG,IAAA,iCAAe,EAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,YAAY,KAAK,IAAI;QAAE,GAAG,CAAC,mBAAmB,GAAG,YAAY,CAAC;IAClE,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { TaskStatus } from '../models';
2
+ /**
3
+ * Board run の command から run 完了の目標status を返す。
4
+ * - pr → 'review'
5
+ * - run/direct → 'done'
6
+ * - planning → null(目標statusを持たない = status基準の終了判定対象外)
7
+ */
8
+ export declare function runTargetStatus(command: string): TaskStatus | null;
9
+ //# sourceMappingURL=runTargetStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runTargetStatus.d.ts","sourceRoot":"","sources":["../../src/utils/runTargetStatus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAIlE"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runTargetStatus = runTargetStatus;
4
+ /**
5
+ * Board run の command から run 完了の目標status を返す。
6
+ * - pr → 'review'
7
+ * - run/direct → 'done'
8
+ * - planning → null(目標statusを持たない = status基準の終了判定対象外)
9
+ */
10
+ function runTargetStatus(command) {
11
+ if (command === 'planning')
12
+ return null;
13
+ if (command === 'pr')
14
+ return 'review';
15
+ return 'done';
16
+ }
17
+ //# sourceMappingURL=runTargetStatus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runTargetStatus.js","sourceRoot":"","sources":["../../src/utils/runTargetStatus.ts"],"names":[],"mappings":";;AAQA,0CAIC;AAVD;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,OAAe;IAC7C,IAAI,OAAO,KAAK,UAAU;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC;IACtC,OAAO,MAAM,CAAC;AAChB,CAAC"}