@idea1/cli 1.1.1 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +111 -3
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +79 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/approve-pr.d.ts +3 -0
- package/dist/commands/approve-pr.d.ts.map +1 -0
- package/dist/commands/approve-pr.js +139 -0
- package/dist/commands/approve-pr.js.map +1 -0
- package/dist/commands/close-worktree.d.ts.map +1 -1
- package/dist/commands/close-worktree.js +1 -0
- package/dist/commands/close-worktree.js.map +1 -1
- package/dist/commands/index.d.ts +5 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +9 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/next-workflow-step.d.ts +3 -0
- package/dist/commands/next-workflow-step.d.ts.map +1 -0
- package/dist/commands/next-workflow-step.js +50 -0
- package/dist/commands/next-workflow-step.js.map +1 -0
- package/dist/commands/ready-for-approval.d.ts +3 -0
- package/dist/commands/ready-for-approval.d.ts.map +1 -0
- package/dist/commands/ready-for-approval.js +113 -0
- package/dist/commands/ready-for-approval.js.map +1 -0
- package/dist/commands/start-dev-implementation.d.ts +3 -0
- package/dist/commands/start-dev-implementation.d.ts.map +1 -0
- package/dist/commands/start-dev-implementation.js +101 -0
- package/dist/commands/start-dev-implementation.js.map +1 -0
- package/dist/commands/start-project-item.d.ts.map +1 -1
- package/dist/commands/start-project-item.js +17 -2
- package/dist/commands/start-project-item.js.map +1 -1
- package/dist/interactive.d.ts.map +1 -1
- package/dist/interactive.js +39 -1
- package/dist/interactive.js.map +1 -1
- package/dist/services/claude.d.ts +1 -1
- package/dist/services/claude.d.ts.map +1 -1
- package/dist/services/claude.js +8 -2
- package/dist/services/claude.js.map +1 -1
- package/dist/services/git.d.ts +24 -0
- package/dist/services/git.d.ts.map +1 -1
- package/dist/services/git.js +56 -0
- package/dist/services/git.js.map +1 -1
- package/dist/services/github.d.ts +57 -0
- package/dist/services/github.d.ts.map +1 -1
- package/dist/services/github.js +173 -1
- package/dist/services/github.js.map +1 -1
- package/dist/services/workflow.d.ts +28 -0
- package/dist/services/workflow.d.ts.map +1 -0
- package/dist/services/workflow.js +107 -0
- package/dist/services/workflow.js.map +1 -0
- package/dist/services/worktree.d.ts +2 -0
- package/dist/services/worktree.d.ts.map +1 -1
- package/dist/services/worktree.js +2 -2
- package/dist/services/worktree.js.map +1 -1
- package/dist/types/index.d.ts +34 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
package/dist/services/git.js
CHANGED
|
@@ -278,4 +278,60 @@ export async function gcOrphanedBranchConfigs() {
|
|
|
278
278
|
logger.dim(`Removed ${removedCount} orphaned branch config entries`);
|
|
279
279
|
}
|
|
280
280
|
}
|
|
281
|
+
/**
|
|
282
|
+
* Store workflow state in git config for later retrieval
|
|
283
|
+
*/
|
|
284
|
+
export async function storeWorkflowState(state, branchName) {
|
|
285
|
+
const branch = branchName ?? await getCurrentBranch();
|
|
286
|
+
if (state && branch) {
|
|
287
|
+
await execOrThrow('git', ['config', '--local', `branch.${branch}.idea1WorkflowState`, state]);
|
|
288
|
+
logger.dim(`Workflow state stored in git config for ${branch}`);
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
/**
|
|
292
|
+
* Retrieve workflow state from git config
|
|
293
|
+
*/
|
|
294
|
+
export async function getWorkflowState(branchName) {
|
|
295
|
+
const branch = branchName ?? await getCurrentBranch();
|
|
296
|
+
const result = await exec('git', ['config', '--local', '--get', `branch.${branch}.idea1WorkflowState`]);
|
|
297
|
+
return result.exitCode === 0 && result.stdout.trim() ? result.stdout.trim() : null;
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Check if there are unpushed commits on the branch
|
|
301
|
+
*/
|
|
302
|
+
export async function hasUnpushedCommits(branchName) {
|
|
303
|
+
const branch = branchName ?? await getCurrentBranch();
|
|
304
|
+
const result = await exec('git', ['log', `origin/${branch}..${branch}`, '--oneline']);
|
|
305
|
+
return result.exitCode === 0 && result.stdout.trim().length > 0;
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Ensure branch is up to date with no uncommitted changes and no unpushed commits
|
|
309
|
+
*/
|
|
310
|
+
export async function ensureBranchUpToDate() {
|
|
311
|
+
await ensureCleanWorkingDirectory();
|
|
312
|
+
const hasUnpushed = await hasUnpushedCommits();
|
|
313
|
+
if (hasUnpushed) {
|
|
314
|
+
throw new Error('You have unpushed commits. Please push your changes before proceeding.');
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
318
|
+
* Delete a branch locally and optionally from remote
|
|
319
|
+
*/
|
|
320
|
+
export async function deleteBranch(branchName, deleteRemote = true) {
|
|
321
|
+
logger.step(`Deleting local branch ${branchName}...`);
|
|
322
|
+
await execOrThrow('git', ['branch', '-D', branchName]);
|
|
323
|
+
logger.success(`Local branch ${branchName} deleted`);
|
|
324
|
+
if (deleteRemote) {
|
|
325
|
+
logger.step(`Deleting remote branch ${branchName}...`);
|
|
326
|
+
await execOrThrow('git', ['push', 'origin', '--delete', branchName]);
|
|
327
|
+
logger.success(`Remote branch ${branchName} deleted`);
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
/**
|
|
331
|
+
* Checkout a branch
|
|
332
|
+
*/
|
|
333
|
+
export async function checkoutBranch(branchName) {
|
|
334
|
+
logger.step(`Checking out branch ${branchName}...`);
|
|
335
|
+
await execOrThrow('git', ['checkout', branchName]);
|
|
336
|
+
}
|
|
281
337
|
//# sourceMappingURL=git.js.map
|
package/dist/services/git.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/services/git.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/services/git.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,4 +15,61 @@ export declare function getPrBaseBranch(branchName: string): Promise<string | nu
|
|
|
15
15
|
* Create a PR if it doesn't already exist
|
|
16
16
|
*/
|
|
17
17
|
export declare function createPrIfNeeded(branchName: string, baseBranchName: string, projectItemUrl: string | null, draft?: boolean): Promise<PrInfo | null>;
|
|
18
|
+
/**
|
|
19
|
+
* Get PR info for a branch
|
|
20
|
+
*/
|
|
21
|
+
export declare function getPrInfo(branchName: string): Promise<PrInfo | null>;
|
|
22
|
+
/**
|
|
23
|
+
* Assign a reviewer to a PR
|
|
24
|
+
*/
|
|
25
|
+
export declare function assignReviewer(branchName: string, reviewer: string): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Approve a PR
|
|
28
|
+
*/
|
|
29
|
+
export declare function approvePr(branchName: string, comment?: string): Promise<boolean>;
|
|
30
|
+
export interface MergeResult {
|
|
31
|
+
success: boolean;
|
|
32
|
+
error?: string;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Merge a PR
|
|
36
|
+
*/
|
|
37
|
+
export declare function mergePr(branchName: string): Promise<MergeResult>;
|
|
38
|
+
/**
|
|
39
|
+
* Merge a PR with admin override (bypasses branch protections)
|
|
40
|
+
*/
|
|
41
|
+
export declare function mergePrWithAdminOverride(branchName: string): Promise<MergeResult>;
|
|
42
|
+
/**
|
|
43
|
+
* Delete a remote branch
|
|
44
|
+
*/
|
|
45
|
+
export declare function deleteRemoteBranch(branchName: string): Promise<boolean>;
|
|
46
|
+
/**
|
|
47
|
+
* Check if a PR is approved
|
|
48
|
+
*/
|
|
49
|
+
export declare function isPrApproved(branchName: string): Promise<boolean>;
|
|
50
|
+
/**
|
|
51
|
+
* Get the current authenticated GitHub user
|
|
52
|
+
*/
|
|
53
|
+
export declare function getCurrentUser(): Promise<string | null>;
|
|
54
|
+
export interface PrReviewInfo {
|
|
55
|
+
requestedReviewers: string[];
|
|
56
|
+
reviews: Array<{
|
|
57
|
+
author: string;
|
|
58
|
+
state: string;
|
|
59
|
+
}>;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Get review information for a PR including requested reviewers and existing reviews
|
|
63
|
+
*/
|
|
64
|
+
export declare function getPrReviewInfo(branchName: string): Promise<PrReviewInfo | null>;
|
|
65
|
+
export interface UserApprovalStatus {
|
|
66
|
+
isRequestedReviewer: boolean;
|
|
67
|
+
hasAlreadyApproved: boolean;
|
|
68
|
+
canApprove: boolean;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Check if the current user can and should approve the PR
|
|
72
|
+
* Returns whether user is a reviewer and hasn't already approved
|
|
73
|
+
*/
|
|
74
|
+
export declare function getUserApprovalStatus(branchName: string): Promise<UserApprovalStatus | null>;
|
|
18
75
|
//# sourceMappingURL=github.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/services/github.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAIrD;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAyBtG;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAchF;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,GAAG,IAAI,EAC7B,KAAK,UAAQ,GACZ,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAuCxB"}
|
|
1
|
+
{"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/services/github.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAIrD;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAyBtG;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAchF;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,GAAG,IAAI,EAC7B,KAAK,UAAQ,GACZ,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAuCxB;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAmB1E;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAWxF;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAmBtF;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAgBtE;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAiBvF;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAkB7E;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAcvE;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAa7D;AAED,MAAM,WAAW,YAAY;IAC3B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnD;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAkBtF;AAED,MAAM,WAAW,kBAAkB;IACjC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAqBlG"}
|
package/dist/services/github.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { exec, commandExists } from '../lib/shell.js';
|
|
1
|
+
import { exec, execOrThrow, commandExists } from '../lib/shell.js';
|
|
2
2
|
import { logger } from '../lib/logger.js';
|
|
3
3
|
/**
|
|
4
4
|
* Ensure GitHub CLI is available
|
|
@@ -87,4 +87,176 @@ export async function createPrIfNeeded(branchName, baseBranchName, projectItemUr
|
|
|
87
87
|
return null;
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* Get PR info for a branch
|
|
92
|
+
*/
|
|
93
|
+
export async function getPrInfo(branchName) {
|
|
94
|
+
await ensureGitHubCli();
|
|
95
|
+
const result = await exec('gh', [
|
|
96
|
+
'pr', 'view', branchName,
|
|
97
|
+
'--json', 'number,url,state',
|
|
98
|
+
'-q', '.'
|
|
99
|
+
]);
|
|
100
|
+
if (result.exitCode === 0 && result.stdout.trim()) {
|
|
101
|
+
try {
|
|
102
|
+
const prInfo = JSON.parse(result.stdout.trim());
|
|
103
|
+
return prInfo;
|
|
104
|
+
}
|
|
105
|
+
catch {
|
|
106
|
+
return null;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Assign a reviewer to a PR
|
|
113
|
+
*/
|
|
114
|
+
export async function assignReviewer(branchName, reviewer) {
|
|
115
|
+
await ensureGitHubCli();
|
|
116
|
+
logger.step(`Assigning reviewer ${reviewer} to PR for branch ${branchName}...`);
|
|
117
|
+
await execOrThrow('gh', [
|
|
118
|
+
'pr', 'edit', branchName,
|
|
119
|
+
'--add-reviewer', reviewer
|
|
120
|
+
]);
|
|
121
|
+
logger.success(`Reviewer ${reviewer} assigned successfully`);
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Approve a PR
|
|
125
|
+
*/
|
|
126
|
+
export async function approvePr(branchName, comment) {
|
|
127
|
+
await ensureGitHubCli();
|
|
128
|
+
const approvalComment = comment ?? 'Approved via idea1 CLI workflow';
|
|
129
|
+
logger.step(`Approving PR for branch ${branchName}...`);
|
|
130
|
+
const result = await exec('gh', [
|
|
131
|
+
'pr', 'review', branchName,
|
|
132
|
+
'--approve',
|
|
133
|
+
'--body', approvalComment
|
|
134
|
+
]);
|
|
135
|
+
if (result.exitCode === 0) {
|
|
136
|
+
logger.success('PR approved successfully');
|
|
137
|
+
return true;
|
|
138
|
+
}
|
|
139
|
+
return false;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Merge a PR
|
|
143
|
+
*/
|
|
144
|
+
export async function mergePr(branchName) {
|
|
145
|
+
await ensureGitHubCli();
|
|
146
|
+
logger.step(`Merging PR for branch ${branchName}...`);
|
|
147
|
+
const result = await exec('gh', [
|
|
148
|
+
'pr', 'merge', branchName,
|
|
149
|
+
'--merge'
|
|
150
|
+
]);
|
|
151
|
+
if (result.exitCode === 0) {
|
|
152
|
+
logger.success('PR merged successfully');
|
|
153
|
+
return { success: true };
|
|
154
|
+
}
|
|
155
|
+
return { success: false, error: result.stderr };
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Merge a PR with admin override (bypasses branch protections)
|
|
159
|
+
*/
|
|
160
|
+
export async function mergePrWithAdminOverride(branchName) {
|
|
161
|
+
await ensureGitHubCli();
|
|
162
|
+
logger.step(`Merging PR for branch ${branchName} with admin override...`);
|
|
163
|
+
const result = await exec('gh', [
|
|
164
|
+
'pr', 'merge', branchName,
|
|
165
|
+
'--merge',
|
|
166
|
+
'--admin'
|
|
167
|
+
]);
|
|
168
|
+
if (result.exitCode === 0) {
|
|
169
|
+
logger.success('PR merged successfully with admin override');
|
|
170
|
+
return { success: true };
|
|
171
|
+
}
|
|
172
|
+
return { success: false, error: result.stderr };
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Delete a remote branch
|
|
176
|
+
*/
|
|
177
|
+
export async function deleteRemoteBranch(branchName) {
|
|
178
|
+
await ensureGitHubCli();
|
|
179
|
+
logger.step(`Deleting remote branch ${branchName}...`);
|
|
180
|
+
const result = await exec('gh', [
|
|
181
|
+
'api', '-X', 'DELETE',
|
|
182
|
+
`repos/{owner}/{repo}/git/refs/heads/${branchName}`
|
|
183
|
+
]);
|
|
184
|
+
if (result.exitCode === 0) {
|
|
185
|
+
logger.success(`Remote branch ${branchName} deleted`);
|
|
186
|
+
return true;
|
|
187
|
+
}
|
|
188
|
+
// Branch might already be deleted
|
|
189
|
+
logger.dim(`Note: Remote branch ${branchName} may already be deleted`);
|
|
190
|
+
return false;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Check if a PR is approved
|
|
194
|
+
*/
|
|
195
|
+
export async function isPrApproved(branchName) {
|
|
196
|
+
await ensureGitHubCli();
|
|
197
|
+
const result = await exec('gh', [
|
|
198
|
+
'pr', 'view', branchName,
|
|
199
|
+
'--json', 'reviewDecision',
|
|
200
|
+
'-q', '.reviewDecision'
|
|
201
|
+
]);
|
|
202
|
+
if (result.exitCode === 0 && result.stdout.trim() === 'APPROVED') {
|
|
203
|
+
return true;
|
|
204
|
+
}
|
|
205
|
+
return false;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Get the current authenticated GitHub user
|
|
209
|
+
*/
|
|
210
|
+
export async function getCurrentUser() {
|
|
211
|
+
await ensureGitHubCli();
|
|
212
|
+
const result = await exec('gh', [
|
|
213
|
+
'api', 'user',
|
|
214
|
+
'-q', '.login'
|
|
215
|
+
]);
|
|
216
|
+
if (result.exitCode === 0 && result.stdout.trim()) {
|
|
217
|
+
return result.stdout.trim();
|
|
218
|
+
}
|
|
219
|
+
return null;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Get review information for a PR including requested reviewers and existing reviews
|
|
223
|
+
*/
|
|
224
|
+
export async function getPrReviewInfo(branchName) {
|
|
225
|
+
await ensureGitHubCli();
|
|
226
|
+
const result = await exec('gh', [
|
|
227
|
+
'pr', 'view', branchName,
|
|
228
|
+
'--json', 'reviewRequests,reviews',
|
|
229
|
+
'-q', '{ requestedReviewers: [.reviewRequests[].login], reviews: [.reviews[] | { author: .author.login, state: .state }] }'
|
|
230
|
+
]);
|
|
231
|
+
if (result.exitCode === 0 && result.stdout.trim()) {
|
|
232
|
+
try {
|
|
233
|
+
return JSON.parse(result.stdout.trim());
|
|
234
|
+
}
|
|
235
|
+
catch {
|
|
236
|
+
return null;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
return null;
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Check if the current user can and should approve the PR
|
|
243
|
+
* Returns whether user is a reviewer and hasn't already approved
|
|
244
|
+
*/
|
|
245
|
+
export async function getUserApprovalStatus(branchName) {
|
|
246
|
+
const currentUser = await getCurrentUser();
|
|
247
|
+
if (!currentUser) {
|
|
248
|
+
return null;
|
|
249
|
+
}
|
|
250
|
+
const reviewInfo = await getPrReviewInfo(branchName);
|
|
251
|
+
if (!reviewInfo) {
|
|
252
|
+
return null;
|
|
253
|
+
}
|
|
254
|
+
const isRequestedReviewer = reviewInfo.requestedReviewers.includes(currentUser);
|
|
255
|
+
const hasAlreadyApproved = reviewInfo.reviews.some(review => review.author === currentUser && review.state === 'APPROVED');
|
|
256
|
+
return {
|
|
257
|
+
isRequestedReviewer,
|
|
258
|
+
hasAlreadyApproved,
|
|
259
|
+
canApprove: isRequestedReviewer && !hasAlreadyApproved
|
|
260
|
+
};
|
|
261
|
+
}
|
|
90
262
|
//# sourceMappingURL=github.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/services/github.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/services/github.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { WorkflowState, WorkflowTransition, PrInfo } from '../types/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Validate if a transition is valid from the current workflow state
|
|
4
|
+
*/
|
|
5
|
+
export declare function validateTransition(transition: WorkflowTransition): Promise<{
|
|
6
|
+
valid: boolean;
|
|
7
|
+
currentState: WorkflowState | null;
|
|
8
|
+
error?: string;
|
|
9
|
+
}>;
|
|
10
|
+
/**
|
|
11
|
+
* Get the next available transition from the current workflow state
|
|
12
|
+
*/
|
|
13
|
+
export declare function getNextTransition(): Promise<WorkflowTransition | null>;
|
|
14
|
+
/**
|
|
15
|
+
* Ensure all workflow preconditions are met before proceeding
|
|
16
|
+
*/
|
|
17
|
+
export declare function ensureWorkflowPreconditions(): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Get comprehensive workflow status for the current branch
|
|
20
|
+
*/
|
|
21
|
+
export declare function getWorkflowStatus(): Promise<{
|
|
22
|
+
branch: string;
|
|
23
|
+
baseBranch: string | null;
|
|
24
|
+
projectItemUrl: string | null;
|
|
25
|
+
workflowState: WorkflowState | null;
|
|
26
|
+
prInfo: PrInfo | null;
|
|
27
|
+
}>;
|
|
28
|
+
//# sourceMappingURL=workflow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../src/services/workflow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAenF;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,kBAAkB,GAC7B,OAAO,CAAC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,aAAa,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA0BjF;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAU5E;AAED;;GAEG;AACH,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAUjE;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;IACpC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC,CA8CD"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import * as git from './git.js';
|
|
2
|
+
import * as github from './github.js';
|
|
3
|
+
/**
|
|
4
|
+
* Valid workflow state transitions
|
|
5
|
+
*/
|
|
6
|
+
const VALID_TRANSITIONS = {
|
|
7
|
+
'Agent implementation': ['start-dev-implementation'],
|
|
8
|
+
'Dev implementation': ['ready-for-approval'],
|
|
9
|
+
'PR needs Approval': ['approve-pr'],
|
|
10
|
+
'Complete': []
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Validate if a transition is valid from the current workflow state
|
|
14
|
+
*/
|
|
15
|
+
export async function validateTransition(transition) {
|
|
16
|
+
const currentState = await git.getWorkflowState();
|
|
17
|
+
if (!currentState) {
|
|
18
|
+
return {
|
|
19
|
+
valid: false,
|
|
20
|
+
currentState: null,
|
|
21
|
+
error: 'No workflow state found. This branch may not be under workflow management.'
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
const validTransitions = VALID_TRANSITIONS[currentState];
|
|
25
|
+
if (!validTransitions || !validTransitions.includes(transition)) {
|
|
26
|
+
const availableTransitions = validTransitions && validTransitions.length > 0
|
|
27
|
+
? `Available transitions: ${validTransitions.join(', ')}`
|
|
28
|
+
: 'No transitions available from this state.';
|
|
29
|
+
return {
|
|
30
|
+
valid: false,
|
|
31
|
+
currentState,
|
|
32
|
+
error: `Cannot perform '${transition}' from state '${currentState}'. ${availableTransitions}`
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
return { valid: true, currentState };
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Get the next available transition from the current workflow state
|
|
39
|
+
*/
|
|
40
|
+
export async function getNextTransition() {
|
|
41
|
+
const currentState = await git.getWorkflowState();
|
|
42
|
+
if (!currentState) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
const validTransitions = VALID_TRANSITIONS[currentState];
|
|
46
|
+
return validTransitions && validTransitions.length > 0 ? validTransitions[0] : null;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Ensure all workflow preconditions are met before proceeding
|
|
50
|
+
*/
|
|
51
|
+
export async function ensureWorkflowPreconditions() {
|
|
52
|
+
const projectItemUrl = await git.getProjectItemUrl();
|
|
53
|
+
if (!projectItemUrl) {
|
|
54
|
+
throw new Error('This branch is not under workflow management. Start with: idea1 start-project-item <url>');
|
|
55
|
+
}
|
|
56
|
+
await git.ensureBranchUpToDate();
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Get comprehensive workflow status for the current branch
|
|
60
|
+
*/
|
|
61
|
+
export async function getWorkflowStatus() {
|
|
62
|
+
let branch = '';
|
|
63
|
+
let baseBranch = null;
|
|
64
|
+
let projectItemUrl = null;
|
|
65
|
+
let workflowState = null;
|
|
66
|
+
let prInfo = null;
|
|
67
|
+
try {
|
|
68
|
+
branch = await git.getCurrentBranch();
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
// Ignore error, branch will be empty string
|
|
72
|
+
}
|
|
73
|
+
try {
|
|
74
|
+
baseBranch = await git.getBaseBranch();
|
|
75
|
+
}
|
|
76
|
+
catch {
|
|
77
|
+
// Ignore error, baseBranch will be null
|
|
78
|
+
}
|
|
79
|
+
try {
|
|
80
|
+
projectItemUrl = await git.getProjectItemUrl();
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
// Ignore error, projectItemUrl will be null
|
|
84
|
+
}
|
|
85
|
+
try {
|
|
86
|
+
workflowState = await git.getWorkflowState();
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
// Ignore error, workflowState will be null
|
|
90
|
+
}
|
|
91
|
+
try {
|
|
92
|
+
if (branch) {
|
|
93
|
+
prInfo = await github.getPrInfo(branch);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
catch {
|
|
97
|
+
// Ignore error, prInfo will be null
|
|
98
|
+
}
|
|
99
|
+
return {
|
|
100
|
+
branch,
|
|
101
|
+
baseBranch,
|
|
102
|
+
projectItemUrl,
|
|
103
|
+
workflowState,
|
|
104
|
+
prInfo
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=workflow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/services/workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ClaudePermissionMode } from '../types/index.js';
|
|
1
2
|
/**
|
|
2
3
|
* Run the setup-worktree hook if defined in .idea1/settings.json
|
|
3
4
|
*/
|
|
@@ -24,6 +25,7 @@ export declare function resolveBaseBranch(cliBaseBranch?: string): Promise<strin
|
|
|
24
25
|
export declare function setupWorktreeIsolation(fullBranchName: string, shortBranchName: string, baseBranchName: string, options?: {
|
|
25
26
|
projectItemUrl?: string;
|
|
26
27
|
launchClaude?: boolean;
|
|
28
|
+
permissionMode?: ClaudePermissionMode;
|
|
27
29
|
}): Promise<string>;
|
|
28
30
|
/**
|
|
29
31
|
* Prepare repository for worktree creation - validates, fetches, and creates branch
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree.d.ts","sourceRoot":"","sources":["../../src/services/worktree.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worktree.d.ts","sourceRoot":"","sources":["../../src/services/worktree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAQ9D;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAe1E;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA0B7E;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA0B/E;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,EACtB,OAAO,GAAE;IACP,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,oBAAoB,CAAC;CAClC,GACL,OAAO,CAAC,MAAM,CAAC,CAmCjB;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,CAqBjB"}
|
|
@@ -102,10 +102,10 @@ export async function setupWorktreeIsolation(fullBranchName, shortBranchName, ba
|
|
|
102
102
|
// Run claude command if requested
|
|
103
103
|
if (options.launchClaude !== false && options.projectItemUrl) {
|
|
104
104
|
const prompt = claude.getImplementationPrompt(options.projectItemUrl);
|
|
105
|
-
await claude.runInteractive(prompt, worktreePath);
|
|
105
|
+
await claude.runInteractive(prompt, worktreePath, options.permissionMode);
|
|
106
106
|
}
|
|
107
107
|
else if (options.launchClaude !== false && !options.projectItemUrl) {
|
|
108
|
-
await claude.runInteractive(undefined, worktreePath);
|
|
108
|
+
await claude.runInteractive(undefined, worktreePath, options.permissionMode);
|
|
109
109
|
}
|
|
110
110
|
// Output the final directory path for the user
|
|
111
111
|
logger.newline();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../src/services/worktree.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../src/services/worktree.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,QAAgB;IACzD,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAEzD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC7C,OAAO;IACT,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,gCAAgC,WAAW,EAAE,CAAC,CAAC;IAE3D,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEhF,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,MAAM,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,SAAkB;IAC1D,kBAAkB;IAClB,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,2BAA2B;IAC3B,MAAM,UAAU,GAAG,aAAa,CAAC,sBAAsB,EAAE,CAAC;IAC1D,IAAI,UAAU,IAAI,UAAU,KAAK,eAAe,EAAE,CAAC;QACjD,uDAAuD;QACvD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,yBAAyB;IACzB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,cAAc,CAAC;QACxB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,6BAA6B;IAC/B,CAAC;IAED,4DAA4D;IAC5D,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,aAAsB;IAC5D,kBAAkB;IAClB,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,2BAA2B;IAC3B,MAAM,cAAc,GAAG,aAAa,CAAC,oBAAoB,EAAE,CAAC;IAC5D,IAAI,cAAc,IAAI,cAAc,KAAK,iBAAiB,EAAE,CAAC;QAC3D,uDAAuD;QACvD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,yBAAyB;IACzB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,kBAAkB,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO,kBAAkB,CAAC;QAC5B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,6BAA6B;IAC/B,CAAC;IAED,4DAA4D;IAC5D,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,cAAsB,EACtB,eAAuB,EACvB,cAAsB,EACtB,UAII,EAAE;IAEN,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAEhD,sBAAsB;IACtB,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;IAE/E,qCAAqC;IACrC,MAAM,GAAG,CAAC,qBAAqB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAE9D,uDAAuD;IACvD,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,MAAM,GAAG,CAAC,mBAAmB,CAAC,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,GAAG,CAAC,eAAe,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAE1D,0CAA0C;IAC1C,MAAM,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAEzC,kCAAkC;IAClC,IAAI,OAAO,CAAC,YAAY,KAAK,KAAK,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,uBAAuB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACtE,MAAM,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAC5E,CAAC;SAAM,IAAI,OAAO,CAAC,YAAY,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QACrE,MAAM,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAC/E,CAAC;IAED,+CAA+C;IAC/C,MAAM,CAAC,OAAO,EAAE,CAAC;IACjB,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IAC3D,MAAM,CAAC,KAAK,CAAC,OAAO,YAAY,GAAG,CAAC,CAAC;IACrC,MAAM,CAAC,OAAO,EAAE,CAAC;IACjB,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IAC1D,MAAM,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;IAExF,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,eAAuB,EACvB,cAAsB,EACtB,YAAoB;IAEpB,iCAAiC;IACjC,MAAM,GAAG,CAAC,2BAA2B,EAAE,CAAC;IAExC,8BAA8B;IAC9B,MAAM,gBAAgB,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAChE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,gBAAgB,cAAc,uCAAuC,CAAC,CAAC;IACzF,CAAC;IAED,wDAAwD;IACxD,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;IACxB,MAAM,GAAG,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;IAEhD,MAAM,cAAc,GAAG,GAAG,YAAY,IAAI,eAAe,EAAE,CAAC;IAC5D,MAAM,GAAG,CAAC,mBAAmB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAC9D,MAAM,GAAG,CAAC,sBAAsB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAEjE,MAAM,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;IAErE,OAAO,cAAc,CAAC;AACxB,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -109,6 +109,10 @@ export interface PushOptions {
|
|
|
109
109
|
createPr: boolean;
|
|
110
110
|
destBranch: string;
|
|
111
111
|
}
|
|
112
|
+
/**
|
|
113
|
+
* Valid Claude permission modes
|
|
114
|
+
*/
|
|
115
|
+
export type ClaudePermissionMode = 'acceptEdits' | 'bypassPermissions' | 'default' | 'delegate' | 'dontAsk' | 'plan';
|
|
112
116
|
/**
|
|
113
117
|
* Start project item options
|
|
114
118
|
*/
|
|
@@ -118,6 +122,7 @@ export interface StartProjectItemOptions {
|
|
|
118
122
|
baseBranch: string;
|
|
119
123
|
buildImage: boolean;
|
|
120
124
|
disableFirewall: boolean;
|
|
125
|
+
permissionMode: ClaudePermissionMode;
|
|
121
126
|
}
|
|
122
127
|
/**
|
|
123
128
|
* Close worktree options
|
|
@@ -156,4 +161,33 @@ export interface ReleaseOptions {
|
|
|
156
161
|
/** PR title */
|
|
157
162
|
title?: string;
|
|
158
163
|
}
|
|
164
|
+
/**
|
|
165
|
+
* Workflow state representing the current status of a project item
|
|
166
|
+
*/
|
|
167
|
+
export type WorkflowState = 'Agent implementation' | 'Dev implementation' | 'PR needs Approval' | 'Complete';
|
|
168
|
+
/**
|
|
169
|
+
* Workflow transition command names for moving between workflow states
|
|
170
|
+
*/
|
|
171
|
+
export type WorkflowTransition = 'start-dev-implementation' | 'ready-for-approval' | 'approve-pr';
|
|
172
|
+
/**
|
|
173
|
+
* Options for the start-dev-implementation transition
|
|
174
|
+
*/
|
|
175
|
+
export interface StartDevImplementationOptions {
|
|
176
|
+
/** Source path for the implementation */
|
|
177
|
+
sourcePath?: string;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Options for the ready-for-approval transition
|
|
181
|
+
*/
|
|
182
|
+
export interface ReadyForApprovalOptions {
|
|
183
|
+
/** Reviewer to assign for approval */
|
|
184
|
+
reviewer?: string;
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Options for the approve-pr transition
|
|
188
|
+
*/
|
|
189
|
+
export interface ApprovePrOptions {
|
|
190
|
+
/** Comment to add when approving */
|
|
191
|
+
comment?: string;
|
|
192
|
+
}
|
|
159
193
|
//# sourceMappingURL=index.d.ts.map
|