@nextop-os/workspace-issue-manager 0.0.27 → 0.0.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/workspace-dock-task.png +0 -0
- package/dist/{chunk-LJQG24Y2.js → chunk-DRWYHOZ2.js} +159 -25
- package/dist/chunk-DRWYHOZ2.js.map +1 -0
- package/dist/chunk-N6NGQ7DZ.js +14 -0
- package/dist/chunk-N6NGQ7DZ.js.map +1 -0
- package/dist/{chunk-JGIOWEUE.js → chunk-WT6PIL4Q.js} +108 -48
- package/dist/chunk-WT6PIL4Q.js.map +1 -0
- package/dist/{chunk-MCVRP7RR.js → chunk-YN5NYKAA.js} +67 -20
- package/dist/chunk-YN5NYKAA.js.map +1 -0
- package/dist/{chunk-5V4DIEWZ.js → chunk-YTOMO5IO.js} +1932 -1947
- package/dist/chunk-YTOMO5IO.js.map +1 -0
- package/dist/contracts/index.d.ts +111 -67
- package/dist/core/index.d.ts +14 -6
- package/dist/core/index.js +4 -2
- package/dist/{feature-2zhsUF_g.d.ts → feature-RwN37-fu.d.ts} +9 -1
- package/dist/i18n/index.js +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.js +5 -3
- package/dist/{issueManagerControllerService.interface-BtvnnFla.d.ts → issueManagerControllerService.interface-BuGBkqN3.d.ts} +3 -2
- package/dist/services/index.d.ts +4 -3
- package/dist/services/index.js +3 -3
- package/dist/ui/index.d.ts +6 -3
- package/dist/ui/index.js +4 -4
- package/dist/workbench/constants.d.ts +6 -0
- package/dist/workbench/constants.js +9 -0
- package/dist/workbench/constants.js.map +1 -0
- package/dist/workbench/index.d.ts +5 -4
- package/dist/workbench/index.js +16 -12
- package/dist/workbench/index.js.map +1 -1
- package/openapi/issue-manager.v1.yaml +366 -2
- package/package.json +11 -6
- package/dist/chunk-5V4DIEWZ.js.map +0 -1
- package/dist/chunk-JGIOWEUE.js.map +0 -1
- package/dist/chunk-LJQG24Y2.js.map +0 -1
- package/dist/chunk-MCVRP7RR.js.map +0 -1
|
@@ -19,6 +19,7 @@ var issueManagerEn = {
|
|
|
19
19
|
add: "Add",
|
|
20
20
|
addReferences: "Add references",
|
|
21
21
|
addSubtask: "Add sub-issue",
|
|
22
|
+
askAgentToBreakdown: "Break down with agent",
|
|
22
23
|
askAgentToRun: "Ask agent to run",
|
|
23
24
|
cancel: "Cancel",
|
|
24
25
|
clearSearch: "Clear search",
|
|
@@ -26,15 +27,18 @@ var issueManagerEn = {
|
|
|
26
27
|
copyShareLink: "Copy share link",
|
|
27
28
|
createIssue: "New issue",
|
|
28
29
|
createTask: "Create issue",
|
|
30
|
+
createTopic: "New topic",
|
|
29
31
|
delete: "Delete",
|
|
30
32
|
deleteIssue: "Delete issue",
|
|
31
33
|
deleteTask: "Delete issue",
|
|
32
34
|
edit: "Edit",
|
|
33
35
|
editIssue: "Edit issue",
|
|
34
36
|
editTask: "Edit issue",
|
|
37
|
+
editTopic: "Edit topic",
|
|
35
38
|
expandIssueList: "Expand issue list",
|
|
36
39
|
inviteCollaborator: "Invite collaborator",
|
|
37
40
|
insertReferences: "Insert references",
|
|
41
|
+
linkExistingExecutionDirectory: "Use existing project",
|
|
38
42
|
moreActions: "More actions",
|
|
39
43
|
openReference: "Open",
|
|
40
44
|
refresh: "Refresh",
|
|
@@ -44,6 +48,10 @@ var issueManagerEn = {
|
|
|
44
48
|
saveIssue: "Save issue",
|
|
45
49
|
saveSubtask: "Save sub-issue",
|
|
46
50
|
saveTask: "Save issue",
|
|
51
|
+
selectExecutionDirectory: "Select execution directory",
|
|
52
|
+
pinTopic: "Pin",
|
|
53
|
+
saveTopic: "Save topic",
|
|
54
|
+
unpinTopic: "Unpin",
|
|
47
55
|
uploadFiles: "Upload files",
|
|
48
56
|
uploadFolder: "Upload folder"
|
|
49
57
|
},
|
|
@@ -57,21 +65,26 @@ var issueManagerEn = {
|
|
|
57
65
|
},
|
|
58
66
|
confirmations: {
|
|
59
67
|
deleteIssue: "Delete this issue?",
|
|
60
|
-
deleteTask: "Delete this issue?"
|
|
68
|
+
deleteTask: "Delete this issue?",
|
|
69
|
+
deleteTopic: "Delete this topic?"
|
|
61
70
|
},
|
|
62
71
|
dockLabel: "Issues",
|
|
63
|
-
emptyState: "Create an issue, add the goal and references, then
|
|
72
|
+
emptyState: "Create an issue, add the goal and references, then let Agent run",
|
|
64
73
|
labels: {
|
|
65
74
|
allStatus: "All",
|
|
66
75
|
content: "Content",
|
|
67
76
|
contextReferences: "Context references",
|
|
77
|
+
createTopicDialogTitle: "New topic",
|
|
68
78
|
createdAt: "Created",
|
|
69
79
|
creator: "Creator",
|
|
80
|
+
customExecutionDirectory: "Custom directory",
|
|
70
81
|
description: "Description",
|
|
71
82
|
executionOutputs: "Execution outputs",
|
|
72
83
|
issueDetails: "Issue details",
|
|
73
84
|
issueList: "Issues",
|
|
74
85
|
latestRunStatus: "Latest execution status",
|
|
86
|
+
loadingExecutionDirectories: "Loading directories...",
|
|
87
|
+
noProject: "No project",
|
|
75
88
|
outputs: "Outputs",
|
|
76
89
|
priority: "Priority",
|
|
77
90
|
provider: "Provider",
|
|
@@ -83,40 +96,50 @@ var issueManagerEn = {
|
|
|
83
96
|
scrollStatusTabsRight: "Scroll status tabs right",
|
|
84
97
|
status: "Status",
|
|
85
98
|
subtasks: "Sub-issues",
|
|
99
|
+
topic: "Topic",
|
|
100
|
+
topicDefault: "Default",
|
|
101
|
+
topicSummary: "Topic summary",
|
|
102
|
+
topicTitle: "Topic title",
|
|
103
|
+
editTopicDialogTitle: "Edit topic",
|
|
86
104
|
title: "Title",
|
|
87
105
|
updatedAt: "Updated",
|
|
88
106
|
taskCount: "{{count}} sub-issues",
|
|
89
107
|
taskDetails: "Issue details",
|
|
90
|
-
taskList: "Issues"
|
|
108
|
+
taskList: "Issues",
|
|
109
|
+
temporaryExecutionDirectory: "Temporary directory"
|
|
91
110
|
},
|
|
92
111
|
messages: {
|
|
93
112
|
clipboardUnavailable: "Clipboard is unavailable.",
|
|
113
|
+
breakdownOpenFailed: "Couldn't open the agent task breakdown.",
|
|
114
|
+
breakdownUnavailable: "Agent task breakdown is unavailable.",
|
|
94
115
|
copyShareLinkFailed: "Couldn't copy the share link.",
|
|
95
116
|
copiedShareLink: "Share link copied.",
|
|
96
117
|
issueDeleteFailed: "Couldn't delete the issue.",
|
|
97
118
|
issueRefreshFailed: "Couldn't refresh issues.",
|
|
98
119
|
issueSaveFailed: "Couldn't save the issue.",
|
|
120
|
+
executionDirectorySelectFailed: "Couldn't select the execution directory.",
|
|
99
121
|
issueDeleted: "Issue deleted.",
|
|
100
122
|
issueSaved: "Issue saved.",
|
|
101
|
-
issueContentEmpty: "No issue description yet
|
|
102
|
-
noExecutionOutputs: "No execution outputs yet
|
|
103
|
-
noExecutionStatus: "No execution records yet
|
|
104
|
-
noIssueReferences: "No issue references yet
|
|
105
|
-
noIssuesForFilterBody: "Try another filter, or create a new issue to get things started
|
|
106
|
-
noIssuesForFilterTitle: "No issues match the current filter
|
|
107
|
-
noIssues: "No issues yet
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
123
|
+
issueContentEmpty: "No issue description yet",
|
|
124
|
+
noExecutionOutputs: "No execution outputs yet",
|
|
125
|
+
noExecutionStatus: "No execution records yet",
|
|
126
|
+
noIssueReferences: "No issue references yet",
|
|
127
|
+
noIssuesForFilterBody: "Try another filter, or create a new issue to get things started",
|
|
128
|
+
noIssuesForFilterTitle: "No issues match the current filter",
|
|
129
|
+
noIssues: "No issues yet",
|
|
130
|
+
noAgentProviders: "No available agent providers.",
|
|
131
|
+
noOutputs: "No outputs yet",
|
|
132
|
+
noRecentRuns: "No runs yet",
|
|
133
|
+
taskContentEmpty: "No issue description yet",
|
|
134
|
+
noTaskReferences: "No issue references yet",
|
|
135
|
+
noTasksForIssueBody: "Create the first sub-issue for this issue and let an agent or yourself execute it",
|
|
136
|
+
noSubtasksForIssue: "You can continue breaking down this item by adding sub-issues",
|
|
137
|
+
noTasks: "No issues yet",
|
|
115
138
|
refreshingIssues: "Refreshing issues...",
|
|
116
139
|
titleRequired: "Enter a title before saving.",
|
|
117
140
|
runExitCode: "Codex exited with code {{code}}.",
|
|
118
141
|
runCompleted: "Run completed.",
|
|
119
|
-
runFailed: "Run failed
|
|
142
|
+
runFailed: "Run failed",
|
|
120
143
|
runStarted: "Run started.",
|
|
121
144
|
runStatusMissing: "Terminal exited before the issue run produced a status marker.",
|
|
122
145
|
runTimedOut: "Issue run timed out while waiting for Codex output.",
|
|
@@ -125,6 +148,13 @@ var issueManagerEn = {
|
|
|
125
148
|
taskSaveFailed: "Couldn't save the issue.",
|
|
126
149
|
taskDeleted: "Issue deleted.",
|
|
127
150
|
taskSaved: "Issue saved.",
|
|
151
|
+
topicCreateFailed: "Couldn't create the topic.",
|
|
152
|
+
topicDeleteDefaultForbidden: "The default topic can't be deleted.",
|
|
153
|
+
topicDeleteFailed: "Couldn't delete the topic.",
|
|
154
|
+
topicDeleteNotEmpty: "Move or delete the issues in this topic before deleting it.",
|
|
155
|
+
topicDeleteNotFound: "This topic no longer exists.",
|
|
156
|
+
topicListEmpty: "No issue topics are available.",
|
|
157
|
+
topicUpdateFailed: "Couldn't update the topic.",
|
|
128
158
|
uploadTypeConflict: "Upload target contains conflicting entry types.",
|
|
129
159
|
workspacePathUnavailable: "Workspace path is unavailable."
|
|
130
160
|
},
|
|
@@ -168,7 +198,7 @@ var issueManagerEn = {
|
|
|
168
198
|
completed: "Completed",
|
|
169
199
|
failed: "Failed",
|
|
170
200
|
notStarted: "To run",
|
|
171
|
-
pendingAcceptance: "Pending
|
|
201
|
+
pendingAcceptance: "Pending",
|
|
172
202
|
running: "Running",
|
|
173
203
|
unknown: "Unknown"
|
|
174
204
|
},
|
|
@@ -179,6 +209,7 @@ var issueManagerZhCN = {
|
|
|
179
209
|
add: "\u6DFB\u52A0",
|
|
180
210
|
addReferences: "\u6DFB\u52A0\u5F15\u7528",
|
|
181
211
|
addSubtask: "\u6DFB\u52A0\u5B50\u4E8B\u9879",
|
|
212
|
+
askAgentToBreakdown: "\u8BA9 Agent \u62C6\u89E3\u4EFB\u52A1",
|
|
182
213
|
askAgentToRun: "\u8BA9 Agent \u6267\u884C",
|
|
183
214
|
cancel: "\u53D6\u6D88",
|
|
184
215
|
clearSearch: "\u6E05\u7A7A\u641C\u7D22",
|
|
@@ -186,15 +217,18 @@ var issueManagerZhCN = {
|
|
|
186
217
|
copyShareLink: "\u590D\u5236\u5206\u4EAB\u94FE\u63A5",
|
|
187
218
|
createIssue: "\u65B0\u5EFA\u4E8B\u9879",
|
|
188
219
|
createTask: "\u65B0\u5EFA\u4E8B\u9879",
|
|
220
|
+
createTopic: "\u65B0\u5EFA\u4E3B\u9898",
|
|
189
221
|
delete: "\u5220\u9664",
|
|
190
222
|
deleteIssue: "\u5220\u9664\u4E8B\u9879",
|
|
191
223
|
deleteTask: "\u5220\u9664\u4E8B\u9879",
|
|
192
224
|
edit: "\u7F16\u8F91",
|
|
193
225
|
editIssue: "\u7F16\u8F91\u4E8B\u9879",
|
|
194
226
|
editTask: "\u7F16\u8F91\u4E8B\u9879",
|
|
227
|
+
editTopic: "\u7F16\u8F91\u4E3B\u9898",
|
|
195
228
|
expandIssueList: "\u5C55\u5F00\u4E8B\u9879\u5217\u8868",
|
|
196
229
|
inviteCollaborator: "\u9080\u8BF7\u534F\u4F5C\u8005",
|
|
197
230
|
insertReferences: "\u63D2\u5165\u5F15\u7528",
|
|
231
|
+
linkExistingExecutionDirectory: "\u4F7F\u7528\u5DF2\u6709\u9879\u76EE",
|
|
198
232
|
moreActions: "\u66F4\u591A\u64CD\u4F5C",
|
|
199
233
|
openReference: "\u6253\u5F00",
|
|
200
234
|
refresh: "\u5237\u65B0",
|
|
@@ -204,11 +238,15 @@ var issueManagerZhCN = {
|
|
|
204
238
|
saveIssue: "\u4FDD\u5B58\u4E8B\u9879",
|
|
205
239
|
saveSubtask: "\u4FDD\u5B58\u5B50\u4E8B\u9879",
|
|
206
240
|
saveTask: "\u4FDD\u5B58\u4E8B\u9879",
|
|
241
|
+
selectExecutionDirectory: "\u9009\u62E9\u6267\u884C\u76EE\u5F55",
|
|
242
|
+
pinTopic: "\u7F6E\u9876",
|
|
243
|
+
saveTopic: "\u4FDD\u5B58\u4E3B\u9898",
|
|
244
|
+
unpinTopic: "\u53D6\u6D88\u7F6E\u9876",
|
|
207
245
|
uploadFiles: "\u4E0A\u4F20\u6587\u4EF6",
|
|
208
246
|
uploadFolder: "\u4E0A\u4F20\u6587\u4EF6\u5939"
|
|
209
247
|
},
|
|
210
248
|
composer: {
|
|
211
|
-
issueContentPlaceholder: "\u8865\u5145\u8FD9\u4E2A\u4E8B\u9879\u7684\u80CC\u666F\u3001\u76EE\u6807\u6216\u4E0A\u4E0B\u6587
|
|
249
|
+
issueContentPlaceholder: "\u8865\u5145\u8FD9\u4E2A\u4E8B\u9879\u7684\u80CC\u666F\u3001\u76EE\u6807\u6216\u4E0A\u4E0B\u6587",
|
|
212
250
|
issueTitlePlaceholder: "\u4E8B\u9879\u6807\u9898",
|
|
213
251
|
subtaskContentPlaceholder: "\u8865\u5145\u5B50\u4E8B\u9879\u76EE\u6807\u3001\u6267\u884C\u65B9\u5F0F\u548C\u9A8C\u6536\u6807\u51C6",
|
|
214
252
|
subtaskTitlePlaceholder: "\u8BF7\u8F93\u5165\u5B50\u4E8B\u9879\u6807\u9898",
|
|
@@ -217,21 +255,26 @@ var issueManagerZhCN = {
|
|
|
217
255
|
},
|
|
218
256
|
confirmations: {
|
|
219
257
|
deleteIssue: "\u786E\u5B9A\u5220\u9664\u8FD9\u4E2A\u4E8B\u9879\u5417\uFF1F",
|
|
220
|
-
deleteTask: "\u786E\u5B9A\u5220\u9664\u8FD9\u4E2A\u4E8B\u9879\u5417\uFF1F"
|
|
258
|
+
deleteTask: "\u786E\u5B9A\u5220\u9664\u8FD9\u4E2A\u4E8B\u9879\u5417\uFF1F",
|
|
259
|
+
deleteTopic: "\u786E\u5B9A\u5220\u9664\u8FD9\u4E2A\u4E3B\u9898\u5417\uFF1F"
|
|
221
260
|
},
|
|
222
261
|
dockLabel: "\u4E8B\u9879",
|
|
223
|
-
emptyState: "\u65B0\u5EFA\u4E8B\u9879\uFF0C\u8865\u5145\u9700\u6C42\u63CF\u8FF0\u548C\u76F8\u5173\u6587\u4EF6\uFF0C\u5373\u53EF\
|
|
262
|
+
emptyState: "\u65B0\u5EFA\u4E8B\u9879\uFF0C\u8865\u5145\u9700\u6C42\u63CF\u8FF0\u548C\u76F8\u5173\u6587\u4EF6\uFF0C\u5373\u53EF\u8BA9 Agent \u6267\u884C",
|
|
224
263
|
labels: {
|
|
225
264
|
allStatus: "\u5168\u90E8",
|
|
226
265
|
content: "\u5185\u5BB9",
|
|
227
266
|
contextReferences: "\u4E0A\u4E0B\u6587\u5F15\u7528",
|
|
267
|
+
createTopicDialogTitle: "\u65B0\u5EFA\u4E3B\u9898",
|
|
228
268
|
createdAt: "\u521B\u5EFA\u65F6\u95F4",
|
|
229
269
|
creator: "\u521B\u5EFA\u8005",
|
|
270
|
+
customExecutionDirectory: "\u81EA\u5B9A\u4E49\u76EE\u5F55",
|
|
230
271
|
description: "\u63CF\u8FF0",
|
|
231
272
|
executionOutputs: "\u6267\u884C\u4EA7\u7269",
|
|
232
273
|
issueDetails: "\u4E8B\u9879\u8BE6\u60C5",
|
|
233
274
|
issueList: "\u4E8B\u9879",
|
|
234
275
|
latestRunStatus: "\u6700\u65B0\u6267\u884C\u72B6\u6001",
|
|
276
|
+
loadingExecutionDirectories: "\u6B63\u5728\u52A0\u8F7D\u76EE\u5F55...",
|
|
277
|
+
noProject: "\u4E0D\u4F7F\u7528\u9879\u76EE",
|
|
235
278
|
outputs: "\u8F93\u51FA\u4EA7\u7269",
|
|
236
279
|
priority: "\u4F18\u5148\u7EA7",
|
|
237
280
|
provider: "Provider",
|
|
@@ -243,40 +286,50 @@ var issueManagerZhCN = {
|
|
|
243
286
|
scrollStatusTabsRight: "\u5411\u53F3\u6EDA\u52A8\u72B6\u6001\u6807\u7B7E",
|
|
244
287
|
status: "\u72B6\u6001",
|
|
245
288
|
subtasks: "\u5B50\u4E8B\u9879",
|
|
289
|
+
topic: "\u4E3B\u9898",
|
|
290
|
+
topicDefault: "\u9ED8\u8BA4",
|
|
291
|
+
topicSummary: "\u4E3B\u9898\u6982\u8981",
|
|
292
|
+
topicTitle: "\u4E3B\u9898\u6807\u9898",
|
|
293
|
+
editTopicDialogTitle: "\u7F16\u8F91\u4E3B\u9898",
|
|
246
294
|
title: "\u6807\u9898",
|
|
247
295
|
updatedAt: "\u66F4\u65B0\u65F6\u95F4",
|
|
248
296
|
taskCount: "{{count}} \u4E2A\u5B50\u4E8B\u9879",
|
|
249
297
|
taskDetails: "\u4E8B\u9879\u8BE6\u60C5",
|
|
250
|
-
taskList: "\u4E8B\u9879"
|
|
298
|
+
taskList: "\u4E8B\u9879",
|
|
299
|
+
temporaryExecutionDirectory: "\u4E34\u65F6\u76EE\u5F55"
|
|
251
300
|
},
|
|
252
301
|
messages: {
|
|
253
302
|
clipboardUnavailable: "\u5F53\u524D\u73AF\u5883\u65E0\u6CD5\u8BBF\u95EE\u526A\u8D34\u677F\u3002",
|
|
303
|
+
breakdownOpenFailed: "\u6253\u5F00 Agent \u4EFB\u52A1\u62C6\u89E3\u5931\u8D25\u3002",
|
|
304
|
+
breakdownUnavailable: "\u5F53\u524D\u73AF\u5883\u6682\u4E0D\u652F\u6301 Agent \u4EFB\u52A1\u62C6\u89E3\u3002",
|
|
254
305
|
copyShareLinkFailed: "\u590D\u5236\u5206\u4EAB\u94FE\u63A5\u5931\u8D25\u3002",
|
|
255
306
|
copiedShareLink: "\u5DF2\u590D\u5236\u5206\u4EAB\u94FE\u63A5\u3002",
|
|
256
307
|
issueDeleteFailed: "\u5220\u9664\u4E8B\u9879\u5931\u8D25\u3002",
|
|
257
308
|
issueRefreshFailed: "\u5237\u65B0\u4E8B\u9879\u5217\u8868\u5931\u8D25\u3002",
|
|
258
309
|
issueSaveFailed: "\u4FDD\u5B58\u4E8B\u9879\u5931\u8D25\u3002",
|
|
310
|
+
executionDirectorySelectFailed: "\u9009\u62E9\u6267\u884C\u76EE\u5F55\u5931\u8D25\u3002",
|
|
259
311
|
issueDeleted: "\u4E8B\u9879\u5DF2\u5220\u9664\u3002",
|
|
260
312
|
issueSaved: "\u4E8B\u9879\u5DF2\u4FDD\u5B58\u3002",
|
|
261
|
-
issueContentEmpty: "\u8FD9\u4E2A\u4E8B\u9879\u8FD8\u6CA1\u6709\u63CF\u8FF0
|
|
313
|
+
issueContentEmpty: "\u8FD9\u4E2A\u4E8B\u9879\u8FD8\u6CA1\u6709\u63CF\u8FF0",
|
|
262
314
|
noExecutionOutputs: "\u6682\u65E0\u6267\u884C\u4EA7\u7269",
|
|
263
315
|
noExecutionStatus: "\u6682\u65E0\u6267\u884C\u8BB0\u5F55",
|
|
264
|
-
noIssueReferences: "\u8FD9\u4E2A\u4E8B\u9879\u8FD8\u6CA1\u6709\u5F15\u7528
|
|
265
|
-
noIssuesForFilterBody: "\u8BD5\u8BD5\u5207\u6362\u7B5B\u9009\u6761\u4EF6\uFF0C\u6216\u8005\u65B0\u5EFA\u4E00\u4E2A\u4E8B\u9879
|
|
266
|
-
noIssuesForFilterTitle: "\u5F53\u524D\u7B5B\u9009\u6761\u4EF6\u4E0B\u6682\u65E0\u4E8B\u9879
|
|
267
|
-
noIssues: "\u8FD8\u6CA1\u6709\u4E8B\u9879
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
316
|
+
noIssueReferences: "\u8FD9\u4E2A\u4E8B\u9879\u8FD8\u6CA1\u6709\u5F15\u7528",
|
|
317
|
+
noIssuesForFilterBody: "\u8BD5\u8BD5\u5207\u6362\u7B5B\u9009\u6761\u4EF6\uFF0C\u6216\u8005\u65B0\u5EFA\u4E00\u4E2A\u4E8B\u9879",
|
|
318
|
+
noIssuesForFilterTitle: "\u5F53\u524D\u7B5B\u9009\u6761\u4EF6\u4E0B\u6682\u65E0\u4E8B\u9879",
|
|
319
|
+
noIssues: "\u8FD8\u6CA1\u6709\u4E8B\u9879",
|
|
320
|
+
noAgentProviders: "\u6682\u65E0\u53EF\u7528\u7684 Agent Provider\u3002",
|
|
321
|
+
noOutputs: "\u8FD8\u6CA1\u6709\u8F93\u51FA\u4EA7\u7269",
|
|
322
|
+
noRecentRuns: "\u8FD8\u6CA1\u6709\u8FD0\u884C\u8BB0\u5F55",
|
|
323
|
+
taskContentEmpty: "\u8FD9\u4E2A\u4E8B\u9879\u8FD8\u6CA1\u6709\u63CF\u8FF0",
|
|
324
|
+
noTaskReferences: "\u8FD9\u4E2A\u4E8B\u9879\u8FD8\u6CA1\u6709\u5F15\u7528",
|
|
325
|
+
noTasksForIssueBody: "\u4E3A\u8FD9\u4E2A\u4E8B\u9879\u521B\u5EFA\u7B2C\u4E00\u4E2A\u5B50\u4E8B\u9879\uFF0C\u7136\u540E\u4EA4\u7ED9 Agent \u6216\u4F60\u81EA\u5DF1\u6267\u884C",
|
|
273
326
|
noSubtasksForIssue: "\u4F60\u53EF\u4EE5\u56F4\u7ED5\u5F53\u524D\u4E8B\u9879\u7EE7\u7EED\u6DFB\u52A0\u5B50\u4E8B\u9879",
|
|
274
|
-
noTasks: "\u8FD8\u6CA1\u6709\u4E8B\u9879
|
|
327
|
+
noTasks: "\u8FD8\u6CA1\u6709\u4E8B\u9879",
|
|
275
328
|
refreshingIssues: "\u6B63\u5728\u5237\u65B0\u4E8B\u9879\u5217\u8868...",
|
|
276
329
|
titleRequired: "\u8BF7\u5148\u586B\u5199\u6807\u9898\u540E\u518D\u4FDD\u5B58\u3002",
|
|
277
330
|
runExitCode: "Codex \u4EE5\u9000\u51FA\u7801 {{code}} \u7ED3\u675F\u3002",
|
|
278
331
|
runCompleted: "\u8FD0\u884C\u5DF2\u5B8C\u6210\u3002",
|
|
279
|
-
runFailed: "\u8FD0\u884C\u5931\u8D25
|
|
332
|
+
runFailed: "\u8FD0\u884C\u5931\u8D25",
|
|
280
333
|
runStarted: "\u8FD0\u884C\u5DF2\u5F00\u59CB\u3002",
|
|
281
334
|
runStatusMissing: "\u7EC8\u7AEF\u5728\u5199\u5165\u8FD0\u884C\u72B6\u6001\u524D\u5C31\u9000\u51FA\u4E86\u3002",
|
|
282
335
|
runTimedOut: "\u7B49\u5F85 Codex \u8F93\u51FA\u8D85\u65F6\u3002",
|
|
@@ -285,6 +338,13 @@ var issueManagerZhCN = {
|
|
|
285
338
|
taskSaveFailed: "\u4FDD\u5B58\u4E8B\u9879\u5931\u8D25\u3002",
|
|
286
339
|
taskDeleted: "\u4E8B\u9879\u5DF2\u5220\u9664\u3002",
|
|
287
340
|
taskSaved: "\u4E8B\u9879\u5DF2\u4FDD\u5B58\u3002",
|
|
341
|
+
topicCreateFailed: "\u65B0\u5EFA\u4E3B\u9898\u5931\u8D25\u3002",
|
|
342
|
+
topicDeleteDefaultForbidden: "\u9ED8\u8BA4\u4E3B\u9898\u4E0D\u80FD\u5220\u9664\u3002",
|
|
343
|
+
topicDeleteFailed: "\u5220\u9664\u4E3B\u9898\u5931\u8D25\u3002",
|
|
344
|
+
topicDeleteNotEmpty: "\u8FD9\u4E2A\u4E3B\u9898\u4E0B\u8FD8\u6709\u4E8B\u9879\uFF0C\u4E0D\u80FD\u5220\u9664\u3002",
|
|
345
|
+
topicDeleteNotFound: "\u8FD9\u4E2A\u4E3B\u9898\u5DF2\u4E0D\u5B58\u5728\u3002",
|
|
346
|
+
topicListEmpty: "\u6CA1\u6709\u53EF\u7528\u7684\u4E3B\u9898\u3002",
|
|
347
|
+
topicUpdateFailed: "\u66F4\u65B0\u4E3B\u9898\u5931\u8D25\u3002",
|
|
288
348
|
uploadTypeConflict: "\u4E0A\u4F20\u76EE\u6807\u4E2D\u5B58\u5728\u7C7B\u578B\u51B2\u7A81\u7684\u540C\u540D\u6761\u76EE\u3002",
|
|
289
349
|
workspacePathUnavailable: "\u5F53\u524D\u5DE5\u4F5C\u533A\u8DEF\u5F84\u4E0D\u53EF\u7528\u3002"
|
|
290
350
|
},
|
|
@@ -296,18 +356,18 @@ var issueManagerZhCN = {
|
|
|
296
356
|
referencePicker: {
|
|
297
357
|
browse: "\u6D4F\u89C8",
|
|
298
358
|
confirm: "\u4F7F\u7528\u5DF2\u9009\u5F15\u7528",
|
|
299
|
-
emptyDirectory: "\u5F53\u524D\u76EE\u5F55\u4E3A\u7A7A
|
|
300
|
-
emptySearch: "\u6CA1\u6709\u5339\u914D\u7684\u6587\u4EF6\u6216\u6587\u4EF6\u5939
|
|
301
|
-
loading: "\u6B63\u5728\u52A0\u8F7D
|
|
302
|
-
previewBinary: "\u8FD9\u4E2A\u6587\u4EF6\u66F4\u50CF\u4E8C\u8FDB\u5236\u5185\u5BB9
|
|
303
|
-
previewDecodeFailed: "\u6682\u65F6\u65E0\u6CD5\u6309 UTF-8 \u6587\u672C\u89E3\u7801\u8FD9\u4E2A\u6587\u4EF6
|
|
304
|
-
previewError: "\u52A0\u8F7D\u9884\u89C8\u5931\u8D25
|
|
305
|
-
previewFileTooLarge: "\u8FD9\u4E2A\u6587\u4EF6\u8D85\u8FC7\u4E86 {{maxSize}}
|
|
306
|
-
previewFolder: "\u6682\u4E0D\u652F\u6301\u9884\u89C8\u6587\u4EF6\u5939
|
|
307
|
-
previewLoading: "\u6B63\u5728\u52A0\u8F7D\u9884\u89C8
|
|
308
|
-
previewTextTooLarge: "\u8FD9\u4E2A\u6587\u672C\u6587\u4EF6\u8D85\u8FC7\u4E86 {{maxSize}}
|
|
309
|
-
previewUnavailable: "\u5F53\u524D\u5DE5\u4F5C\u533A\u65E0\u6CD5\u9884\u89C8\u6587\u4EF6
|
|
310
|
-
previewUnsupported: "\u6682\u4E0D\u652F\u6301\u9884\u89C8\u8FD9\u79CD\u6587\u4EF6\u7C7B\u578B
|
|
359
|
+
emptyDirectory: "\u5F53\u524D\u76EE\u5F55\u4E3A\u7A7A",
|
|
360
|
+
emptySearch: "\u6CA1\u6709\u5339\u914D\u7684\u6587\u4EF6\u6216\u6587\u4EF6\u5939",
|
|
361
|
+
loading: "\u6B63\u5728\u52A0\u8F7D",
|
|
362
|
+
previewBinary: "\u8FD9\u4E2A\u6587\u4EF6\u66F4\u50CF\u4E8C\u8FDB\u5236\u5185\u5BB9",
|
|
363
|
+
previewDecodeFailed: "\u6682\u65F6\u65E0\u6CD5\u6309 UTF-8 \u6587\u672C\u89E3\u7801\u8FD9\u4E2A\u6587\u4EF6",
|
|
364
|
+
previewError: "\u52A0\u8F7D\u9884\u89C8\u5931\u8D25",
|
|
365
|
+
previewFileTooLarge: "\u8FD9\u4E2A\u6587\u4EF6\u8D85\u8FC7\u4E86 {{maxSize}}",
|
|
366
|
+
previewFolder: "\u6682\u4E0D\u652F\u6301\u9884\u89C8\u6587\u4EF6\u5939",
|
|
367
|
+
previewLoading: "\u6B63\u5728\u52A0\u8F7D\u9884\u89C8",
|
|
368
|
+
previewTextTooLarge: "\u8FD9\u4E2A\u6587\u672C\u6587\u4EF6\u8D85\u8FC7\u4E86 {{maxSize}}",
|
|
369
|
+
previewUnavailable: "\u5F53\u524D\u5DE5\u4F5C\u533A\u65E0\u6CD5\u9884\u89C8\u6587\u4EF6",
|
|
370
|
+
previewUnsupported: "\u6682\u4E0D\u652F\u6301\u9884\u89C8\u8FD9\u79CD\u6587\u4EF6\u7C7B\u578B",
|
|
311
371
|
searchPlaceholder: "\u641C\u7D22\u6587\u4EF6\u548C\u6587\u4EF6\u5939",
|
|
312
372
|
selectedCount: "\u5DF2\u9009\u62E9 {{count}} \u9879",
|
|
313
373
|
title: "\u9009\u62E9\u5DE5\u4F5C\u533A\u5F15\u7528"
|
|
@@ -362,4 +422,4 @@ export {
|
|
|
362
422
|
issueManagerI18nResources,
|
|
363
423
|
createIssueManagerI18nRuntime
|
|
364
424
|
};
|
|
365
|
-
//# sourceMappingURL=chunk-
|
|
425
|
+
//# sourceMappingURL=chunk-WT6PIL4Q.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/i18n/issueManagerI18n.ts"],"sourcesContent":["import {\n createI18nRuntime,\n createScopedI18nRuntime,\n createScopedLocaleObjectsI18nModuleManifest,\n type I18nDictionary,\n type I18nRuntime\n} from \"@nextop-os/ui-i18n-runtime\";\n\ntype IssueManagerI18nLocale = \"en\" | \"zh-CN\";\n\nexport const issueManagerI18nNamespace = \"issueManager\";\nexport const issueManagerI18nModule =\n createScopedLocaleObjectsI18nModuleManifest({\n localeObjectByLocale: {\n en: \"issueManagerEn\",\n \"zh-CN\": \"issueManagerZhCN\"\n },\n name: \"workspace-issue-manager\",\n namespace: issueManagerI18nNamespace,\n sourceRoot: \"packages/workspace/issue-manager/src\"\n });\n\nconst issueManagerEn = {\n actions: {\n add: \"Add\",\n addReferences: \"Add references\",\n addSubtask: \"Add sub-issue\",\n askAgentToBreakdown: \"Break down with agent\",\n askAgentToRun: \"Ask agent to run\",\n cancel: \"Cancel\",\n clearSearch: \"Clear search\",\n collapseIssueList: \"Collapse issue list\",\n copyShareLink: \"Copy share link\",\n createIssue: \"New issue\",\n createTask: \"Create issue\",\n createTopic: \"New topic\",\n delete: \"Delete\",\n deleteIssue: \"Delete issue\",\n deleteTask: \"Delete issue\",\n edit: \"Edit\",\n editIssue: \"Edit issue\",\n editTask: \"Edit issue\",\n editTopic: \"Edit topic\",\n expandIssueList: \"Expand issue list\",\n inviteCollaborator: \"Invite collaborator\",\n insertReferences: \"Insert references\",\n linkExistingExecutionDirectory: \"Use existing project\",\n moreActions: \"More actions\",\n openReference: \"Open\",\n refresh: \"Refresh\",\n referenceWorkspaceFiles: \"Reference files\",\n removeReference: \"Remove\",\n runTask: \"Run issue\",\n saveIssue: \"Save issue\",\n saveSubtask: \"Save sub-issue\",\n saveTask: \"Save issue\",\n selectExecutionDirectory: \"Select execution directory\",\n pinTopic: \"Pin\",\n saveTopic: \"Save topic\",\n unpinTopic: \"Unpin\",\n uploadFiles: \"Upload files\",\n uploadFolder: \"Upload folder\"\n },\n composer: {\n issueContentPlaceholder: \"Describe the issue, goals, or context.\",\n issueTitlePlaceholder: \"Issue title\",\n subtaskContentPlaceholder:\n \"Add the sub-issue goal, execution approach, and acceptance criteria.\",\n subtaskTitlePlaceholder: \"Enter a sub-issue title\",\n taskContentPlaceholder:\n \"Describe the executable issue and expected result.\",\n taskTitlePlaceholder: \"Issue title\"\n },\n confirmations: {\n deleteIssue: \"Delete this issue?\",\n deleteTask: \"Delete this issue?\",\n deleteTopic: \"Delete this topic?\"\n },\n dockLabel: \"Issues\",\n emptyState:\n \"Create an issue, add the goal and references, then let Agent run\",\n labels: {\n allStatus: \"All\",\n content: \"Content\",\n contextReferences: \"Context references\",\n createTopicDialogTitle: \"New topic\",\n createdAt: \"Created\",\n creator: \"Creator\",\n customExecutionDirectory: \"Custom directory\",\n description: \"Description\",\n executionOutputs: \"Execution outputs\",\n issueDetails: \"Issue details\",\n issueList: \"Issues\",\n latestRunStatus: \"Latest execution status\",\n loadingExecutionDirectories: \"Loading directories...\",\n noProject: \"No project\",\n outputs: \"Outputs\",\n priority: \"Priority\",\n provider: \"Provider\",\n recentRuns: \"Recent runs\",\n requirementDescription: \"Requirements\",\n resizeIssueList: \"Resize issue list\",\n searchIssues: \"Search issues\",\n scrollStatusTabsLeft: \"Scroll status tabs left\",\n scrollStatusTabsRight: \"Scroll status tabs right\",\n status: \"Status\",\n subtasks: \"Sub-issues\",\n topic: \"Topic\",\n topicDefault: \"Default\",\n topicSummary: \"Topic summary\",\n topicTitle: \"Topic title\",\n editTopicDialogTitle: \"Edit topic\",\n title: \"Title\",\n updatedAt: \"Updated\",\n taskCount: \"{{count}} sub-issues\",\n taskDetails: \"Issue details\",\n taskList: \"Issues\",\n temporaryExecutionDirectory: \"Temporary directory\"\n },\n messages: {\n clipboardUnavailable: \"Clipboard is unavailable.\",\n breakdownOpenFailed: \"Couldn't open the agent task breakdown.\",\n breakdownUnavailable: \"Agent task breakdown is unavailable.\",\n copyShareLinkFailed: \"Couldn't copy the share link.\",\n copiedShareLink: \"Share link copied.\",\n issueDeleteFailed: \"Couldn't delete the issue.\",\n issueRefreshFailed: \"Couldn't refresh issues.\",\n issueSaveFailed: \"Couldn't save the issue.\",\n executionDirectorySelectFailed: \"Couldn't select the execution directory.\",\n issueDeleted: \"Issue deleted.\",\n issueSaved: \"Issue saved.\",\n issueContentEmpty: \"No issue description yet\",\n noExecutionOutputs: \"No execution outputs yet\",\n noExecutionStatus: \"No execution records yet\",\n noIssueReferences: \"No issue references yet\",\n noIssuesForFilterBody:\n \"Try another filter, or create a new issue to get things started\",\n noIssuesForFilterTitle: \"No issues match the current filter\",\n noIssues: \"No issues yet\",\n noAgentProviders: \"No available agent providers.\",\n noOutputs: \"No outputs yet\",\n noRecentRuns: \"No runs yet\",\n taskContentEmpty: \"No issue description yet\",\n noTaskReferences: \"No issue references yet\",\n noTasksForIssueBody:\n \"Create the first sub-issue for this issue and let an agent or yourself execute it\",\n noSubtasksForIssue:\n \"You can continue breaking down this item by adding sub-issues\",\n noTasks: \"No issues yet\",\n refreshingIssues: \"Refreshing issues...\",\n titleRequired: \"Enter a title before saving.\",\n runExitCode: \"Codex exited with code {{code}}.\",\n runCompleted: \"Run completed.\",\n runFailed: \"Run failed\",\n runStarted: \"Run started.\",\n runStatusMissing:\n \"Terminal exited before the issue run produced a status marker.\",\n runTimedOut: \"Issue run timed out while waiting for Codex output.\",\n referenceRemoveFailed: \"Couldn't remove the reference.\",\n taskDeleteFailed: \"Couldn't delete the issue.\",\n taskSaveFailed: \"Couldn't save the issue.\",\n taskDeleted: \"Issue deleted.\",\n taskSaved: \"Issue saved.\",\n topicCreateFailed: \"Couldn't create the topic.\",\n topicDeleteDefaultForbidden: \"The default topic can't be deleted.\",\n topicDeleteFailed: \"Couldn't delete the topic.\",\n topicDeleteNotEmpty:\n \"Move or delete the issues in this topic before deleting it.\",\n topicDeleteNotFound: \"This topic no longer exists.\",\n topicListEmpty: \"No issue topics are available.\",\n topicUpdateFailed: \"Couldn't update the topic.\",\n uploadTypeConflict: \"Upload target contains conflicting entry types.\",\n workspacePathUnavailable: \"Workspace path is unavailable.\"\n },\n priority: {\n high: \"High\",\n low: \"Low\",\n medium: \"Medium\"\n },\n referencePicker: {\n browse: \"Browse\",\n confirm: \"Use selected references\",\n emptyDirectory: \"This folder is empty.\",\n emptySearch: \"No matching files or folders.\",\n loading: \"Loading...\",\n previewBinary: \"This file looks like binary content.\",\n previewDecodeFailed: \"This file couldn't be decoded as UTF-8 text.\",\n previewError: \"Couldn't load a preview.\",\n previewFileTooLarge: \"This file is larger than {{maxSize}}.\",\n previewFolder: \"Folder preview is not available.\",\n previewLoading: \"Loading preview...\",\n previewTextTooLarge: \"This text file is larger than {{maxSize}}.\",\n previewUnavailable: \"Preview is not available in this workspace.\",\n previewUnsupported: \"This file type can't be previewed here.\",\n searchPlaceholder: \"Search files and folders\",\n selectedCount: \"{{count}} selected\",\n title: \"Pick workspace references\"\n },\n richTextAt: {\n loading: \"Loading...\",\n noMatches: \"No matches\"\n },\n run: {\n failedSummaryFallback: \"Run failed\",\n outputDirectory: \"Output directory\",\n requester: \"Requester\",\n status: \"Run status\",\n summary: \"Summary\"\n },\n status: {\n canceled: \"Canceled\",\n completed: \"Completed\",\n failed: \"Failed\",\n notStarted: \"To run\",\n pendingAcceptance: \"Pending\",\n running: \"Running\",\n unknown: \"Unknown\"\n },\n title: \"Issue Center\"\n} as const satisfies I18nDictionary;\n\nconst issueManagerZhCN = {\n actions: {\n add: \"添加\",\n addReferences: \"添加引用\",\n addSubtask: \"添加子事项\",\n askAgentToBreakdown: \"让 Agent 拆解任务\",\n askAgentToRun: \"让 Agent 执行\",\n cancel: \"取消\",\n clearSearch: \"清空搜索\",\n collapseIssueList: \"收起事项列表\",\n copyShareLink: \"复制分享链接\",\n createIssue: \"新建事项\",\n createTask: \"新建事项\",\n createTopic: \"新建主题\",\n delete: \"删除\",\n deleteIssue: \"删除事项\",\n deleteTask: \"删除事项\",\n edit: \"编辑\",\n editIssue: \"编辑事项\",\n editTask: \"编辑事项\",\n editTopic: \"编辑主题\",\n expandIssueList: \"展开事项列表\",\n inviteCollaborator: \"邀请协作者\",\n insertReferences: \"插入引用\",\n linkExistingExecutionDirectory: \"使用已有项目\",\n moreActions: \"更多操作\",\n openReference: \"打开\",\n refresh: \"刷新\",\n referenceWorkspaceFiles: \"引用文件\",\n removeReference: \"移除\",\n runTask: \"运行事项\",\n saveIssue: \"保存事项\",\n saveSubtask: \"保存子事项\",\n saveTask: \"保存事项\",\n selectExecutionDirectory: \"选择执行目录\",\n pinTopic: \"置顶\",\n saveTopic: \"保存主题\",\n unpinTopic: \"取消置顶\",\n uploadFiles: \"上传文件\",\n uploadFolder: \"上传文件夹\"\n },\n composer: {\n issueContentPlaceholder: \"补充这个事项的背景、目标或上下文\",\n issueTitlePlaceholder: \"事项标题\",\n subtaskContentPlaceholder: \"补充子事项目标、执行方式和验收标准\",\n subtaskTitlePlaceholder: \"请输入子事项标题\",\n taskContentPlaceholder: \"描述这个事项的执行要求和预期结果。\",\n taskTitlePlaceholder: \"事项标题\"\n },\n confirmations: {\n deleteIssue: \"确定删除这个事项吗?\",\n deleteTask: \"确定删除这个事项吗?\",\n deleteTopic: \"确定删除这个主题吗?\"\n },\n dockLabel: \"事项\",\n emptyState: \"新建事项,补充需求描述和相关文件,即可让 Agent 执行\",\n labels: {\n allStatus: \"全部\",\n content: \"内容\",\n contextReferences: \"上下文引用\",\n createTopicDialogTitle: \"新建主题\",\n createdAt: \"创建时间\",\n creator: \"创建者\",\n customExecutionDirectory: \"自定义目录\",\n description: \"描述\",\n executionOutputs: \"执行产物\",\n issueDetails: \"事项详情\",\n issueList: \"事项\",\n latestRunStatus: \"最新执行状态\",\n loadingExecutionDirectories: \"正在加载目录...\",\n noProject: \"不使用项目\",\n outputs: \"输出产物\",\n priority: \"优先级\",\n provider: \"Provider\",\n recentRuns: \"最近运行\",\n requirementDescription: \"需求描述\",\n resizeIssueList: \"调整事项列表宽度\",\n searchIssues: \"搜索事项\",\n scrollStatusTabsLeft: \"向左滚动状态标签\",\n scrollStatusTabsRight: \"向右滚动状态标签\",\n status: \"状态\",\n subtasks: \"子事项\",\n topic: \"主题\",\n topicDefault: \"默认\",\n topicSummary: \"主题概要\",\n topicTitle: \"主题标题\",\n editTopicDialogTitle: \"编辑主题\",\n title: \"标题\",\n updatedAt: \"更新时间\",\n taskCount: \"{{count}} 个子事项\",\n taskDetails: \"事项详情\",\n taskList: \"事项\",\n temporaryExecutionDirectory: \"临时目录\"\n },\n messages: {\n clipboardUnavailable: \"当前环境无法访问剪贴板。\",\n breakdownOpenFailed: \"打开 Agent 任务拆解失败。\",\n breakdownUnavailable: \"当前环境暂不支持 Agent 任务拆解。\",\n copyShareLinkFailed: \"复制分享链接失败。\",\n copiedShareLink: \"已复制分享链接。\",\n issueDeleteFailed: \"删除事项失败。\",\n issueRefreshFailed: \"刷新事项列表失败。\",\n issueSaveFailed: \"保存事项失败。\",\n executionDirectorySelectFailed: \"选择执行目录失败。\",\n issueDeleted: \"事项已删除。\",\n issueSaved: \"事项已保存。\",\n issueContentEmpty: \"这个事项还没有描述\",\n noExecutionOutputs: \"暂无执行产物\",\n noExecutionStatus: \"暂无执行记录\",\n noIssueReferences: \"这个事项还没有引用\",\n noIssuesForFilterBody: \"试试切换筛选条件,或者新建一个事项\",\n noIssuesForFilterTitle: \"当前筛选条件下暂无事项\",\n noIssues: \"还没有事项\",\n noAgentProviders: \"暂无可用的 Agent Provider。\",\n noOutputs: \"还没有输出产物\",\n noRecentRuns: \"还没有运行记录\",\n taskContentEmpty: \"这个事项还没有描述\",\n noTaskReferences: \"这个事项还没有引用\",\n noTasksForIssueBody:\n \"为这个事项创建第一个子事项,然后交给 Agent 或你自己执行\",\n noSubtasksForIssue: \"你可以围绕当前事项继续添加子事项\",\n noTasks: \"还没有事项\",\n refreshingIssues: \"正在刷新事项列表...\",\n titleRequired: \"请先填写标题后再保存。\",\n runExitCode: \"Codex 以退出码 {{code}} 结束。\",\n runCompleted: \"运行已完成。\",\n runFailed: \"运行失败\",\n runStarted: \"运行已开始。\",\n runStatusMissing: \"终端在写入运行状态前就退出了。\",\n runTimedOut: \"等待 Codex 输出超时。\",\n referenceRemoveFailed: \"移除引用失败。\",\n taskDeleteFailed: \"删除事项失败。\",\n taskSaveFailed: \"保存事项失败。\",\n taskDeleted: \"事项已删除。\",\n taskSaved: \"事项已保存。\",\n topicCreateFailed: \"新建主题失败。\",\n topicDeleteDefaultForbidden: \"默认主题不能删除。\",\n topicDeleteFailed: \"删除主题失败。\",\n topicDeleteNotEmpty: \"这个主题下还有事项,不能删除。\",\n topicDeleteNotFound: \"这个主题已不存在。\",\n topicListEmpty: \"没有可用的主题。\",\n topicUpdateFailed: \"更新主题失败。\",\n uploadTypeConflict: \"上传目标中存在类型冲突的同名条目。\",\n workspacePathUnavailable: \"当前工作区路径不可用。\"\n },\n priority: {\n high: \"高\",\n low: \"低\",\n medium: \"中\"\n },\n referencePicker: {\n browse: \"浏览\",\n confirm: \"使用已选引用\",\n emptyDirectory: \"当前目录为空\",\n emptySearch: \"没有匹配的文件或文件夹\",\n loading: \"正在加载\",\n previewBinary: \"这个文件更像二进制内容\",\n previewDecodeFailed: \"暂时无法按 UTF-8 文本解码这个文件\",\n previewError: \"加载预览失败\",\n previewFileTooLarge: \"这个文件超过了 {{maxSize}}\",\n previewFolder: \"暂不支持预览文件夹\",\n previewLoading: \"正在加载预览\",\n previewTextTooLarge: \"这个文本文件超过了 {{maxSize}}\",\n previewUnavailable: \"当前工作区无法预览文件\",\n previewUnsupported: \"暂不支持预览这种文件类型\",\n searchPlaceholder: \"搜索文件和文件夹\",\n selectedCount: \"已选择 {{count}} 项\",\n title: \"选择工作区引用\"\n },\n richTextAt: {\n loading: \"正在加载...\",\n noMatches: \"没有匹配项\"\n },\n run: {\n failedSummaryFallback: \"运行失败\",\n outputDirectory: \"输出目录\",\n requester: \"发起人\",\n status: \"运行状态\",\n summary: \"摘要\"\n },\n status: {\n canceled: \"已取消\",\n completed: \"已完成\",\n failed: \"失败\",\n notStarted: \"待启动\",\n pendingAcceptance: \"待验收\",\n running: \"执行中\",\n unknown: \"未知\"\n },\n title: \"事项中心\"\n} as const satisfies I18nDictionary;\n\nexport type IssueManagerI18nKey = string;\n\nexport type IssueManagerI18nRuntime = I18nRuntime<IssueManagerI18nKey>;\n\nconst issueManagerDefaults: Record<IssueManagerI18nLocale, I18nDictionary> = {\n en: issueManagerEn,\n \"zh-CN\": issueManagerZhCN\n};\n\nexport const issueManagerI18nResources = {\n en: {\n [issueManagerI18nNamespace]: issueManagerDefaults.en\n },\n \"zh-CN\": {\n [issueManagerI18nNamespace]: issueManagerDefaults[\"zh-CN\"]\n }\n} as const satisfies Record<IssueManagerI18nLocale, I18nDictionary>;\n\nconst defaultIssueManagerI18n = createI18nRuntime({\n dictionaries: [issueManagerI18nResources.en]\n});\n\nexport function createIssueManagerI18nRuntime(\n runtime: I18nRuntime<string> | undefined\n): IssueManagerI18nRuntime {\n return createScopedI18nRuntime<IssueManagerI18nKey>(\n runtime ?? defaultIssueManagerI18n,\n issueManagerI18nNamespace\n );\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,20 +1,26 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createIssueManagerI18nRuntime
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-WT6PIL4Q.js";
|
|
4
4
|
|
|
5
5
|
// src/core/feature.ts
|
|
6
6
|
var defaultIssueManagerNodeState = {
|
|
7
|
+
activeTopicId: null,
|
|
7
8
|
issueSearchQuery: "",
|
|
8
9
|
issueStatusFilter: "all",
|
|
9
10
|
selectedAgentProvider: "codex",
|
|
11
|
+
selectedExecutionDirectory: null,
|
|
10
12
|
selectedIssueId: null,
|
|
11
13
|
selectedTaskId: null,
|
|
12
14
|
taskListCollapsed: false
|
|
13
15
|
};
|
|
14
16
|
function createIssueManagerFeature(input) {
|
|
15
17
|
return {
|
|
18
|
+
agentBreakdownLauncher: input.agentBreakdownLauncher,
|
|
19
|
+
agentProviderOptions: input.agentProviderOptions,
|
|
16
20
|
agentRunner: input.agentRunner,
|
|
17
21
|
backend: input.backend,
|
|
22
|
+
eventSource: input.eventSource,
|
|
23
|
+
executionDirectoryPicker: input.executionDirectoryPicker,
|
|
18
24
|
fileAdapter: input.fileAdapter,
|
|
19
25
|
i18n: createIssueManagerI18nRuntime(input.i18n),
|
|
20
26
|
identityAdapter: input.identityAdapter,
|
|
@@ -29,9 +35,13 @@ function normalizeIssueManagerNodeState(state) {
|
|
|
29
35
|
return {
|
|
30
36
|
...defaultIssueManagerNodeState,
|
|
31
37
|
...state,
|
|
38
|
+
activeTopicId: normalizeNullableString(state?.activeTopicId),
|
|
32
39
|
issueSearchQuery: state?.issueSearchQuery?.trim() ?? "",
|
|
33
40
|
issueStatusFilter: state?.issueStatusFilter ?? "all",
|
|
34
41
|
selectedAgentProvider: state?.selectedAgentProvider?.trim() || "codex",
|
|
42
|
+
selectedExecutionDirectory: normalizeNullableString(
|
|
43
|
+
state?.selectedExecutionDirectory
|
|
44
|
+
),
|
|
35
45
|
selectedIssueId: normalizeNullableString(state?.selectedIssueId),
|
|
36
46
|
selectedTaskId: normalizeNullableString(state?.selectedTaskId),
|
|
37
47
|
taskListCollapsed: state?.taskListCollapsed === true
|
|
@@ -113,7 +123,11 @@ function resolveIssueManagerExpandedFrame(frame, surfaceWidth) {
|
|
|
113
123
|
|
|
114
124
|
// src/core/runPrompt.ts
|
|
115
125
|
function buildIssueManagerRunOutputDir(issueId, taskId, runId) {
|
|
116
|
-
|
|
126
|
+
const normalizedTaskId = taskId?.trim();
|
|
127
|
+
if (normalizedTaskId) {
|
|
128
|
+
return `/workspace/issues/${issueId}/tasks/${normalizedTaskId}/runs/${runId}`;
|
|
129
|
+
}
|
|
130
|
+
return `/workspace/issues/${issueId}/runs/${runId}`;
|
|
117
131
|
}
|
|
118
132
|
function buildIssueManagerUploadDir(issueId, taskId) {
|
|
119
133
|
const normalizedTaskId = taskId?.trim();
|
|
@@ -143,45 +157,77 @@ function resolveIssueManagerWorkspaceRuntimePath(workspaceRoot, requestedPath) {
|
|
|
143
157
|
return normalizedRequestedPath;
|
|
144
158
|
}
|
|
145
159
|
function buildIssueManagerRunPrompt(input) {
|
|
146
|
-
const outputDir = resolveIssueManagerWorkspaceRuntimePath(
|
|
147
|
-
input.workspaceRoot,
|
|
148
|
-
buildIssueManagerRunOutputDir(
|
|
149
|
-
input.issue.issueId,
|
|
150
|
-
input.task.taskId,
|
|
151
|
-
input.runId
|
|
152
|
-
)
|
|
153
|
-
);
|
|
154
160
|
const workspaceFileRefs = collectIssueManagerWorkspaceReferencePaths(
|
|
155
|
-
input.task
|
|
161
|
+
input.task?.content || "",
|
|
156
162
|
input.issue.content || ""
|
|
157
163
|
).map(
|
|
158
164
|
(refPath) => `- [file] ${resolveIssueManagerWorkspaceRuntimePath(input.workspaceRoot, refPath)}`
|
|
159
165
|
).join("\n");
|
|
160
166
|
const taskContent = extractIssueManagerPlainTextFromContent(
|
|
161
|
-
input.task
|
|
167
|
+
input.task?.content || ""
|
|
162
168
|
);
|
|
163
169
|
const issueContent = extractIssueManagerPlainTextFromContent(
|
|
164
170
|
input.issue.content || ""
|
|
165
171
|
);
|
|
172
|
+
const taskTitle = input.task?.title.trim() || input.issue.title;
|
|
166
173
|
return [
|
|
167
174
|
"\u4F60\u6B63\u5728\u5904\u7406\u4E00\u4E2A\u5DE5\u4F5C\u533A\u4EFB\u52A1\u3002",
|
|
168
175
|
"",
|
|
169
176
|
`Issue \u6807\u9898\uFF1A${input.issue.title}`,
|
|
170
177
|
`Issue \u5185\u5BB9\uFF1A${issueContent || "\uFF08\u65E0\u8865\u5145\u5185\u5BB9\uFF09"}`,
|
|
171
|
-
`Task \u6807\u9898\uFF1A${
|
|
178
|
+
`Task \u6807\u9898\uFF1A${taskTitle}`,
|
|
172
179
|
`Task \u5185\u5BB9\uFF1A${taskContent || "\uFF08\u65E0\u8865\u5145\u5185\u5BB9\uFF09"}`,
|
|
173
180
|
`\u5F53\u524D\u5DE5\u4F5C\u76EE\u5F55\uFF1A${input.workspaceRoot}`,
|
|
174
|
-
`\u4EFB\u52A1\u8F93\u51FA\u76EE\u5F55\uFF1A${outputDir}`,
|
|
175
181
|
"",
|
|
176
182
|
"\u5F15\u7528\u8D44\u6599\uFF1A",
|
|
177
183
|
workspaceFileRefs || "- \uFF08\u65E0\u5F15\u7528\u8D44\u6599\uFF09",
|
|
178
184
|
"",
|
|
179
185
|
"\u6267\u884C\u8981\u6C42\uFF1A",
|
|
180
186
|
`1. \u5728 ${input.workspaceRoot} \u4E0B\u5DE5\u4F5C\uFF0C\u4E0D\u8981\u5207\u6362\u5230\u5176\u4ED6\u65E0\u5173\u76EE\u5F55\u3002`,
|
|
181
|
-
"2. \
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
187
|
+
"2. Issue Manager \u4F1A\u8BB0\u5F55\u672C\u6B21\u6267\u884C\u72B6\u6001\uFF1B\u4E0D\u8981\u81EA\u884C\u521B\u5EFA\u6216\u5B8C\u6210 issue run\u3002",
|
|
188
|
+
"3. \u5982\u679C\u7528\u6237\u6307\u5B9A\u4E86\u8F93\u51FA\u4F4D\u7F6E\uFF0C\u4F18\u5148\u4F7F\u7528\u7528\u6237\u6307\u5B9A\u7684\u4F4D\u7F6E\uFF1B\u5426\u5219\u628A\u4EA7\u7269\u5199\u5728\u5F53\u524D\u5DE5\u4F5C\u76EE\u5F55\u5185\uFF0C\u4E0D\u8981\u5199\u5230\u5DE5\u4F5C\u533A\u4E4B\u5916\u3002"
|
|
189
|
+
].join("\n");
|
|
190
|
+
}
|
|
191
|
+
function buildIssueManagerTaskBreakdownPrompt(input) {
|
|
192
|
+
const issue = input.issueDetail.issue;
|
|
193
|
+
const issueContent = extractIssueManagerPlainTextFromContent(
|
|
194
|
+
issue.content || ""
|
|
195
|
+
);
|
|
196
|
+
const existingTasks = input.issueDetail.tasks.map((task, index) => {
|
|
197
|
+
const taskContent = extractIssueManagerPlainTextFromContent(
|
|
198
|
+
task.content || ""
|
|
199
|
+
);
|
|
200
|
+
return [
|
|
201
|
+
`${index + 1}. ${task.title}`,
|
|
202
|
+
taskContent ? ` - \u8BF4\u660E\uFF1A${taskContent}` : null,
|
|
203
|
+
` - \u72B6\u6001\uFF1A${task.status}`,
|
|
204
|
+
` - \u4F18\u5148\u7EA7\uFF1A${task.priority}`
|
|
205
|
+
].filter(Boolean).join("\n");
|
|
206
|
+
}).join("\n");
|
|
207
|
+
const contextRefs = input.issueDetail.contextRefs.map(
|
|
208
|
+
(ref) => `- [${ref.parentKind}] ${ref.displayName || ref.path}: ${ref.path}`
|
|
209
|
+
).join("\n");
|
|
210
|
+
const issueMention = `[@${issue.title}](mention://workspace-issue?workspaceId=${encodeURIComponent(
|
|
211
|
+
input.workspaceId
|
|
212
|
+
)}&id=${encodeURIComponent(issue.issueId)})`;
|
|
213
|
+
return [
|
|
214
|
+
"\u8BF7\u57FA\u4E8E\u4E0B\u9762\u8FD9\u4E2A Issue \u5E2E\u6211\u505A\u4EFB\u52A1\u62C6\u89E3\u3002",
|
|
215
|
+
"",
|
|
216
|
+
`Issue \u5F15\u7528\uFF1A${issueMention}`,
|
|
217
|
+
`Issue \u6807\u9898\uFF1A${issue.title}`,
|
|
218
|
+
`Issue \u5185\u5BB9\uFF1A${issueContent || "\uFF08\u65E0\u8865\u5145\u5185\u5BB9\uFF09"}`,
|
|
219
|
+
"",
|
|
220
|
+
"\u73B0\u6709\u5B50\u4E8B\u9879\uFF1A",
|
|
221
|
+
existingTasks || "- \uFF08\u6682\u65E0\u5B50\u4E8B\u9879\uFF09",
|
|
222
|
+
"",
|
|
223
|
+
"\u5F15\u7528\u8D44\u6599\uFF1A",
|
|
224
|
+
contextRefs || "- \uFF08\u65E0\u5F15\u7528\u8D44\u6599\uFF09",
|
|
225
|
+
"",
|
|
226
|
+
"\u62C6\u89E3\u8981\u6C42\uFF1A",
|
|
227
|
+
"1. \u5148\u7406\u89E3 Issue \u7684\u76EE\u6807\u3001\u7EA6\u675F\u3001\u98CE\u9669\u548C\u9A8C\u6536\u53E3\u5F84\u3002",
|
|
228
|
+
"2. \u7ED9\u51FA\u5EFA\u8BAE\u7684\u5B50\u4E8B\u9879\u5217\u8868\uFF0C\u6BCF\u4E2A\u5B50\u4E8B\u9879\u5305\u542B\u6807\u9898\u3001\u76EE\u6807\u3001\u5173\u952E\u6B65\u9AA4\u3001\u9A8C\u6536\u6807\u51C6\u3001\u5EFA\u8BAE\u4F18\u5148\u7EA7\u3002",
|
|
229
|
+
"3. \u6807\u8BB0\u4F9D\u8D56\u5173\u7CFB\u3001\u5E76\u884C/\u4E32\u884C\u987A\u5E8F\uFF0C\u4EE5\u53CA\u9700\u8981\u7528\u6237\u8865\u5145\u786E\u8BA4\u7684\u95EE\u9898\u3002",
|
|
230
|
+
"4. \u907F\u514D\u76F4\u63A5\u6539\u4EE3\u7801\u6216\u6267\u884C\u4EFB\u52A1\uFF1B\u8FD9\u6B21\u53EA\u505A\u4EFB\u52A1\u62C6\u89E3\u3002"
|
|
185
231
|
].join("\n");
|
|
186
232
|
}
|
|
187
233
|
function collectIssueManagerWorkspaceReferencePaths(...contents) {
|
|
@@ -225,6 +271,7 @@ export {
|
|
|
225
271
|
buildIssueManagerRunOutputDir,
|
|
226
272
|
buildIssueManagerUploadDir,
|
|
227
273
|
resolveIssueManagerWorkspaceRuntimePath,
|
|
228
|
-
buildIssueManagerRunPrompt
|
|
274
|
+
buildIssueManagerRunPrompt,
|
|
275
|
+
buildIssueManagerTaskBreakdownPrompt
|
|
229
276
|
};
|
|
230
|
-
//# sourceMappingURL=chunk-
|
|
277
|
+
//# sourceMappingURL=chunk-YN5NYKAA.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/core/feature.ts","../src/core/content.ts","../src/core/layout.ts","../src/core/runPrompt.ts"],"sourcesContent":["import type { I18nRuntime } from \"@nextop-os/ui-i18n-runtime\";\nimport {\n createIssueManagerI18nRuntime,\n type IssueManagerI18nRuntime\n} from \"../i18n/issueManagerI18n.ts\";\nimport type {\n IssueManagerAgentBreakdownLauncher,\n IssueManagerAgentProviderOptionsAdapter,\n IssueManagerExecutionDirectoryPicker,\n IssueManagerAgentRunner,\n IssueManagerBackend,\n IssueManagerEventSource,\n IssueManagerFileAdapter,\n IssueManagerIdentityAdapter,\n IssueManagerNodeState,\n IssueManagerShareAdapter\n} from \"../contracts/index.ts\";\n\nexport interface IssueManagerNotificationSink {\n tips(title: string): void;\n}\n\nexport interface IssueManagerFeatureUIConfig {\n showInviteCollaborator: boolean;\n}\n\nexport interface IssueManagerFeature {\n agentBreakdownLauncher?: IssueManagerAgentBreakdownLauncher;\n agentProviderOptions?: IssueManagerAgentProviderOptionsAdapter;\n agentRunner: IssueManagerAgentRunner;\n backend: IssueManagerBackend;\n eventSource?: IssueManagerEventSource;\n executionDirectoryPicker?: IssueManagerExecutionDirectoryPicker;\n fileAdapter?: IssueManagerFileAdapter;\n i18n: IssueManagerI18nRuntime;\n identityAdapter: IssueManagerIdentityAdapter;\n notifications?: IssueManagerNotificationSink;\n shareAdapter?: IssueManagerShareAdapter;\n ui: IssueManagerFeatureUIConfig;\n}\n\nexport interface CreateIssueManagerFeatureInput {\n agentBreakdownLauncher?: IssueManagerAgentBreakdownLauncher;\n agentProviderOptions?: IssueManagerAgentProviderOptionsAdapter;\n agentRunner: IssueManagerAgentRunner;\n backend: IssueManagerBackend;\n eventSource?: IssueManagerEventSource;\n executionDirectoryPicker?: IssueManagerExecutionDirectoryPicker;\n fileAdapter?: IssueManagerFileAdapter;\n i18n?: I18nRuntime<string>;\n identityAdapter: IssueManagerIdentityAdapter;\n notifications?: IssueManagerNotificationSink;\n shareAdapter?: IssueManagerShareAdapter;\n ui?: Partial<IssueManagerFeatureUIConfig>;\n}\n\nexport const defaultIssueManagerNodeState: IssueManagerNodeState = {\n activeTopicId: null,\n issueSearchQuery: \"\",\n issueStatusFilter: \"all\",\n selectedAgentProvider: \"codex\",\n selectedExecutionDirectory: null,\n selectedIssueId: null,\n selectedTaskId: null,\n taskListCollapsed: false\n};\n\nexport function createIssueManagerFeature(\n input: CreateIssueManagerFeatureInput\n): IssueManagerFeature {\n return {\n agentBreakdownLauncher: input.agentBreakdownLauncher,\n agentProviderOptions: input.agentProviderOptions,\n agentRunner: input.agentRunner,\n backend: input.backend,\n eventSource: input.eventSource,\n executionDirectoryPicker: input.executionDirectoryPicker,\n fileAdapter: input.fileAdapter,\n i18n: createIssueManagerI18nRuntime(input.i18n),\n identityAdapter: input.identityAdapter,\n notifications: input.notifications,\n shareAdapter: input.shareAdapter,\n ui: {\n showInviteCollaborator: input.ui?.showInviteCollaborator ?? true\n }\n };\n}\n\nexport function normalizeIssueManagerNodeState(\n state: Partial<IssueManagerNodeState> | null | undefined\n): IssueManagerNodeState {\n return {\n ...defaultIssueManagerNodeState,\n ...state,\n activeTopicId: normalizeNullableString(state?.activeTopicId),\n issueSearchQuery: state?.issueSearchQuery?.trim() ?? \"\",\n issueStatusFilter: state?.issueStatusFilter ?? \"all\",\n selectedAgentProvider: state?.selectedAgentProvider?.trim() || \"codex\",\n selectedExecutionDirectory: normalizeNullableString(\n state?.selectedExecutionDirectory\n ),\n selectedIssueId: normalizeNullableString(state?.selectedIssueId),\n selectedTaskId: normalizeNullableString(state?.selectedTaskId),\n taskListCollapsed: state?.taskListCollapsed === true\n };\n}\n\nfunction normalizeNullableString(\n value: string | null | undefined\n): string | null {\n const trimmed = value?.trim() ?? \"\";\n return trimmed.length > 0 ? trimmed : null;\n}\n","import {\n appendRichTextLinksToContent,\n createRichTextLinkMarkdown,\n createRichTextMentionHref,\n createRichTextMentionMarkdown,\n extractPlainTextFromContent,\n extractPlainTextWithoutFilesFromContent,\n extractRichTextLinksFromContent,\n extractRichTextMentionsFromContent,\n normalizeRichTextContent,\n normalizeRichTextLinkHref,\n parseRichTextMentionHref,\n removeRichTextLinkFromContent,\n removeRichTextMentionFromContent\n} from \"@nextop-os/ui-rich-text/core\";\nimport type {\n RichTextLinkInput,\n RichTextLinkRef\n} from \"@nextop-os/ui-rich-text/core\";\nimport type { RichTextMentionAttrs } from \"@nextop-os/ui-rich-text/types\";\n\nexport type IssueManagerWorkspaceFileLinkRef = RichTextLinkRef;\nexport type IssueManagerWorkspaceFileLinkInput = RichTextLinkInput;\n\nexport type IssueManagerMentionRef = RichTextMentionAttrs;\nexport type IssueManagerMentionAttrs = RichTextMentionAttrs;\n\nexport const normalizeIssueManagerContent = normalizeRichTextContent;\n\nexport const normalizeIssueManagerWorkspaceFileLinkHref =\n normalizeRichTextLinkHref;\n\nexport const createIssueManagerWorkspaceFileLinkMarkdown =\n createRichTextLinkMarkdown;\n\nexport const appendIssueManagerWorkspaceFileLinksToContent =\n appendRichTextLinksToContent;\n\nexport const extractIssueManagerWorkspaceFileLinksFromContent =\n extractRichTextLinksFromContent;\n\nexport const removeIssueManagerWorkspaceFileLinkFromContent =\n removeRichTextLinkFromContent;\n\nexport const extractIssueManagerPlainTextFromContent =\n extractPlainTextFromContent;\n\nexport const extractIssueManagerPlainTextWithoutFilesFromContent =\n extractPlainTextWithoutFilesFromContent;\n\nexport const createIssueManagerMentionHref = createRichTextMentionHref;\nexport const createIssueManagerMentionMarkdown = createRichTextMentionMarkdown;\nexport const parseIssueManagerMentionHref = parseRichTextMentionHref;\nexport const extractIssueManagerMentionsFromContent =\n extractRichTextMentionsFromContent;\nexport const removeIssueManagerMentionFromContent =\n removeRichTextMentionFromContent;\n","export const issueManagerSidebarDefaultWidth = 312;\nexport const issueManagerSidebarMinWidth = 248;\nexport const issueManagerSidebarMaxWidth = 520;\nexport const issueManagerMainMinWidth = 420;\nexport const issueManagerDefaultNodeFrameWidth = 960;\nexport const issueManagerExpandedFrameMinWidth =\n issueManagerSidebarMinWidth + issueManagerMainMinWidth;\n\nexport function clampIssueManagerSidebarWidth(\n width: number,\n layoutWidth: number\n): number {\n const maxWidth = Math.max(\n issueManagerSidebarMinWidth,\n Math.min(\n issueManagerSidebarMaxWidth,\n layoutWidth - issueManagerMainMinWidth\n )\n );\n return Math.min(Math.max(width, issueManagerSidebarMinWidth), maxWidth);\n}\n\nexport function shouldAutoCollapseIssueManagerSidebar(\n containerWidth: number\n): boolean {\n return (\n Number.isFinite(containerWidth) &&\n containerWidth > 0 &&\n Math.round(containerWidth) < issueManagerExpandedFrameMinWidth\n );\n}\n\nexport function resolveIssueManagerExpandedFrame<\n TFrame extends { width: number; x: number }\n>(frame: TFrame, surfaceWidth: number): TFrame {\n const preferredWidth = Math.max(\n issueManagerExpandedFrameMinWidth,\n Math.min(\n issueManagerDefaultNodeFrameWidth,\n frame.width + issueManagerSidebarDefaultWidth\n )\n );\n const width = Math.min(\n Math.max(frame.width, preferredWidth),\n Math.max(frame.width, surfaceWidth)\n );\n\n return {\n ...frame,\n width,\n x: Math.max(0, Math.min(frame.x, surfaceWidth - width))\n };\n}\n","import type {\n IssueManagerContextRef,\n IssueManagerIssueSummary,\n IssueManagerTaskSummary\n} from \"../contracts/index.ts\";\nimport {\n extractIssueManagerPlainTextFromContent,\n extractIssueManagerWorkspaceFileLinksFromContent\n} from \"./content.ts\";\n\nexport function buildIssueManagerRunOutputDir(\n issueId: string,\n taskId: string | null | undefined,\n runId: string\n): string {\n const normalizedTaskId = taskId?.trim();\n if (normalizedTaskId) {\n return `/workspace/issues/${issueId}/tasks/${normalizedTaskId}/runs/${runId}`;\n }\n return `/workspace/issues/${issueId}/runs/${runId}`;\n}\n\nexport function buildIssueManagerUploadDir(\n issueId: string,\n taskId?: string | null\n): string {\n const normalizedTaskId = taskId?.trim();\n if (normalizedTaskId) {\n return `/workspace/issues/${issueId}/tasks/${normalizedTaskId}/attachments`;\n }\n return `/workspace/issues/${issueId}/attachments`;\n}\n\nexport function resolveIssueManagerWorkspaceRuntimePath(\n workspaceRoot: string,\n requestedPath: string\n): string {\n const normalizedWorkspaceRoot = workspaceRoot.trim().replace(/\\/+$/, \"\");\n const normalizedRequestedPath = requestedPath.trim();\n\n if (!normalizedWorkspaceRoot || !normalizedRequestedPath) {\n return normalizedRequestedPath;\n }\n\n if (\n normalizedRequestedPath === normalizedWorkspaceRoot ||\n normalizedRequestedPath.startsWith(`${normalizedWorkspaceRoot}/`)\n ) {\n return normalizedRequestedPath;\n }\n\n if (normalizedRequestedPath === \"/workspace\") {\n return normalizedWorkspaceRoot;\n }\n\n if (normalizedRequestedPath.startsWith(\"/workspace/\")) {\n return `${normalizedWorkspaceRoot}/${normalizedRequestedPath.slice(\"/workspace/\".length)}`;\n }\n\n if (!normalizedRequestedPath.startsWith(\"/\")) {\n return `${normalizedWorkspaceRoot}/${normalizedRequestedPath.replace(/^\\/+/, \"\")}`;\n }\n\n return normalizedRequestedPath;\n}\n\nexport function buildIssueManagerRunPrompt(input: {\n issue: IssueManagerIssueSummary;\n task?: IssueManagerTaskSummary;\n workspaceRoot: string;\n}): string {\n const workspaceFileRefs = collectIssueManagerWorkspaceReferencePaths(\n input.task?.content || \"\",\n input.issue.content || \"\"\n )\n .map(\n (refPath) =>\n `- [file] ${resolveIssueManagerWorkspaceRuntimePath(input.workspaceRoot, refPath)}`\n )\n .join(\"\\n\");\n const taskContent = extractIssueManagerPlainTextFromContent(\n input.task?.content || \"\"\n );\n const issueContent = extractIssueManagerPlainTextFromContent(\n input.issue.content || \"\"\n );\n const taskTitle = input.task?.title.trim() || input.issue.title;\n\n return [\n \"你正在处理一个工作区任务。\",\n \"\",\n `Issue 标题:${input.issue.title}`,\n `Issue 内容:${issueContent || \"(无补充内容)\"}`,\n `Task 标题:${taskTitle}`,\n `Task 内容:${taskContent || \"(无补充内容)\"}`,\n `当前工作目录:${input.workspaceRoot}`,\n \"\",\n \"引用资料:\",\n workspaceFileRefs || \"- (无引用资料)\",\n \"\",\n \"执行要求:\",\n `1. 在 ${input.workspaceRoot} 下工作,不要切换到其他无关目录。`,\n \"2. Issue Manager 会记录本次执行状态;不要自行创建或完成 issue run。\",\n \"3. 如果用户指定了输出位置,优先使用用户指定的位置;否则把产物写在当前工作目录内,不要写到工作区之外。\"\n ].join(\"\\n\");\n}\n\nexport function buildIssueManagerTaskBreakdownPrompt(input: {\n issueDetail: {\n contextRefs: readonly IssueManagerContextRef[];\n issue: IssueManagerIssueSummary;\n tasks: readonly IssueManagerTaskSummary[];\n };\n workspaceId: string;\n}): string {\n const issue = input.issueDetail.issue;\n const issueContent = extractIssueManagerPlainTextFromContent(\n issue.content || \"\"\n );\n const existingTasks = input.issueDetail.tasks\n .map((task, index) => {\n const taskContent = extractIssueManagerPlainTextFromContent(\n task.content || \"\"\n );\n return [\n `${index + 1}. ${task.title}`,\n taskContent ? ` - 说明:${taskContent}` : null,\n ` - 状态:${task.status}`,\n ` - 优先级:${task.priority}`\n ]\n .filter(Boolean)\n .join(\"\\n\");\n })\n .join(\"\\n\");\n const contextRefs = input.issueDetail.contextRefs\n .map(\n (ref) =>\n `- [${ref.parentKind}] ${ref.displayName || ref.path}: ${ref.path}`\n )\n .join(\"\\n\");\n const issueMention = `[@${issue.title}](mention://workspace-issue?workspaceId=${encodeURIComponent(\n input.workspaceId\n )}&id=${encodeURIComponent(issue.issueId)})`;\n\n return [\n \"请基于下面这个 Issue 帮我做任务拆解。\",\n \"\",\n `Issue 引用:${issueMention}`,\n `Issue 标题:${issue.title}`,\n `Issue 内容:${issueContent || \"(无补充内容)\"}`,\n \"\",\n \"现有子事项:\",\n existingTasks || \"- (暂无子事项)\",\n \"\",\n \"引用资料:\",\n contextRefs || \"- (无引用资料)\",\n \"\",\n \"拆解要求:\",\n \"1. 先理解 Issue 的目标、约束、风险和验收口径。\",\n \"2. 给出建议的子事项列表,每个子事项包含标题、目标、关键步骤、验收标准、建议优先级。\",\n \"3. 标记依赖关系、并行/串行顺序,以及需要用户补充确认的问题。\",\n \"4. 避免直接改代码或执行任务;这次只做任务拆解。\"\n ].join(\"\\n\");\n}\n\nfunction collectIssueManagerWorkspaceReferencePaths(\n ...contents: string[]\n): string[] {\n const paths = new Set<string>();\n for (const content of contents) {\n for (const ref of extractIssueManagerWorkspaceFileLinksFromContent(\n content\n )) {\n paths.add(ref.path);\n }\n }\n return [...paths];\n}\n"],"mappings":"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","names":[]}
|