agent-tower 0.5.2-beta.2 → 0.5.2-beta.4

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 (186) hide show
  1. package/dist/app.d.ts.map +1 -1
  2. package/dist/app.js +22 -2
  3. package/dist/app.js.map +1 -1
  4. package/dist/app.test.js +67 -0
  5. package/dist/app.test.js.map +1 -1
  6. package/dist/cli.js +2 -0
  7. package/dist/cli.js.map +1 -1
  8. package/dist/core/container.d.ts +2 -0
  9. package/dist/core/container.d.ts.map +1 -1
  10. package/dist/core/container.js +9 -1
  11. package/dist/core/container.js.map +1 -1
  12. package/dist/core/event-bus.d.ts +2 -1
  13. package/dist/core/event-bus.d.ts.map +1 -1
  14. package/dist/core/event-bus.js.map +1 -1
  15. package/dist/executors/__tests__/base.executor.test.d.ts +2 -0
  16. package/dist/executors/__tests__/base.executor.test.d.ts.map +1 -0
  17. package/dist/executors/__tests__/base.executor.test.js +264 -0
  18. package/dist/executors/__tests__/base.executor.test.js.map +1 -0
  19. package/dist/executors/__tests__/codex.executor.test.js +18 -1
  20. package/dist/executors/__tests__/codex.executor.test.js.map +1 -1
  21. package/dist/executors/base.executor.d.ts.map +1 -1
  22. package/dist/executors/base.executor.js +61 -33
  23. package/dist/executors/base.executor.js.map +1 -1
  24. package/dist/executors/codex.executor.d.ts.map +1 -1
  25. package/dist/executors/codex.executor.js +3 -4
  26. package/dist/executors/codex.executor.js.map +1 -1
  27. package/dist/executors/execution-env.d.ts +7 -1
  28. package/dist/executors/execution-env.d.ts.map +1 -1
  29. package/dist/executors/execution-env.js +41 -2
  30. package/dist/executors/execution-env.js.map +1 -1
  31. package/dist/git/git-cli.d.ts +5 -3
  32. package/dist/git/git-cli.d.ts.map +1 -1
  33. package/dist/git/git-cli.js +3 -1
  34. package/dist/git/git-cli.js.map +1 -1
  35. package/dist/git/worktree.manager.js +1 -1
  36. package/dist/git/worktree.manager.js.map +1 -1
  37. package/dist/git/worktree.manager.test.js +69 -0
  38. package/dist/git/worktree.manager.test.js.map +1 -1
  39. package/dist/index.js +2 -0
  40. package/dist/index.js.map +1 -1
  41. package/dist/mcp/http-client.d.ts +1 -0
  42. package/dist/mcp/http-client.d.ts.map +1 -1
  43. package/dist/mcp/http-client.js +3 -0
  44. package/dist/mcp/http-client.js.map +1 -1
  45. package/dist/mcp/server.d.ts.map +1 -1
  46. package/dist/mcp/server.js +27 -2
  47. package/dist/mcp/server.js.map +1 -1
  48. package/dist/mcp/types.d.ts +6 -6
  49. package/dist/routes/__tests__/tasks.test.js +179 -0
  50. package/dist/routes/__tests__/tasks.test.js.map +1 -1
  51. package/dist/routes/git.d.ts.map +1 -1
  52. package/dist/routes/git.js +41 -1
  53. package/dist/routes/git.js.map +1 -1
  54. package/dist/routes/tasks.d.ts.map +1 -1
  55. package/dist/routes/tasks.js +10 -2
  56. package/dist/routes/tasks.js.map +1 -1
  57. package/dist/routes/team-runs.d.ts.map +1 -1
  58. package/dist/routes/team-runs.js +9 -0
  59. package/dist/routes/team-runs.js.map +1 -1
  60. package/dist/services/__tests__/project.service.test.js +85 -1
  61. package/dist/services/__tests__/project.service.test.js.map +1 -1
  62. package/dist/services/__tests__/session-manager.team-run.test.js +84 -1
  63. package/dist/services/__tests__/session-manager.team-run.test.js.map +1 -1
  64. package/dist/services/__tests__/task.service.test.js +190 -0
  65. package/dist/services/__tests__/task.service.test.js.map +1 -1
  66. package/dist/services/__tests__/team-reconciler.service.test.js +122 -2
  67. package/dist/services/__tests__/team-reconciler.service.test.js.map +1 -1
  68. package/dist/services/__tests__/team-run.service.test.js +105 -1
  69. package/dist/services/__tests__/team-run.service.test.js.map +1 -1
  70. package/dist/services/__tests__/team-scheduler.service.test.js +46 -5
  71. package/dist/services/__tests__/team-scheduler.service.test.js.map +1 -1
  72. package/dist/services/__tests__/workspace-git-watcher.service.test.d.ts +2 -0
  73. package/dist/services/__tests__/workspace-git-watcher.service.test.d.ts.map +1 -0
  74. package/dist/services/__tests__/workspace-git-watcher.service.test.js +287 -0
  75. package/dist/services/__tests__/workspace-git-watcher.service.test.js.map +1 -0
  76. package/dist/services/__tests__/workspace.service.test.js +43 -1
  77. package/dist/services/__tests__/workspace.service.test.js.map +1 -1
  78. package/dist/services/project.service.d.ts +28 -24
  79. package/dist/services/project.service.d.ts.map +1 -1
  80. package/dist/services/project.service.js +11 -0
  81. package/dist/services/project.service.js.map +1 -1
  82. package/dist/services/session-manager.d.ts +44 -43
  83. package/dist/services/session-manager.d.ts.map +1 -1
  84. package/dist/services/session-manager.js +19 -3
  85. package/dist/services/session-manager.js.map +1 -1
  86. package/dist/services/task-cleanup.service.d.ts +3 -1
  87. package/dist/services/task-cleanup.service.d.ts.map +1 -1
  88. package/dist/services/task-cleanup.service.js +6 -1
  89. package/dist/services/task-cleanup.service.js.map +1 -1
  90. package/dist/services/task.service.d.ts +96 -65
  91. package/dist/services/task.service.d.ts.map +1 -1
  92. package/dist/services/task.service.js +208 -15
  93. package/dist/services/task.service.js.map +1 -1
  94. package/dist/services/team-run.service.d.ts +3 -0
  95. package/dist/services/team-run.service.d.ts.map +1 -1
  96. package/dist/services/team-run.service.js +77 -16
  97. package/dist/services/team-run.service.js.map +1 -1
  98. package/dist/services/team-scheduler.service.d.ts.map +1 -1
  99. package/dist/services/team-scheduler.service.js +16 -4
  100. package/dist/services/team-scheduler.service.js.map +1 -1
  101. package/dist/services/workspace-git-watcher.service.d.ts +67 -0
  102. package/dist/services/workspace-git-watcher.service.d.ts.map +1 -0
  103. package/dist/services/workspace-git-watcher.service.js +413 -0
  104. package/dist/services/workspace-git-watcher.service.js.map +1 -0
  105. package/dist/services/workspace.service.d.ts +99 -108
  106. package/dist/services/workspace.service.d.ts.map +1 -1
  107. package/dist/services/workspace.service.js +43 -6
  108. package/dist/services/workspace.service.js.map +1 -1
  109. package/dist/socket/events.d.ts +1 -1
  110. package/dist/socket/events.d.ts.map +1 -1
  111. package/dist/socket/events.js.map +1 -1
  112. package/dist/socket/index.d.ts.map +1 -1
  113. package/dist/socket/index.js +12 -0
  114. package/dist/socket/index.js.map +1 -1
  115. package/dist/socket/socket-gateway.d.ts.map +1 -1
  116. package/dist/socket/socket-gateway.js +5 -1
  117. package/dist/socket/socket-gateway.js.map +1 -1
  118. package/dist/web/assets/AgentDemoPage-BIMA7LtG.js +1 -0
  119. package/dist/web/assets/{DemoPage-PD8AX5pI.js → DemoPage-Ck0jATn9.js} +3 -3
  120. package/dist/web/assets/GeneralSettingsPage-C5KUTpFg.js +1 -0
  121. package/dist/web/assets/{MemberAvatar-BDXmryjB.js → MemberAvatar-CKkPlE4w.js} +1 -1
  122. package/dist/web/assets/NotificationSettingsPage-Dl2nJ6Kj.js +1 -0
  123. package/dist/web/assets/ProfileSettingsPage-D_YQBJqm.js +3 -0
  124. package/dist/web/assets/ProjectKanbanPage-D2_609qP.js +89 -0
  125. package/dist/web/assets/ProjectSettingsPage-DpewUnnG.js +2 -0
  126. package/dist/web/assets/ProviderSettingsPage-BbruFhJJ.js +54 -0
  127. package/dist/web/assets/SettingsMasterDetail-zGxTmEVL.js +1 -0
  128. package/dist/web/assets/TeamSettingsPage-B3dBegBu.js +1 -0
  129. package/dist/web/assets/arrow-left-DTTqavaj.js +1 -0
  130. package/dist/web/assets/check-N8co_7vS.js +1 -0
  131. package/dist/web/assets/chevron-down-CXD7aP1s.js +1 -0
  132. package/dist/web/assets/chevron-right-DSp9sZpx.js +1 -0
  133. package/dist/web/assets/{chevron-up-BEHjZ-SB.js → chevron-up-DAXQrjEz.js} +1 -1
  134. package/dist/web/assets/{code-block-OCS4YCEC-6FHTyCN2.js → code-block-OCS4YCEC-Cwwrn6vr.js} +1 -1
  135. package/dist/web/assets/{confirm-dialog-B_wk_zqm.js → confirm-dialog-DnHo_qsz.js} +1 -1
  136. package/dist/web/assets/folder-picker-TUuS8jPV.js +1 -0
  137. package/dist/web/assets/index-JZcaQb4r.css +1 -0
  138. package/dist/web/assets/index-X6FFd4Oy.js +13 -0
  139. package/dist/web/assets/input-CWSScfQB.js +1 -0
  140. package/dist/web/assets/layers-DMovMRW4.js +1 -0
  141. package/dist/web/assets/loader-circle-CvnvXNY6.js +1 -0
  142. package/dist/web/assets/{mermaid-NOHMQCX5-fubZbKyF.js → mermaid-NOHMQCX5-CmO9pIR-.js} +4 -4
  143. package/dist/web/assets/message-square-tazyMedo.js +1 -0
  144. package/dist/web/assets/modal-D9LZcnXe.js +1 -0
  145. package/dist/web/assets/{pencil-uRBgB4qA.js → pencil-Cfcl8xtO.js} +1 -1
  146. package/dist/web/assets/rotate-ccw-BCxAIasK.js +1 -0
  147. package/dist/web/assets/{select-BMlH2AuL.js → select-wCJbdjbF.js} +1 -1
  148. package/dist/web/assets/switch-BpVaaZIq.js +1 -0
  149. package/dist/web/assets/textarea-CqAqQ-DJ.js +1 -0
  150. package/dist/web/assets/{upload-B-Mpvu9j.js → upload-Doc6mqhw.js} +1 -1
  151. package/dist/web/assets/{use-profiles-D6cZwU1R.js → use-profiles-CLbwBXdL.js} +1 -1
  152. package/dist/web/assets/{use-providers-DVP6emIi.js → use-providers-C8Rfahov.js} +1 -1
  153. package/dist/web/favicon.ico +0 -0
  154. package/dist/web/index.html +4 -4
  155. package/node_modules/@agent-tower/shared/dist/socket/events.d.ts +10 -0
  156. package/node_modules/@agent-tower/shared/dist/socket/events.d.ts.map +1 -1
  157. package/node_modules/@agent-tower/shared/dist/socket/events.js +1 -0
  158. package/node_modules/@agent-tower/shared/dist/socket/events.js.map +1 -1
  159. package/node_modules/@agent-tower/shared/dist/types.d.ts +21 -0
  160. package/node_modules/@agent-tower/shared/dist/types.d.ts.map +1 -1
  161. package/node_modules/@agent-tower/shared/dist/types.js.map +1 -1
  162. package/node_modules/@prisma/client/.prisma/client/edge.js +2 -2
  163. package/node_modules/@prisma/client/.prisma/client/index.js +2 -2
  164. package/package.json +1 -1
  165. package/dist/web/assets/AgentDemoPage-Co63rtls.js +0 -1
  166. package/dist/web/assets/GeneralSettingsPage-C5eiEeTZ.js +0 -1
  167. package/dist/web/assets/NotificationSettingsPage-BjjPan2M.js +0 -1
  168. package/dist/web/assets/ProfileSettingsPage-BRpeNq6u.js +0 -3
  169. package/dist/web/assets/ProjectKanbanPage-DUUu2EYy.js +0 -89
  170. package/dist/web/assets/ProjectSettingsPage-avctMKfk.js +0 -2
  171. package/dist/web/assets/ProviderSettingsPage-BIUYN2e0.js +0 -54
  172. package/dist/web/assets/SettingsSection-pLJ3msrT.js +0 -1
  173. package/dist/web/assets/TeamSettingsPage-BjKW9nT8.js +0 -1
  174. package/dist/web/assets/arrow-left-lFz8nyZM.js +0 -1
  175. package/dist/web/assets/button-BUA8P726.js +0 -1
  176. package/dist/web/assets/check-BYuuXc71.js +0 -1
  177. package/dist/web/assets/chevron-down-B931AgE2.js +0 -1
  178. package/dist/web/assets/chevron-right-F9i4wey6.js +0 -1
  179. package/dist/web/assets/circle-check-C7xXtl8B.js +0 -1
  180. package/dist/web/assets/folder-picker-BEHS3b2Q.js +0 -1
  181. package/dist/web/assets/index-DEQhT5sD.css +0 -1
  182. package/dist/web/assets/index-RxbHMWXV.js +0 -13
  183. package/dist/web/assets/loader-circle-stJcjnm-.js +0 -1
  184. package/dist/web/assets/message-square-C8lb-TDo.js +0 -1
  185. package/dist/web/assets/modal-UGrjU63G.js +0 -1
  186. package/dist/web/assets/rotate-ccw-CWaMrTz4.js +0 -1
@@ -2,6 +2,7 @@ import { prisma } from '../utils/index.js';
2
2
  import { TaskStatus, SessionStatus, SessionPurpose, WorkspaceStatus } from '../types/index.js';
3
3
  import { getWorkspaceWorkingDir } from './workspace-kind.js';
4
4
  import { NotFoundError, ValidationError, InvalidStateTransitionError, } from '../errors.js';
5
+ import { getWorkspaceGitWatcherService } from '../core/container.js';
5
6
  import { ensureProjectIsMutable } from './project-guards.js';
6
7
  import { defaultTeamLockService } from './team-lock.service.js';
7
8
  /**
@@ -17,21 +18,158 @@ const VALID_TRANSITIONS = {
17
18
  };
18
19
  const CANCELLABLE_DELETE_WORK_REQUEST_STATUSES = ['PENDING_APPROVAL', 'QUEUED', 'STARTED'];
19
20
  const CANCELLABLE_DELETE_INVOCATION_STATUSES = ['QUEUED', 'RUNNING', 'SESSION_ENDED', 'WAITING_ROOM_REPLY'];
21
+ export const TASK_TITLE_MAX_LENGTH = 200;
22
+ export const TASK_TITLE_AUTOSPLIT_THRESHOLD = 240;
23
+ export const TASK_PREVIEW_MAX_LENGTH = 240;
24
+ export const TASK_HISTORICAL_TITLE_BODY_THRESHOLD = TASK_TITLE_AUTOSPLIT_THRESHOLD;
25
+ const visibleSessionSummary = {
26
+ where: { purpose: { not: SessionPurpose.COMMIT_MSG } },
27
+ select: {
28
+ id: true,
29
+ workspaceId: true,
30
+ agentType: true,
31
+ variant: true,
32
+ providerId: true,
33
+ status: true,
34
+ purpose: true,
35
+ tokenUsage: true,
36
+ createdAt: true,
37
+ updatedAt: true,
38
+ },
39
+ };
40
+ function compactWhitespace(value) {
41
+ return value.replace(/\s+/g, ' ').trim();
42
+ }
43
+ function truncateWithEllipsis(value, maxLength) {
44
+ if (value.length <= maxLength) {
45
+ return value;
46
+ }
47
+ const limit = Math.max(1, maxLength - 3);
48
+ const sliced = value.slice(0, limit);
49
+ const boundary = Math.max(sliced.lastIndexOf(' '), sliced.lastIndexOf(','), sliced.lastIndexOf('。'), sliced.lastIndexOf(','), sliced.lastIndexOf('.'));
50
+ const candidate = boundary >= Math.floor(limit * 0.6) ? sliced.slice(0, boundary) : sliced;
51
+ return `${candidate.trimEnd()}...`;
52
+ }
20
53
  function normalizeTaskTitle(title) {
21
- const normalized = title.trim();
54
+ const normalized = compactWhitespace(title);
22
55
  if (normalized.length === 0) {
23
56
  throw new ValidationError('Task title is required');
24
57
  }
25
- return normalized;
58
+ return truncateWithEllipsis(normalized, TASK_TITLE_MAX_LENGTH);
59
+ }
60
+ function needsBodySplit(rawTitle, normalizedTitle) {
61
+ if (rawTitle.length > TASK_TITLE_AUTOSPLIT_THRESHOLD || normalizedTitle.length > TASK_TITLE_MAX_LENGTH) {
62
+ return true;
63
+ }
64
+ const nonEmptyLines = rawTitle.split(/\r?\n/).map((line) => line.trim()).filter(Boolean);
65
+ return nonEmptyLines.length > 1 && rawTitle.trim().length > TASK_TITLE_MAX_LENGTH;
66
+ }
67
+ function deriveTitleFromBody(rawBody) {
68
+ const firstLine = rawBody.split(/\r?\n/).map((line) => compactWhitespace(line)).find(Boolean) ?? rawBody;
69
+ const sentenceMatch = firstLine.match(/^(.+?[。!?.!?])(?:\s|$)/u);
70
+ const candidate = sentenceMatch?.[1] ?? firstLine;
71
+ return normalizeTaskTitle(candidate);
72
+ }
73
+ function mergeDescriptionParts(parts) {
74
+ const merged = [];
75
+ const seen = new Set();
76
+ for (const part of parts) {
77
+ const trimmed = part?.trim();
78
+ if (!trimmed || seen.has(trimmed)) {
79
+ continue;
80
+ }
81
+ merged.push(part);
82
+ seen.add(trimmed);
83
+ }
84
+ return merged.length > 0 ? merged.join('\n\n') : undefined;
85
+ }
86
+ function normalizeCreateTaskInput(input) {
87
+ const rawTitle = input.title;
88
+ const compactTitle = compactWhitespace(rawTitle);
89
+ if (compactTitle.length === 0) {
90
+ throw new ValidationError('Task title is required');
91
+ }
92
+ if (!needsBodySplit(rawTitle, compactTitle)) {
93
+ return {
94
+ title: normalizeTaskTitle(rawTitle),
95
+ description: input.description,
96
+ priority: input.priority,
97
+ };
98
+ }
99
+ return {
100
+ title: deriveTitleFromBody(rawTitle),
101
+ description: mergeDescriptionParts([rawTitle, input.description]),
102
+ priority: input.priority,
103
+ };
104
+ }
105
+ function normalizeUpdateTaskInput(current, input) {
106
+ if (input.title === undefined) {
107
+ return input;
108
+ }
109
+ const rawTitle = input.title;
110
+ const compactTitle = compactWhitespace(rawTitle);
111
+ if (compactTitle.length === 0) {
112
+ throw new ValidationError('Task title is required');
113
+ }
114
+ if (!needsBodySplit(rawTitle, compactTitle)) {
115
+ return {
116
+ ...input,
117
+ title: normalizeTaskTitle(rawTitle),
118
+ };
119
+ }
120
+ return {
121
+ ...input,
122
+ title: deriveTitleFromBody(rawTitle),
123
+ description: mergeDescriptionParts([
124
+ rawTitle,
125
+ input.description,
126
+ current.description,
127
+ ]),
128
+ };
129
+ }
130
+ export function buildTextPreview(value, maxLength = TASK_PREVIEW_MAX_LENGTH) {
131
+ const trimmed = (value ?? '').trim();
132
+ if (trimmed.length <= maxLength) {
133
+ return trimmed;
134
+ }
135
+ return truncateWithEllipsis(compactWhitespace(trimmed), maxLength);
136
+ }
137
+ function withTaskPreviews(task, options = {}) {
138
+ const titlePreview = buildTextPreview(task.title, TASK_TITLE_MAX_LENGTH);
139
+ const contentPreview = buildTextPreview(task.description);
140
+ const isTruncated = task.title !== titlePreview
141
+ || Boolean(task.description && task.description !== contentPreview);
142
+ const base = {
143
+ ...task,
144
+ title: titlePreview,
145
+ titlePreview,
146
+ contentPreview: contentPreview || undefined,
147
+ isTruncated,
148
+ };
149
+ if (options.omitDescription) {
150
+ const withoutDescription = { ...base };
151
+ delete withoutDescription.description;
152
+ return withoutDescription;
153
+ }
154
+ return base;
155
+ }
156
+ function buildTaskPrompt(task) {
157
+ const title = task.title.trim();
158
+ const description = task.description;
159
+ return description?.trim()
160
+ ? [title, description].filter(Boolean).join('\n\n')
161
+ : title;
26
162
  }
27
163
  export class TaskService {
28
164
  eventBus;
29
165
  sessionManager;
30
166
  cleanupService;
31
- constructor(eventBus, sessionManager, cleanupService) {
167
+ workspaceGitWatcher;
168
+ constructor(eventBus, sessionManager, cleanupService = undefined, workspaceGitWatcher = getWorkspaceGitWatcherService()) {
32
169
  this.eventBus = eventBus;
33
170
  this.sessionManager = sessionManager;
34
171
  this.cleanupService = cleanupService;
172
+ this.workspaceGitWatcher = workspaceGitWatcher;
35
173
  }
36
174
  /**
37
175
  * 获取项目的任务列表(支持按状态过滤和分页)
@@ -63,7 +201,18 @@ export class TaskService {
63
201
  const [data, total] = await Promise.all([
64
202
  prisma.task.findMany({
65
203
  where,
66
- include: { workspaces: true, project: true },
204
+ select: {
205
+ id: true,
206
+ projectId: true,
207
+ title: true,
208
+ status: true,
209
+ priority: true,
210
+ position: true,
211
+ createdAt: true,
212
+ updatedAt: true,
213
+ workspaces: { include: { sessions: visibleSessionSummary } },
214
+ project: true,
215
+ },
67
216
  orderBy: [{ updatedAt: 'desc' }],
68
217
  skip,
69
218
  take: limit,
@@ -78,7 +227,7 @@ export class TaskService {
78
227
  return (a.position ?? 0) - (b.position ?? 0);
79
228
  });
80
229
  return {
81
- data,
230
+ data: data.map((task) => withTaskPreviews(task, { omitDescription: true })),
82
231
  total,
83
232
  page,
84
233
  limit,
@@ -91,12 +240,58 @@ export class TaskService {
91
240
  async findById(id) {
92
241
  const task = await prisma.task.findFirst({
93
242
  where: { id, deletedAt: null },
94
- include: { workspaces: { include: { sessions: { where: { purpose: { not: SessionPurpose.COMMIT_MSG } } } } } },
243
+ select: {
244
+ id: true,
245
+ projectId: true,
246
+ title: true,
247
+ status: true,
248
+ priority: true,
249
+ position: true,
250
+ createdAt: true,
251
+ updatedAt: true,
252
+ workspaces: { include: { sessions: visibleSessionSummary } },
253
+ },
254
+ });
255
+ if (!task) {
256
+ throw new NotFoundError('Task', id);
257
+ }
258
+ return withTaskPreviews(task, { omitDescription: true });
259
+ }
260
+ async findBodyById(id) {
261
+ const task = await prisma.task.findFirst({
262
+ where: { id, deletedAt: null },
263
+ select: {
264
+ id: true,
265
+ title: true,
266
+ description: true,
267
+ },
95
268
  });
96
269
  if (!task) {
97
270
  throw new NotFoundError('Task', id);
98
271
  }
99
- return task;
272
+ const hasDescription = Boolean(task.description?.trim());
273
+ const titlePreview = buildTextPreview(task.title, TASK_TITLE_MAX_LENGTH);
274
+ const usesHistoricalTitleBody = !hasDescription
275
+ && (task.title.length > TASK_HISTORICAL_TITLE_BODY_THRESHOLD || task.title !== titlePreview);
276
+ const body = hasDescription
277
+ ? task.description
278
+ : usesHistoricalTitleBody
279
+ ? task.title
280
+ : '';
281
+ const prompt = hasDescription
282
+ ? buildTaskPrompt(task)
283
+ : usesHistoricalTitleBody
284
+ ? task.title
285
+ : task.title.trim();
286
+ return {
287
+ taskId: task.id,
288
+ title: titlePreview,
289
+ titlePreview,
290
+ body,
291
+ bodySource: hasDescription ? 'description' : usesHistoricalTitleBody ? 'historical_title' : 'none',
292
+ prompt,
293
+ isTruncated: task.title !== titlePreview,
294
+ };
100
295
  }
101
296
  /**
102
297
  * 创建任务
@@ -104,7 +299,7 @@ export class TaskService {
104
299
  * - 自动计算 position(同状态下最大 position + 1)
105
300
  */
106
301
  async create(projectId, input) {
107
- const title = normalizeTaskTitle(input.title);
302
+ const normalizedInput = normalizeCreateTaskInput(input);
108
303
  // 校验项目存在
109
304
  const project = await prisma.project.findUnique({
110
305
  where: { id: projectId },
@@ -120,9 +315,9 @@ export class TaskService {
120
315
  });
121
316
  return prisma.task.create({
122
317
  data: {
123
- title,
124
- description: input.description,
125
- priority: input.priority ?? 0,
318
+ title: normalizedInput.title,
319
+ description: normalizedInput.description,
320
+ priority: normalizedInput.priority ?? 0,
126
321
  position: (maxPosition._max.position ?? 0) + 1,
127
322
  projectId,
128
323
  },
@@ -132,10 +327,6 @@ export class TaskService {
132
327
  * 更新任务基本信息
133
328
  */
134
329
  async update(id, input) {
135
- const normalizedInput = {
136
- ...input,
137
- ...(input.title !== undefined ? { title: normalizeTaskTitle(input.title) } : {}),
138
- };
139
330
  const task = await prisma.task.findFirst({
140
331
  where: { id, deletedAt: null },
141
332
  include: { project: true },
@@ -144,6 +335,7 @@ export class TaskService {
144
335
  throw new NotFoundError('Task', id);
145
336
  }
146
337
  ensureProjectIsMutable(task.project, 'update tasks');
338
+ const normalizedInput = normalizeUpdateTaskInput(task, input);
147
339
  return prisma.task.update({
148
340
  where: { id },
149
341
  data: normalizedInput,
@@ -440,6 +632,7 @@ export class TaskService {
440
632
  where: { id: workspace.id },
441
633
  data: { status: WorkspaceStatus.ABANDONED },
442
634
  });
635
+ this.workspaceGitWatcher.unwatchWorkspace(workspace.id);
443
636
  }
444
637
  // 重置 Task 到 TODO
445
638
  const updated = await prisma.task.update({
@@ -1 +1 @@
1
- {"version":3,"file":"task.service.js","sourceRoot":"","sources":["../../src/services/task.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task.service.js","sourceRoot":"","sources":["../../src/services/task.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EACL,aAAa,EACb,eAAe,EACf,2BAA2B,GAC5B,MAAM,cAAc,CAAC;AAKtB,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAoBhE;;;GAGG;AACH,MAAM,iBAAiB,GAAqC;IAC1D,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC;IACxG,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC;IACxG,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC;IACxG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC;IACxG,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC;CACzG,CAAC;AACF,MAAM,wCAAwC,GAAG,CAAC,kBAAkB,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC3F,MAAM,sCAAsC,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,oBAAoB,CAAC,CAAC;AAC5G,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AACzC,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAClD,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,oCAAoC,GAAG,8BAA8B,CAAC;AACnF,MAAM,qBAAqB,GAAG;IAC5B,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,cAAc,CAAC,UAAU,EAAE,EAAE;IACtD,MAAM,EAAE;QACN,EAAE,EAAE,IAAI;QACR,WAAW,EAAE,IAAI;QACjB,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;QAChB,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,IAAI;KAChB;CACF,CAAC;AAEF,SAAS,iBAAiB,CAAC,KAAa;IACtC,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa,EAAE,SAAiB;IAC5D,IAAI,KAAK,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,EACvB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,EACvB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,EACvB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,EACvB,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CACxB,CAAC;IACF,MAAM,SAAS,GAAG,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC3F,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC;AACrC,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,eAAe,CAAC,wBAAwB,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,oBAAoB,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB,EAAE,eAAuB;IAC/D,IAAI,QAAQ,CAAC,MAAM,GAAG,8BAA8B,IAAI,eAAe,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC;QACvG,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzF,OAAO,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,qBAAqB,CAAC;AACpF,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAe;IAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;IACzG,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;IAClD,OAAO,kBAAkB,CAAC,SAAS,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAuC;IACpE,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,SAAS;QACX,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAsB;IACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC;IAC7B,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,eAAe,CAAC,wBAAwB,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,CAAC;QAC5C,OAAO;YACL,KAAK,EAAE,kBAAkB,CAAC,QAAQ,CAAC;YACnC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,KAAK,EAAE,mBAAmB,CAAC,QAAQ,CAAC;QACpC,WAAW,EAAE,qBAAqB,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QACjE,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAAwC,EACxC,KAAsB;IAEtB,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC;IAC7B,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,eAAe,CAAC,wBAAwB,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,CAAC;QAC5C,OAAO;YACL,GAAG,KAAK;YACR,KAAK,EAAE,kBAAkB,CAAC,QAAQ,CAAC;SACpC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,GAAG,KAAK;QACR,KAAK,EAAE,mBAAmB,CAAC,QAAQ,CAAC;QACpC,WAAW,EAAE,qBAAqB,CAAC;YACjC,QAAQ;YACR,KAAK,CAAC,WAAW;YACjB,OAAO,CAAC,WAAW;SACpB,CAAC;KACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAgC,EAAE,SAAS,GAAG,uBAAuB;IACpG,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACrC,IAAI,OAAO,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,oBAAoB,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,gBAAgB,CACvB,IAAO,EACP,UAAyC,EAAE;IAE3C,MAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;IACzE,MAAM,cAAc,GAAG,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1D,MAAM,WAAW,GACf,IAAI,CAAC,KAAK,KAAK,YAAY;WACxB,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,KAAK,cAAc,CAAC,CAAC;IAEtE,MAAM,IAAI,GAAG;QACX,GAAG,IAAI;QACP,KAAK,EAAE,YAAY;QACnB,YAAY;QACZ,cAAc,EAAE,cAAc,IAAI,SAAS;QAC3C,WAAW;KACZ,CAAC;IAEF,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QAC5B,MAAM,kBAAkB,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;QACvC,OAAQ,kBAAgD,CAAC,WAAW,CAAC;QACrE,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CAAC,IAAoD;IAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAChC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACrC,OAAO,WAAW,EAAE,IAAI,EAAE;QACxB,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;QACnD,CAAC,CAAC,KAAK,CAAC;AACZ,CAAC;AAED,MAAM,OAAO,WAAW;IAEH;IACA;IACA;IACA;IAJnB,YACmB,QAAkB,EAClB,cAA8B,EAC9B,iBAAkE,SAAS,EAC3E,sBAA4E,6BAA6B,EAAE;QAH3G,aAAQ,GAAR,QAAQ,CAAU;QAClB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,mBAAc,GAAd,cAAc,CAA6D;QAC3E,wBAAmB,GAAnB,mBAAmB,CAAwF;IAC3H,CAAC;IAEJ;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,SAAiB,EAAE,SAA0B,EAAE;QACnE,SAAS;QACT,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;YAC9C,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;SACzB,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;QAEhC,MAAM,KAAK,GAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAClD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC/B,CAAC;QAED,0FAA0F;QAC1F,oFAAoF;QACpF,MAAM,WAAW,GAA2B;YAC1C,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACzB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACpB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACpB,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;SAC1B,CAAC;QAEF,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACnB,KAAK;gBACL,MAAM,EAAE;oBACN,EAAE,EAAE,IAAI;oBACR,SAAS,EAAE,IAAI;oBACf,KAAK,EAAE,IAAI;oBACX,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,IAAI;oBACd,QAAQ,EAAE,IAAI;oBACd,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,IAAI;oBACf,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE,EAAE;oBAC5D,OAAO,EAAE,IAAI;iBACd;gBACD,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;gBAChC,IAAI;gBACJ,IAAI,EAAE,KAAK;aACZ,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC;SAC7B,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACjB,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACvC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACvC,IAAI,EAAE,KAAK,EAAE;gBAAE,OAAO,EAAE,GAAG,EAAE,CAAC;YAC9B,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3E,KAAK;YACL,IAAI;YACJ,KAAK;YACL,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;SACrC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,EAAU;QACvB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YAC9B,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE,EAAE;aAC7D;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,gBAAgB,CAAC,IAAI,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EAAU;QAC3B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YAC9B,MAAM,EAAE;gBACN,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,MAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;QACzE,MAAM,uBAAuB,GAC3B,CAAC,cAAc;eACZ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,oCAAoC,IAAI,IAAI,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC;QAC/F,MAAM,IAAI,GAAG,cAAc;YACzB,CAAC,CAAC,IAAI,CAAC,WAAY;YACnB,CAAC,CAAC,uBAAuB;gBACvB,CAAC,CAAC,IAAI,CAAC,KAAK;gBACZ,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,cAAc;YAC3B,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC;YACvB,CAAC,CAAC,uBAAuB;gBACvB,CAAC,CAAC,IAAI,CAAC,KAAK;gBACZ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAExB,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,EAAE;YACf,KAAK,EAAE,YAAY;YACnB,YAAY;YACZ,IAAI;YACJ,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,MAAM;YAClG,MAAM;YACN,WAAW,EAAE,IAAI,CAAC,KAAK,KAAK,YAAY;SACzC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,KAAsB;QACpD,MAAM,eAAe,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAExD,SAAS;QACT,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;YAC9C,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;SACzB,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAChD,CAAC;QACD,sBAAsB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAEhD,gBAAgB;QAChB,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YAC9C,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE;YAC9D,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;SACzB,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YACxB,IAAI,EAAE;gBACJ,KAAK,EAAE,eAAe,CAAC,KAAK;gBAC5B,WAAW,EAAE,eAAe,CAAC,WAAW;gBACxC,QAAQ,EAAE,eAAe,CAAC,QAAQ,IAAI,CAAC;gBACvC,QAAQ,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC;gBAC9C,SAAS;aACV;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,KAAsB;QAC7C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YAC9B,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACrD,MAAM,eAAe,GAAG,wBAAwB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAE9D,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YACxB,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE,eAAe;SACtB,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,EAAU,EAAE,MAAkB;QAC/C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YAC9B,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAE3D,MAAM,aAAa,GAAG,IAAI,CAAC,MAAoB,CAAC;QAEhD,gBAAgB;QAChB,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,aAAa;QACb,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;QAC5D,IAAI,CAAC,kBAAkB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,2BAA2B,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC/D,CAAC;QAED,wBAAwB;QACxB,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YAC9C,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE;YAC7D,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;SACzB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE;gBACJ,MAAM;gBACN,QAAQ,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC;aAC/C;SACF,CAAC,CAAC;QAEH,OAAO;QACP,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAEjD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,EAAU,EAAE,QAAgB,EAAE,MAAmB;QACpE,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YAC9B,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAEtD,yBAAyB;QACzB,IAAI,MAAM,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACrC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAoB,CAAC;YAChD,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;YAC5D,IAAI,CAAC,kBAAkB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChE,MAAM,IAAI,2BAA2B,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;SAC9C,CAAC,CAAC;QAEH,iBAAiB;QACjB,IAAI,MAAM,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACrC,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;YAChD,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;YAC5C,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,sBAAsB,CAAC,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;YAC1C,KAAK,EAAE;gBACL,EAAE;gBACF,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;aAC9B;YACD,IAAI,EAAE,EAAE,SAAS,EAAE;SACpB,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;gBAC3C,KAAK,EAAE,EAAE,EAAE,EAAE;gBACb,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;aAC3B,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBAClC,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACtC,CAAC;YACD,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YACxD,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,YAAqE,CAAC;QAC1E,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;gBAClD,KAAK,EAAE,EAAE,EAAE,EAAE;gBACb,OAAO,EAAE;oBACP,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE;wBACP,OAAO,EAAE;4BACP,WAAW,EAAE;gCACX,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,sCAAsC,EAAE,EAAE;gCACjE,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE;6BACrB;yBACF;qBACF;oBACD,UAAU,EAAE;wBACV,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;qBAC5B;iBACF;aACF,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACtC,CAAC;YACD,sBAAsB,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAE/D,MAAM,QAAQ,GAAwB;gBACpC,MAAM,EAAE,cAAc,CAAC,EAAE;gBACzB,SAAS,EAAE,cAAc,CAAC,SAAS;gBACnC,OAAO,EAAE;oBACP,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,QAAQ;oBACzC,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC,UAAU;iBAC9C;gBACD,UAAU,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;oBACxD,EAAE,EAAE,SAAS,CAAC,EAAE;oBAChB,YAAY,EAAE,SAAS,CAAC,YAAY;oBACpC,UAAU,EAAE,sBAAsB,CAAC,SAAS,CAAC;oBAC7C,aAAa,EAAE,SAAS,CAAC,aAAa;oBACtC,UAAU,EAAE,SAAS,CAAC,UAAU;oBAChC,UAAU,EAAE,SAAS,CAAC,UAAU;oBAChC,QAAQ,EAAE,SAAS,CAAC,QAAQ;yBACzB,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,CAAC;yBACzG,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;iBAC1C,CAAC,CAAC;aACJ,CAAC;YACF,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;YAC7C,MAAM,sBAAsB,GAAG,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YAE5G,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;gBACrC,MAAM,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC;oBAC7B,IAAI,EAAE;wBACJ,MAAM,EAAE,cAAc,CAAC,EAAE;wBACzB,SAAS,EAAE,cAAc,CAAC,SAAS;wBACnC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;qBAClC;iBACF,CAAC,CAAC;gBAEH,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC;wBAC9B,KAAK,EAAE;4BACL,SAAS;4BACT,MAAM,EAAE,EAAE,EAAE,EAAE,wCAAwC,EAAE;yBACzD;wBACD,IAAI,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE;qBAC9B,CAAC,CAAC;oBACH,MAAM,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC;wBAClC,KAAK,EAAE;4BACL,SAAS;4BACT,MAAM,EAAE,EAAE,EAAE,EAAE,sCAAsC,EAAE;yBACvD;wBACD,IAAI,EAAE;4BACJ,MAAM,EAAE,WAAW;4BACnB,uBAAuB,EAAE,IAAI;yBAC9B;qBACF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YACH,iBAAiB,GAAG,IAAI,CAAC;YAEzB,YAAY,GAAG;gBACb,SAAS,EAAE,cAAc,CAAC,SAAS;gBACnC,sBAAsB;aACvB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvB,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;oBAC3B,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;oBACxB,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;iBAC1B,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;oBACZ,mFAAmF;gBACrF,CAAC,CAAC,CAAC;YACL,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QAED,KAAK,MAAM,YAAY,IAAI,YAAY,CAAC,sBAAsB,EAAE,CAAC;YAC/D,sBAAsB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE;YACjC,MAAM,EAAE,EAAE;YACV,SAAS,EAAE,YAAY,CAAC,SAAS;SAClC,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;QAE/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,SAAiB;QACzC,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;YAC9C,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;SACzB,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;YACvC,EAAE,EAAE,CAAC,QAAQ,CAAC;YACd,KAAK,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE;YACrC,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE;SACrB,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG;YACZ,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,CAAC;YACP,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,CAAC;YACP,SAAS,EAAE,CAAC;SACb,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC;YACrB,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;gBACnB,KAAK,UAAU,CAAC,IAAI;oBAClB,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC;oBACnB,MAAM;gBACR,KAAK,UAAU,CAAC,WAAW;oBACzB,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC;oBACzB,MAAM;gBACR,KAAK,UAAU,CAAC,SAAS;oBACvB,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;oBACvB,MAAM;gBACR,KAAK,UAAU,CAAC,IAAI;oBAClB,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC;oBACnB,MAAM;gBACR,KAAK,UAAU,CAAC,SAAS;oBACvB,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;oBACxB,MAAM;YACV,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,KAAK,CAAC,EAAU;QACpB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YAC9B,OAAO,EAAE;gBACP,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE;oBACzC,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;iBAC5B;aACF;SACF,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAEpD,6BAA6B;QAC7B,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACxC,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,CAC9C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,CAChF,CAAC;YACF,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;gBACrC,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC7C,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,+CAA+C,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBAClF,CAAC;YACH,CAAC;YACD,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;gBAC5B,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE;gBAC3B,IAAI,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,SAAS,EAAE;aAC5C,CAAC,CAAC;YACH,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,iBAAiB;QACjB,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YACvC,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE;SAClC,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;QAE1D,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,2EAA2E;IAE3E;;OAEG;IACH,eAAe,CAAC,MAAc,EAAE,SAAiB,EAAE,MAAc;QAC/D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IACpE,CAAC;CACF"}
@@ -126,6 +126,7 @@ export declare class TeamRunService {
126
126
  cancelledWorkRequestIds: string[];
127
127
  }>;
128
128
  listRoomMessages(teamRunId: string, options?: TeamRunVisibilityOptions): Promise<RoomMessage[]>;
129
+ getRoomMessage(teamRunId: string, messageId: string, options?: TeamRunVisibilityOptions): Promise<RoomMessage>;
129
130
  listWorkRequests(teamRunId: string, options?: TeamRunVisibilityOptions): Promise<WorkRequest[]>;
130
131
  listQueuedWorkRequestsForMember(teamRunId: string, memberId: string): Promise<MemberWorkRequestQueue>;
131
132
  listAgentInvocations(teamRunId: string, options?: TeamRunVisibilityOptions): Promise<AgentInvocation[]>;
@@ -144,6 +145,8 @@ export declare class TeamRunService {
144
145
  resolveViewerMemberIdFromInvocation(teamRunId: string, invocationId: string | null | undefined): Promise<string | null>;
145
146
  private resolveQueueManagementPolicy;
146
147
  private contentPreview;
148
+ private compactContentPreview;
149
+ private serializePreviewField;
147
150
  private teamRunInclude;
148
151
  private serializeMemberPreset;
149
152
  private serializeTeamTemplate;
@@ -1 +1 @@
1
- {"version":3,"file":"team-run.service.d.ts","sourceRoot":"","sources":["../../src/services/team-run.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"team-run.service.d.ts","sourceRoot":"","sources":["../../src/services/team-run.service.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { prisma } from '../utils/index.js';
3
3
  import { appendAttachmentMarkdownContext } from './attachment-context.js';
4
4
  import { emitTeamRunInvalidated } from './team-run-events.js';
5
5
  import { ensureTaskNotDeleted } from './deleted-task-guard.js';
6
+ import { buildTextPreview, TASK_TITLE_MAX_LENGTH } from './task.service.js';
6
7
  const DEFAULT_CAPABILITIES = {
7
8
  readRoom: false,
8
9
  postRoomMessage: false,
@@ -75,12 +76,20 @@ function isUniqueConstraintError(error) {
75
76
  && error.code === 'P2002';
76
77
  }
77
78
  function buildInitialTaskRoomMessageContent(task) {
78
- const title = task.title.trim();
79
+ const title = buildTextPreview(task.title, TASK_TITLE_MAX_LENGTH);
79
80
  if (title.length === 0) {
80
81
  throw new ValidationError('Task title is required to create a TeamRun');
81
82
  }
82
- const description = task.description?.trim() ?? '';
83
- return [title, description].filter(Boolean).join('\n\n');
83
+ const descriptionPreview = buildTextPreview(task.description, 120);
84
+ return [
85
+ title,
86
+ task.description?.trim()
87
+ ? `Details preview: ${descriptionPreview}\n\nFull details are stored on the task description.`
88
+ : '',
89
+ ].filter(Boolean).join('\n\n');
90
+ }
91
+ function buildInitialTaskMentionSource(task) {
92
+ return [task.title.trim(), task.description?.trim() ?? ''].filter(Boolean).join('\n\n');
84
93
  }
85
94
  function extractMentionTokens(content) {
86
95
  const tokens = [];
@@ -415,6 +424,7 @@ export class TeamRunService {
415
424
  ensureTaskNotDeleted(task);
416
425
  projectId = task.projectId;
417
426
  const initialContent = buildInitialTaskRoomMessageContent(task);
427
+ const initialMentionSource = buildInitialTaskMentionSource(task);
418
428
  const existing = await tx.teamRun.findUnique({ where: { taskId } });
419
429
  if (existing) {
420
430
  throw toConflict(`Task already has a TeamRun: ${taskId}`);
@@ -447,7 +457,7 @@ export class TeamRunService {
447
457
  });
448
458
  members.push(member);
449
459
  }
450
- const initialMentionParse = deriveStructuredMentionsFromContent(initialContent, members);
460
+ const initialMentionParse = deriveStructuredMentionsFromContent(initialMentionSource, members);
451
461
  const message = await tx.roomMessage.create({
452
462
  data: {
453
463
  teamRunId: teamRun.id,
@@ -713,14 +723,46 @@ export class TeamRunService {
713
723
  };
714
724
  }
715
725
  async listRoomMessages(teamRunId, options = {}) {
716
- await this.assertTeamRunExists(teamRunId);
717
- const messages = await prisma.roomMessage.findMany({
718
- where: buildRoomMessageVisibilityWhere(teamRunId, options.viewerMemberId),
719
- include: { participants: true },
720
- orderBy: { createdAt: 'asc' },
721
- });
726
+ const [teamRun, messages] = await Promise.all([
727
+ prisma.teamRun.findUnique({
728
+ where: { id: teamRunId },
729
+ select: { id: true },
730
+ }),
731
+ prisma.roomMessage.findMany({
732
+ where: buildRoomMessageVisibilityWhere(teamRunId, options.viewerMemberId),
733
+ include: { participants: true },
734
+ orderBy: { createdAt: 'asc' },
735
+ }),
736
+ ]);
737
+ if (!teamRun) {
738
+ throw new NotFoundError('TeamRun', teamRunId);
739
+ }
722
740
  return messages.map((message) => this.serializeRoomMessage(message));
723
741
  }
742
+ async getRoomMessage(teamRunId, messageId, options = {}) {
743
+ const [teamRun, message] = await Promise.all([
744
+ prisma.teamRun.findUnique({
745
+ where: { id: teamRunId },
746
+ select: { id: true },
747
+ }),
748
+ prisma.roomMessage.findFirst({
749
+ where: {
750
+ id: messageId,
751
+ ...buildRoomMessageVisibilityWhere(teamRunId, options.viewerMemberId),
752
+ },
753
+ include: { participants: true },
754
+ }),
755
+ ]);
756
+ if (!teamRun) {
757
+ throw new NotFoundError('TeamRun', teamRunId);
758
+ }
759
+ if (!message) {
760
+ throw new NotFoundError('RoomMessage', messageId);
761
+ }
762
+ return this.serializeRoomMessage(message, {
763
+ includeFullContent: true,
764
+ });
765
+ }
724
766
  async listWorkRequests(teamRunId, options = {}) {
725
767
  await this.assertTeamRunExists(teamRunId);
726
768
  const workRequests = await prisma.workRequest.findMany({
@@ -818,7 +860,8 @@ export class TeamRunService {
818
860
  const workRequestStatus = teamRun.mode === 'CONFIRM'
819
861
  ? 'PENDING_APPROVAL'
820
862
  : 'QUEUED';
821
- const workRequestInstruction = await appendAttachmentMarkdownContext(input.content, input.attachmentIds);
863
+ await appendAttachmentMarkdownContext(input.content, input.attachmentIds);
864
+ const workRequestInstruction = this.contentPreview(input.content);
822
865
  let messageId = '';
823
866
  await prisma.$transaction(async (tx) => {
824
867
  const liveTeamRun = await tx.teamRun.findFirst({
@@ -926,7 +969,7 @@ export class TeamRunService {
926
969
  const workRequestStatus = teamRun.mode === 'CONFIRM'
927
970
  ? 'PENDING_APPROVAL'
928
971
  : 'QUEUED';
929
- const workRequestInstruction = await appendAttachmentMarkdownContext(input.content, input.attachmentIds);
972
+ const workRequestInstruction = this.contentPreview(input.content);
930
973
  let messageId = '';
931
974
  await prisma.$transaction(async (tx) => {
932
975
  const members = await tx.teamMember.findMany({ where: activeTeamMembersWhere(teamRunId) });
@@ -1195,8 +1238,18 @@ export class TeamRunService {
1195
1238
  return value === 'team_pending' ? 'team_pending' : DEFAULT_QUEUE_MANAGEMENT_POLICY;
1196
1239
  }
1197
1240
  contentPreview(content) {
1198
- const compact = content.replace(/\s+/g, ' ').trim();
1199
- return compact.length <= 240 ? compact : `${compact.slice(0, 237)}...`;
1241
+ return buildTextPreview(content);
1242
+ }
1243
+ compactContentPreview(content) {
1244
+ return buildTextPreview(content.replace(/\s+/g, ' '));
1245
+ }
1246
+ serializePreviewField(content) {
1247
+ const preview = this.contentPreview(content);
1248
+ return {
1249
+ value: preview,
1250
+ preview,
1251
+ isTruncated: content !== preview,
1252
+ };
1200
1253
  }
1201
1254
  teamRunInclude() {
1202
1255
  return {
@@ -1311,14 +1364,18 @@ export class TeamRunService {
1311
1364
  updatedAt: toIso(member.updatedAt),
1312
1365
  };
1313
1366
  }
1314
- serializeRoomMessage(message) {
1367
+ serializeRoomMessage(message, options = {}) {
1315
1368
  const participants = (message.participants ?? []).map((participant) => this.serializeRoomMessageParticipant(participant));
1316
1369
  const recipientMemberIds = participants
1317
1370
  .filter((participant) => participant.role === 'recipient')
1318
1371
  .map((participant) => participant.memberId);
1319
1372
  const participantMemberIds = participants.map((participant) => participant.memberId);
1373
+ const serializedContent = this.serializePreviewField(message.content);
1320
1374
  return {
1321
1375
  ...message,
1376
+ content: options.includeFullContent ? message.content : serializedContent.value,
1377
+ contentPreview: serializedContent.preview,
1378
+ isTruncated: serializedContent.isTruncated,
1322
1379
  senderType: message.senderType,
1323
1380
  kind: message.kind,
1324
1381
  visibility: message.visibility,
@@ -1340,8 +1397,12 @@ export class TeamRunService {
1340
1397
  };
1341
1398
  }
1342
1399
  serializeWorkRequest(workRequest) {
1400
+ const serializedInstruction = this.serializePreviewField(workRequest.instruction);
1343
1401
  return {
1344
1402
  ...workRequest,
1403
+ instruction: serializedInstruction.value,
1404
+ instructionPreview: serializedInstruction.preview,
1405
+ isTruncated: serializedInstruction.isTruncated,
1345
1406
  requesterType: workRequest.requesterType,
1346
1407
  ifBusy: workRequest.ifBusy,
1347
1408
  status: workRequest.status,
@@ -1359,7 +1420,7 @@ export class TeamRunService {
1359
1420
  senderId: triggerMessage.senderId,
1360
1421
  senderInvocationId: triggerMessage.senderInvocationId,
1361
1422
  kind: triggerMessage.kind,
1362
- contentPreview: this.contentPreview(triggerMessage.content),
1423
+ contentPreview: this.compactContentPreview(triggerMessage.content),
1363
1424
  createdAt: toIso(triggerMessage.createdAt),
1364
1425
  }
1365
1426
  : null,