@jiraacp/cli 2026.405.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 (113) hide show
  1. package/README.md +283 -0
  2. package/dist/abort-GQE4OI5S.js +103 -0
  3. package/dist/abort-GQE4OI5S.js.map +1 -0
  4. package/dist/abort-VMRQOADY.js +96 -0
  5. package/dist/abort-VMRQOADY.js.map +1 -0
  6. package/dist/bot-WOTETAJY.js +13 -0
  7. package/dist/bot-WOTETAJY.js.map +1 -0
  8. package/dist/cancel-clarification-4G5S2HJZ.js +64 -0
  9. package/dist/cancel-clarification-4G5S2HJZ.js.map +1 -0
  10. package/dist/chunk-3U373M37.js +67 -0
  11. package/dist/chunk-3U373M37.js.map +1 -0
  12. package/dist/chunk-3YHD4SIN.js +97 -0
  13. package/dist/chunk-3YHD4SIN.js.map +1 -0
  14. package/dist/chunk-6IY6CRUJ.js +690 -0
  15. package/dist/chunk-6IY6CRUJ.js.map +1 -0
  16. package/dist/chunk-B6OA3XJK.js +1167 -0
  17. package/dist/chunk-B6OA3XJK.js.map +1 -0
  18. package/dist/chunk-BM4R6NST.js +191 -0
  19. package/dist/chunk-BM4R6NST.js.map +1 -0
  20. package/dist/chunk-FLPIU2QO.js +77 -0
  21. package/dist/chunk-FLPIU2QO.js.map +1 -0
  22. package/dist/chunk-H7YXX4UA.js +86 -0
  23. package/dist/chunk-H7YXX4UA.js.map +1 -0
  24. package/dist/chunk-IT74N3UH.js +19 -0
  25. package/dist/chunk-IT74N3UH.js.map +1 -0
  26. package/dist/chunk-JOT4UVSO.js +186 -0
  27. package/dist/chunk-JOT4UVSO.js.map +1 -0
  28. package/dist/chunk-KSJKCLEJ.js +222 -0
  29. package/dist/chunk-KSJKCLEJ.js.map +1 -0
  30. package/dist/chunk-LIEW4ULF.js +139 -0
  31. package/dist/chunk-LIEW4ULF.js.map +1 -0
  32. package/dist/chunk-M4V3YOCY.js +82 -0
  33. package/dist/chunk-M4V3YOCY.js.map +1 -0
  34. package/dist/chunk-MMWQHH25.js +207 -0
  35. package/dist/chunk-MMWQHH25.js.map +1 -0
  36. package/dist/chunk-OJ4CNF73.js +78 -0
  37. package/dist/chunk-OJ4CNF73.js.map +1 -0
  38. package/dist/chunk-PFJAC3RO.js +137 -0
  39. package/dist/chunk-PFJAC3RO.js.map +1 -0
  40. package/dist/chunk-PVKVCUNR.js +159 -0
  41. package/dist/chunk-PVKVCUNR.js.map +1 -0
  42. package/dist/chunk-RXT4WSIY.js +35 -0
  43. package/dist/chunk-RXT4WSIY.js.map +1 -0
  44. package/dist/chunk-RZK74PDF.js +34 -0
  45. package/dist/chunk-RZK74PDF.js.map +1 -0
  46. package/dist/chunk-UDTWVKRX.js +68 -0
  47. package/dist/chunk-UDTWVKRX.js.map +1 -0
  48. package/dist/chunk-VCEONSWJ.js +307 -0
  49. package/dist/chunk-VCEONSWJ.js.map +1 -0
  50. package/dist/chunk-VWBCDZWQ.js +119 -0
  51. package/dist/chunk-VWBCDZWQ.js.map +1 -0
  52. package/dist/chunk-WEJCTFQB.js +228 -0
  53. package/dist/chunk-WEJCTFQB.js.map +1 -0
  54. package/dist/chunk-YJK7IRPI.js +223 -0
  55. package/dist/chunk-YJK7IRPI.js.map +1 -0
  56. package/dist/claude-md-HQ6L4CRP.js +8 -0
  57. package/dist/claude-md-HQ6L4CRP.js.map +1 -0
  58. package/dist/cli.js +276 -0
  59. package/dist/cli.js.map +1 -0
  60. package/dist/commands-RG45VBTZ.js +407 -0
  61. package/dist/commands-RG45VBTZ.js.map +1 -0
  62. package/dist/commands-WYVRVE5Z.js +400 -0
  63. package/dist/commands-WYVRVE5Z.js.map +1 -0
  64. package/dist/config-edit-G7O56HXO.js +50 -0
  65. package/dist/config-edit-G7O56HXO.js.map +1 -0
  66. package/dist/config-set-QN3JRNZL.js +63 -0
  67. package/dist/config-set-QN3JRNZL.js.map +1 -0
  68. package/dist/daemon-CGBV55JK.js +104 -0
  69. package/dist/daemon-CGBV55JK.js.map +1 -0
  70. package/dist/dashboard-YVFJ5DXR.js +143 -0
  71. package/dist/dashboard-YVFJ5DXR.js.map +1 -0
  72. package/dist/doctor-BPTLVLTD.js +98 -0
  73. package/dist/doctor-BPTLVLTD.js.map +1 -0
  74. package/dist/human-loop-RBTA2TYK.js +16 -0
  75. package/dist/human-loop-RBTA2TYK.js.map +1 -0
  76. package/dist/human-loop-XGWXUNCS.js +18 -0
  77. package/dist/human-loop-XGWXUNCS.js.map +1 -0
  78. package/dist/index.d.ts +583 -0
  79. package/dist/index.js +28 -0
  80. package/dist/index.js.map +1 -0
  81. package/dist/loader-DGW7HCJ5.js +21 -0
  82. package/dist/loader-DGW7HCJ5.js.map +1 -0
  83. package/dist/logs-JUVQWN6C.js +93 -0
  84. package/dist/logs-JUVQWN6C.js.map +1 -0
  85. package/dist/mcp.js +132 -0
  86. package/dist/mcp.js.map +1 -0
  87. package/dist/orchestrator-3MGXX3QW.js +22 -0
  88. package/dist/orchestrator-3MGXX3QW.js.map +1 -0
  89. package/dist/orchestrator-BVUKN5N3.js +13 -0
  90. package/dist/orchestrator-BVUKN5N3.js.map +1 -0
  91. package/dist/pause-FLDZ3OD6.js +62 -0
  92. package/dist/pause-FLDZ3OD6.js.map +1 -0
  93. package/dist/projects-QMIGNW7U.js +129 -0
  94. package/dist/projects-QMIGNW7U.js.map +1 -0
  95. package/dist/replay-M4JEG4Z4.js +151 -0
  96. package/dist/replay-M4JEG4Z4.js.map +1 -0
  97. package/dist/schedule-CDHD77VZ.js +17 -0
  98. package/dist/schedule-CDHD77VZ.js.map +1 -0
  99. package/dist/serve-XI7JTIPZ.js +231 -0
  100. package/dist/serve-XI7JTIPZ.js.map +1 -0
  101. package/dist/sprint-KZZWVNK6.js +200 -0
  102. package/dist/sprint-KZZWVNK6.js.map +1 -0
  103. package/dist/status-I6GU2LWE.js +48 -0
  104. package/dist/status-I6GU2LWE.js.map +1 -0
  105. package/dist/topic-manager-4AMEPMFI.js +12 -0
  106. package/dist/topic-manager-4AMEPMFI.js.map +1 -0
  107. package/dist/triage-WNHGPVZQ.js +251 -0
  108. package/dist/triage-WNHGPVZQ.js.map +1 -0
  109. package/dist/usage-AWWBI37F.js +155 -0
  110. package/dist/usage-AWWBI37F.js.map +1 -0
  111. package/dist/wizard-CYEJJLNF.js +190 -0
  112. package/dist/wizard-CYEJJLNF.js.map +1 -0
  113. package/package.json +56 -0
@@ -0,0 +1,583 @@
1
+ import { z } from 'zod';
2
+
3
+ declare const StageId: z.ZodEnum<["fetch", "analyze", "clarify", "code", "git", "review", "deploy", "test", "notify"]>;
4
+ type StageId = z.infer<typeof StageId>;
5
+ declare const ProjectConfigSchema: z.ZodObject<{
6
+ name: z.ZodString;
7
+ extends: z.ZodOptional<z.ZodString>;
8
+ jira: z.ZodObject<{
9
+ instance: z.ZodString;
10
+ url: z.ZodString;
11
+ email: z.ZodString;
12
+ token: z.ZodString;
13
+ projectKey: z.ZodString;
14
+ assignees: z.ZodArray<z.ZodString, "many">;
15
+ reassignTo: z.ZodOptional<z.ZodString>;
16
+ acceptanceCriteriaField: z.ZodDefault<z.ZodString>;
17
+ inProgressTransition: z.ZodDefault<z.ZodString>;
18
+ inReviewTransition: z.ZodDefault<z.ZodString>;
19
+ doneTransition: z.ZodDefault<z.ZodString>;
20
+ blockedTransition: z.ZodOptional<z.ZodString>;
21
+ clarityScoreThreshold: z.ZodDefault<z.ZodNumber>;
22
+ requiredFields: z.ZodDefault<z.ZodArray<z.ZodEnum<["description", "acceptanceCriteria", "storyPoints", "designLink"]>, "many">>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ instance: string;
25
+ url: string;
26
+ email: string;
27
+ token: string;
28
+ projectKey: string;
29
+ assignees: string[];
30
+ acceptanceCriteriaField: string;
31
+ inProgressTransition: string;
32
+ inReviewTransition: string;
33
+ doneTransition: string;
34
+ clarityScoreThreshold: number;
35
+ requiredFields: ("description" | "acceptanceCriteria" | "storyPoints" | "designLink")[];
36
+ reassignTo?: string | undefined;
37
+ blockedTransition?: string | undefined;
38
+ }, {
39
+ instance: string;
40
+ url: string;
41
+ email: string;
42
+ token: string;
43
+ projectKey: string;
44
+ assignees: string[];
45
+ reassignTo?: string | undefined;
46
+ acceptanceCriteriaField?: string | undefined;
47
+ inProgressTransition?: string | undefined;
48
+ inReviewTransition?: string | undefined;
49
+ doneTransition?: string | undefined;
50
+ blockedTransition?: string | undefined;
51
+ clarityScoreThreshold?: number | undefined;
52
+ requiredFields?: ("description" | "acceptanceCriteria" | "storyPoints" | "designLink")[] | undefined;
53
+ }>;
54
+ github: z.ZodObject<{
55
+ owner: z.ZodString;
56
+ repo: z.ZodString;
57
+ token: z.ZodString;
58
+ defaultBranch: z.ZodDefault<z.ZodString>;
59
+ branchPattern: z.ZodDefault<z.ZodString>;
60
+ branchPrefix: z.ZodDefault<z.ZodString>;
61
+ autoMergeStrategy: z.ZodDefault<z.ZodEnum<["squash", "merge", "rebase"]>>;
62
+ reviewers: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
63
+ prDraftByDefault: z.ZodDefault<z.ZodBoolean>;
64
+ majorIssueThreshold: z.ZodDefault<z.ZodNumber>;
65
+ ciWaitTimeoutMs: z.ZodDefault<z.ZodNumber>;
66
+ }, "strip", z.ZodTypeAny, {
67
+ token: string;
68
+ owner: string;
69
+ repo: string;
70
+ defaultBranch: string;
71
+ branchPattern: string;
72
+ branchPrefix: string;
73
+ autoMergeStrategy: "squash" | "merge" | "rebase";
74
+ reviewers: string[];
75
+ prDraftByDefault: boolean;
76
+ majorIssueThreshold: number;
77
+ ciWaitTimeoutMs: number;
78
+ }, {
79
+ token: string;
80
+ owner: string;
81
+ repo: string;
82
+ defaultBranch?: string | undefined;
83
+ branchPattern?: string | undefined;
84
+ branchPrefix?: string | undefined;
85
+ autoMergeStrategy?: "squash" | "merge" | "rebase" | undefined;
86
+ reviewers?: string[] | undefined;
87
+ prDraftByDefault?: boolean | undefined;
88
+ majorIssueThreshold?: number | undefined;
89
+ ciWaitTimeoutMs?: number | undefined;
90
+ }>;
91
+ workspace: z.ZodObject<{
92
+ rootDir: z.ZodString;
93
+ buildCommand: z.ZodOptional<z.ZodString>;
94
+ testCommand: z.ZodOptional<z.ZodString>;
95
+ allowedPaths: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
96
+ }, "strip", z.ZodTypeAny, {
97
+ rootDir: string;
98
+ allowedPaths: string[];
99
+ buildCommand?: string | undefined;
100
+ testCommand?: string | undefined;
101
+ }, {
102
+ rootDir: string;
103
+ buildCommand?: string | undefined;
104
+ testCommand?: string | undefined;
105
+ allowedPaths?: string[] | undefined;
106
+ }>;
107
+ deploy: z.ZodDefault<z.ZodObject<{
108
+ enabled: z.ZodDefault<z.ZodBoolean>;
109
+ command: z.ZodOptional<z.ZodString>;
110
+ rollbackCommand: z.ZodOptional<z.ZodString>;
111
+ timeoutMs: z.ZodDefault<z.ZodNumber>;
112
+ healthCheckUrl: z.ZodOptional<z.ZodString>;
113
+ healthCheckTimeoutMs: z.ZodDefault<z.ZodNumber>;
114
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
115
+ }, "strip", z.ZodTypeAny, {
116
+ enabled: boolean;
117
+ timeoutMs: number;
118
+ healthCheckTimeoutMs: number;
119
+ env: Record<string, string>;
120
+ command?: string | undefined;
121
+ rollbackCommand?: string | undefined;
122
+ healthCheckUrl?: string | undefined;
123
+ }, {
124
+ enabled?: boolean | undefined;
125
+ command?: string | undefined;
126
+ rollbackCommand?: string | undefined;
127
+ timeoutMs?: number | undefined;
128
+ healthCheckUrl?: string | undefined;
129
+ healthCheckTimeoutMs?: number | undefined;
130
+ env?: Record<string, string> | undefined;
131
+ }>>;
132
+ test: z.ZodDefault<z.ZodObject<{
133
+ enabled: z.ZodDefault<z.ZodBoolean>;
134
+ baseUrl: z.ZodOptional<z.ZodString>;
135
+ retries: z.ZodDefault<z.ZodNumber>;
136
+ waitBeforeTestMs: z.ZodDefault<z.ZodNumber>;
137
+ timeoutMs: z.ZodDefault<z.ZodNumber>;
138
+ specPattern: z.ZodDefault<z.ZodString>;
139
+ }, "strip", z.ZodTypeAny, {
140
+ enabled: boolean;
141
+ timeoutMs: number;
142
+ retries: number;
143
+ waitBeforeTestMs: number;
144
+ specPattern: string;
145
+ baseUrl?: string | undefined;
146
+ }, {
147
+ enabled?: boolean | undefined;
148
+ timeoutMs?: number | undefined;
149
+ baseUrl?: string | undefined;
150
+ retries?: number | undefined;
151
+ waitBeforeTestMs?: number | undefined;
152
+ specPattern?: string | undefined;
153
+ }>>;
154
+ telegram: z.ZodObject<{
155
+ botToken: z.ZodString;
156
+ chatId: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
157
+ topicId: z.ZodOptional<z.ZodNumber>;
158
+ notifyOnStages: z.ZodDefault<z.ZodArray<z.ZodEnum<["start", "clarification", "code-done", "pr-created", "review-pass", "review-fail", "deployed", "test-pass", "test-fail", "done", "error"]>, "many">>;
159
+ humanInTheLoop: z.ZodDefault<z.ZodObject<{
160
+ clarificationTimeoutMs: z.ZodDefault<z.ZodNumber>;
161
+ clarificationTimeoutAction: z.ZodDefault<z.ZodEnum<["skip", "abort", "proceed-with-warning"]>>;
162
+ reviewApprovalTimeoutMs: z.ZodDefault<z.ZodNumber>;
163
+ reviewApprovalTimeoutAction: z.ZodDefault<z.ZodEnum<["abort", "merge-anyway"]>>;
164
+ }, "strip", z.ZodTypeAny, {
165
+ clarificationTimeoutMs: number;
166
+ clarificationTimeoutAction: "skip" | "abort" | "proceed-with-warning";
167
+ reviewApprovalTimeoutMs: number;
168
+ reviewApprovalTimeoutAction: "abort" | "merge-anyway";
169
+ }, {
170
+ clarificationTimeoutMs?: number | undefined;
171
+ clarificationTimeoutAction?: "skip" | "abort" | "proceed-with-warning" | undefined;
172
+ reviewApprovalTimeoutMs?: number | undefined;
173
+ reviewApprovalTimeoutAction?: "abort" | "merge-anyway" | undefined;
174
+ }>>;
175
+ }, "strip", z.ZodTypeAny, {
176
+ botToken: string;
177
+ chatId: string | number;
178
+ notifyOnStages: ("start" | "clarification" | "code-done" | "pr-created" | "review-pass" | "review-fail" | "deployed" | "test-pass" | "test-fail" | "done" | "error")[];
179
+ humanInTheLoop: {
180
+ clarificationTimeoutMs: number;
181
+ clarificationTimeoutAction: "skip" | "abort" | "proceed-with-warning";
182
+ reviewApprovalTimeoutMs: number;
183
+ reviewApprovalTimeoutAction: "abort" | "merge-anyway";
184
+ };
185
+ topicId?: number | undefined;
186
+ }, {
187
+ botToken: string;
188
+ chatId: string | number;
189
+ topicId?: number | undefined;
190
+ notifyOnStages?: ("start" | "clarification" | "code-done" | "pr-created" | "review-pass" | "review-fail" | "deployed" | "test-pass" | "test-fail" | "done" | "error")[] | undefined;
191
+ humanInTheLoop?: {
192
+ clarificationTimeoutMs?: number | undefined;
193
+ clarificationTimeoutAction?: "skip" | "abort" | "proceed-with-warning" | undefined;
194
+ reviewApprovalTimeoutMs?: number | undefined;
195
+ reviewApprovalTimeoutAction?: "abort" | "merge-anyway" | undefined;
196
+ } | undefined;
197
+ }>;
198
+ pipeline: z.ZodDefault<z.ZodObject<{
199
+ maxConcurrentRuns: z.ZodDefault<z.ZodNumber>;
200
+ stageTimeouts: z.ZodDefault<z.ZodObject<{
201
+ fetch: z.ZodDefault<z.ZodNumber>;
202
+ analyze: z.ZodDefault<z.ZodNumber>;
203
+ clarify: z.ZodDefault<z.ZodNumber>;
204
+ code: z.ZodDefault<z.ZodNumber>;
205
+ git: z.ZodDefault<z.ZodNumber>;
206
+ review: z.ZodDefault<z.ZodNumber>;
207
+ deploy: z.ZodDefault<z.ZodNumber>;
208
+ test: z.ZodDefault<z.ZodNumber>;
209
+ notify: z.ZodDefault<z.ZodNumber>;
210
+ }, "strip", z.ZodTypeAny, {
211
+ fetch: number;
212
+ analyze: number;
213
+ clarify: number;
214
+ code: number;
215
+ git: number;
216
+ review: number;
217
+ deploy: number;
218
+ test: number;
219
+ notify: number;
220
+ }, {
221
+ fetch?: number | undefined;
222
+ analyze?: number | undefined;
223
+ clarify?: number | undefined;
224
+ code?: number | undefined;
225
+ git?: number | undefined;
226
+ review?: number | undefined;
227
+ deploy?: number | undefined;
228
+ test?: number | undefined;
229
+ notify?: number | undefined;
230
+ }>>;
231
+ agentStallTimeoutMs: z.ZodDefault<z.ZodNumber>;
232
+ skipClarificationIfClear: z.ZodDefault<z.ZodBoolean>;
233
+ failOnTestFailure: z.ZodDefault<z.ZodBoolean>;
234
+ failOnDeployFailure: z.ZodDefault<z.ZodBoolean>;
235
+ maxCostUsdPerRun: z.ZodOptional<z.ZodNumber>;
236
+ hooks: z.ZodDefault<z.ZodObject<{
237
+ beforePipeline: z.ZodOptional<z.ZodString>;
238
+ beforeCode: z.ZodOptional<z.ZodString>;
239
+ afterCode: z.ZodOptional<z.ZodString>;
240
+ afterDeploy: z.ZodOptional<z.ZodString>;
241
+ afterPipeline: z.ZodOptional<z.ZodString>;
242
+ }, "strip", z.ZodTypeAny, {
243
+ beforePipeline?: string | undefined;
244
+ beforeCode?: string | undefined;
245
+ afterCode?: string | undefined;
246
+ afterDeploy?: string | undefined;
247
+ afterPipeline?: string | undefined;
248
+ }, {
249
+ beforePipeline?: string | undefined;
250
+ beforeCode?: string | undefined;
251
+ afterCode?: string | undefined;
252
+ afterDeploy?: string | undefined;
253
+ afterPipeline?: string | undefined;
254
+ }>>;
255
+ }, "strip", z.ZodTypeAny, {
256
+ maxConcurrentRuns: number;
257
+ stageTimeouts: {
258
+ fetch: number;
259
+ analyze: number;
260
+ clarify: number;
261
+ code: number;
262
+ git: number;
263
+ review: number;
264
+ deploy: number;
265
+ test: number;
266
+ notify: number;
267
+ };
268
+ agentStallTimeoutMs: number;
269
+ skipClarificationIfClear: boolean;
270
+ failOnTestFailure: boolean;
271
+ failOnDeployFailure: boolean;
272
+ hooks: {
273
+ beforePipeline?: string | undefined;
274
+ beforeCode?: string | undefined;
275
+ afterCode?: string | undefined;
276
+ afterDeploy?: string | undefined;
277
+ afterPipeline?: string | undefined;
278
+ };
279
+ maxCostUsdPerRun?: number | undefined;
280
+ }, {
281
+ maxConcurrentRuns?: number | undefined;
282
+ stageTimeouts?: {
283
+ fetch?: number | undefined;
284
+ analyze?: number | undefined;
285
+ clarify?: number | undefined;
286
+ code?: number | undefined;
287
+ git?: number | undefined;
288
+ review?: number | undefined;
289
+ deploy?: number | undefined;
290
+ test?: number | undefined;
291
+ notify?: number | undefined;
292
+ } | undefined;
293
+ agentStallTimeoutMs?: number | undefined;
294
+ skipClarificationIfClear?: boolean | undefined;
295
+ failOnTestFailure?: boolean | undefined;
296
+ failOnDeployFailure?: boolean | undefined;
297
+ maxCostUsdPerRun?: number | undefined;
298
+ hooks?: {
299
+ beforePipeline?: string | undefined;
300
+ beforeCode?: string | undefined;
301
+ afterCode?: string | undefined;
302
+ afterDeploy?: string | undefined;
303
+ afterPipeline?: string | undefined;
304
+ } | undefined;
305
+ }>>;
306
+ }, "strip", z.ZodTypeAny, {
307
+ deploy: {
308
+ enabled: boolean;
309
+ timeoutMs: number;
310
+ healthCheckTimeoutMs: number;
311
+ env: Record<string, string>;
312
+ command?: string | undefined;
313
+ rollbackCommand?: string | undefined;
314
+ healthCheckUrl?: string | undefined;
315
+ };
316
+ test: {
317
+ enabled: boolean;
318
+ timeoutMs: number;
319
+ retries: number;
320
+ waitBeforeTestMs: number;
321
+ specPattern: string;
322
+ baseUrl?: string | undefined;
323
+ };
324
+ name: string;
325
+ jira: {
326
+ instance: string;
327
+ url: string;
328
+ email: string;
329
+ token: string;
330
+ projectKey: string;
331
+ assignees: string[];
332
+ acceptanceCriteriaField: string;
333
+ inProgressTransition: string;
334
+ inReviewTransition: string;
335
+ doneTransition: string;
336
+ clarityScoreThreshold: number;
337
+ requiredFields: ("description" | "acceptanceCriteria" | "storyPoints" | "designLink")[];
338
+ reassignTo?: string | undefined;
339
+ blockedTransition?: string | undefined;
340
+ };
341
+ github: {
342
+ token: string;
343
+ owner: string;
344
+ repo: string;
345
+ defaultBranch: string;
346
+ branchPattern: string;
347
+ branchPrefix: string;
348
+ autoMergeStrategy: "squash" | "merge" | "rebase";
349
+ reviewers: string[];
350
+ prDraftByDefault: boolean;
351
+ majorIssueThreshold: number;
352
+ ciWaitTimeoutMs: number;
353
+ };
354
+ workspace: {
355
+ rootDir: string;
356
+ allowedPaths: string[];
357
+ buildCommand?: string | undefined;
358
+ testCommand?: string | undefined;
359
+ };
360
+ telegram: {
361
+ botToken: string;
362
+ chatId: string | number;
363
+ notifyOnStages: ("start" | "clarification" | "code-done" | "pr-created" | "review-pass" | "review-fail" | "deployed" | "test-pass" | "test-fail" | "done" | "error")[];
364
+ humanInTheLoop: {
365
+ clarificationTimeoutMs: number;
366
+ clarificationTimeoutAction: "skip" | "abort" | "proceed-with-warning";
367
+ reviewApprovalTimeoutMs: number;
368
+ reviewApprovalTimeoutAction: "abort" | "merge-anyway";
369
+ };
370
+ topicId?: number | undefined;
371
+ };
372
+ pipeline: {
373
+ maxConcurrentRuns: number;
374
+ stageTimeouts: {
375
+ fetch: number;
376
+ analyze: number;
377
+ clarify: number;
378
+ code: number;
379
+ git: number;
380
+ review: number;
381
+ deploy: number;
382
+ test: number;
383
+ notify: number;
384
+ };
385
+ agentStallTimeoutMs: number;
386
+ skipClarificationIfClear: boolean;
387
+ failOnTestFailure: boolean;
388
+ failOnDeployFailure: boolean;
389
+ hooks: {
390
+ beforePipeline?: string | undefined;
391
+ beforeCode?: string | undefined;
392
+ afterCode?: string | undefined;
393
+ afterDeploy?: string | undefined;
394
+ afterPipeline?: string | undefined;
395
+ };
396
+ maxCostUsdPerRun?: number | undefined;
397
+ };
398
+ extends?: string | undefined;
399
+ }, {
400
+ name: string;
401
+ jira: {
402
+ instance: string;
403
+ url: string;
404
+ email: string;
405
+ token: string;
406
+ projectKey: string;
407
+ assignees: string[];
408
+ reassignTo?: string | undefined;
409
+ acceptanceCriteriaField?: string | undefined;
410
+ inProgressTransition?: string | undefined;
411
+ inReviewTransition?: string | undefined;
412
+ doneTransition?: string | undefined;
413
+ blockedTransition?: string | undefined;
414
+ clarityScoreThreshold?: number | undefined;
415
+ requiredFields?: ("description" | "acceptanceCriteria" | "storyPoints" | "designLink")[] | undefined;
416
+ };
417
+ github: {
418
+ token: string;
419
+ owner: string;
420
+ repo: string;
421
+ defaultBranch?: string | undefined;
422
+ branchPattern?: string | undefined;
423
+ branchPrefix?: string | undefined;
424
+ autoMergeStrategy?: "squash" | "merge" | "rebase" | undefined;
425
+ reviewers?: string[] | undefined;
426
+ prDraftByDefault?: boolean | undefined;
427
+ majorIssueThreshold?: number | undefined;
428
+ ciWaitTimeoutMs?: number | undefined;
429
+ };
430
+ workspace: {
431
+ rootDir: string;
432
+ buildCommand?: string | undefined;
433
+ testCommand?: string | undefined;
434
+ allowedPaths?: string[] | undefined;
435
+ };
436
+ telegram: {
437
+ botToken: string;
438
+ chatId: string | number;
439
+ topicId?: number | undefined;
440
+ notifyOnStages?: ("start" | "clarification" | "code-done" | "pr-created" | "review-pass" | "review-fail" | "deployed" | "test-pass" | "test-fail" | "done" | "error")[] | undefined;
441
+ humanInTheLoop?: {
442
+ clarificationTimeoutMs?: number | undefined;
443
+ clarificationTimeoutAction?: "skip" | "abort" | "proceed-with-warning" | undefined;
444
+ reviewApprovalTimeoutMs?: number | undefined;
445
+ reviewApprovalTimeoutAction?: "abort" | "merge-anyway" | undefined;
446
+ } | undefined;
447
+ };
448
+ deploy?: {
449
+ enabled?: boolean | undefined;
450
+ command?: string | undefined;
451
+ rollbackCommand?: string | undefined;
452
+ timeoutMs?: number | undefined;
453
+ healthCheckUrl?: string | undefined;
454
+ healthCheckTimeoutMs?: number | undefined;
455
+ env?: Record<string, string> | undefined;
456
+ } | undefined;
457
+ test?: {
458
+ enabled?: boolean | undefined;
459
+ timeoutMs?: number | undefined;
460
+ baseUrl?: string | undefined;
461
+ retries?: number | undefined;
462
+ waitBeforeTestMs?: number | undefined;
463
+ specPattern?: string | undefined;
464
+ } | undefined;
465
+ extends?: string | undefined;
466
+ pipeline?: {
467
+ maxConcurrentRuns?: number | undefined;
468
+ stageTimeouts?: {
469
+ fetch?: number | undefined;
470
+ analyze?: number | undefined;
471
+ clarify?: number | undefined;
472
+ code?: number | undefined;
473
+ git?: number | undefined;
474
+ review?: number | undefined;
475
+ deploy?: number | undefined;
476
+ test?: number | undefined;
477
+ notify?: number | undefined;
478
+ } | undefined;
479
+ agentStallTimeoutMs?: number | undefined;
480
+ skipClarificationIfClear?: boolean | undefined;
481
+ failOnTestFailure?: boolean | undefined;
482
+ failOnDeployFailure?: boolean | undefined;
483
+ maxCostUsdPerRun?: number | undefined;
484
+ hooks?: {
485
+ beforePipeline?: string | undefined;
486
+ beforeCode?: string | undefined;
487
+ afterCode?: string | undefined;
488
+ afterDeploy?: string | undefined;
489
+ afterPipeline?: string | undefined;
490
+ } | undefined;
491
+ } | undefined;
492
+ }>;
493
+ type ProjectConfig = z.infer<typeof ProjectConfigSchema>;
494
+
495
+ interface RunOptions {
496
+ fromStage?: StageId;
497
+ toStage?: StageId;
498
+ dryRun?: boolean;
499
+ }
500
+ declare function runPipeline(ticketKey: string, config: ProjectConfig, opts?: RunOptions): Promise<void>;
501
+ declare function resumePipeline(ticketKey: string, config: ProjectConfig): Promise<void>;
502
+
503
+ declare function loadConfig(projectName: string): ProjectConfig;
504
+ declare function configExists(projectName: string): boolean;
505
+ declare function saveConfig(projectName: string, config: unknown): void;
506
+
507
+ type PipelineEvent = {
508
+ type: "STARTED";
509
+ ticketKey: string;
510
+ timestamp: string;
511
+ } | {
512
+ type: "STAGE_STARTED";
513
+ stage: StageId;
514
+ timestamp: string;
515
+ } | {
516
+ type: "STAGE_COMPLETED";
517
+ stage: StageId;
518
+ output: unknown;
519
+ timestamp: string;
520
+ } | {
521
+ type: "STAGE_FAILED";
522
+ stage: StageId;
523
+ error: string;
524
+ timestamp: string;
525
+ } | {
526
+ type: "STAGE_SKIPPED";
527
+ stage: StageId;
528
+ reason: string;
529
+ timestamp: string;
530
+ } | {
531
+ type: "CLARIFICATION_REQUESTED";
532
+ questions: string[];
533
+ timestamp: string;
534
+ } | {
535
+ type: "CLARIFICATION_RECEIVED";
536
+ answers: string;
537
+ timestamp: string;
538
+ } | {
539
+ type: "HUMAN_APPROVAL_REQUESTED";
540
+ context: unknown;
541
+ timestamp: string;
542
+ } | {
543
+ type: "HUMAN_APPROVED";
544
+ timestamp: string;
545
+ } | {
546
+ type: "HUMAN_REJECTED";
547
+ reason: string;
548
+ timestamp: string;
549
+ } | {
550
+ type: "PIPELINE_COMPLETED";
551
+ timestamp: string;
552
+ } | {
553
+ type: "PIPELINE_ABORTED";
554
+ reason: string;
555
+ timestamp: string;
556
+ };
557
+ interface PipelineState {
558
+ ticketKey: string;
559
+ currentStage: StageId | null;
560
+ completedStages: StageId[];
561
+ failedStage: StageId | null;
562
+ pendingClarification: boolean;
563
+ pendingHumanApproval: boolean;
564
+ branchName: string | null;
565
+ prNumber: number | null;
566
+ isCompleted: boolean;
567
+ isAborted: boolean;
568
+ abortReason: string | null;
569
+ startedAt: string | null;
570
+ }
571
+ type DistributiveOmit<T, K extends PropertyKey> = T extends unknown ? Omit<T, K> : never;
572
+ declare class StateManager {
573
+ private readonly runDir;
574
+ private readonly statePath;
575
+ private events;
576
+ constructor(runDir: string);
577
+ emit(event: DistributiveOmit<PipelineEvent, "timestamp">): void;
578
+ get current(): PipelineState;
579
+ private load;
580
+ }
581
+ declare function getRunDir(projectName: string, ticketKey: string): string;
582
+
583
+ export { type PipelineEvent, type PipelineState, type ProjectConfig, ProjectConfigSchema, StageId, StateManager, configExists, getRunDir, loadConfig, resumePipeline, runPipeline, saveConfig };
package/dist/index.js ADDED
@@ -0,0 +1,28 @@
1
+ import {
2
+ ProjectConfigSchema,
3
+ configExists,
4
+ loadConfig,
5
+ saveConfig
6
+ } from "./chunk-MMWQHH25.js";
7
+ import {
8
+ resumePipeline,
9
+ runPipeline
10
+ } from "./chunk-B6OA3XJK.js";
11
+ import "./chunk-KSJKCLEJ.js";
12
+ import "./chunk-WEJCTFQB.js";
13
+ import {
14
+ StateManager,
15
+ getRunDir
16
+ } from "./chunk-BM4R6NST.js";
17
+ import "./chunk-M4V3YOCY.js";
18
+ export {
19
+ ProjectConfigSchema,
20
+ StateManager,
21
+ configExists,
22
+ getRunDir,
23
+ loadConfig,
24
+ resumePipeline,
25
+ runPipeline,
26
+ saveConfig
27
+ };
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ HOME_DIR,
4
+ configExists,
5
+ detectProjectName,
6
+ getRunsDir,
7
+ listProjects,
8
+ loadConfig,
9
+ saveConfig
10
+ } from "./chunk-3YHD4SIN.js";
11
+ import "./chunk-LIEW4ULF.js";
12
+ export {
13
+ HOME_DIR,
14
+ configExists,
15
+ detectProjectName,
16
+ getRunsDir,
17
+ listProjects,
18
+ loadConfig,
19
+ saveConfig
20
+ };
21
+ //# sourceMappingURL=loader-DGW7HCJ5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}