@idea1/cli 1.8.2 → 1.9.0

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 (147) hide show
  1. package/README.md +205 -69
  2. package/dist/cli/resolver.d.ts +1 -0
  3. package/dist/cli/resolver.d.ts.map +1 -1
  4. package/dist/cli/resolver.js +5 -0
  5. package/dist/cli/resolver.js.map +1 -1
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +2 -1
  8. package/dist/cli.js.map +1 -1
  9. package/dist/commands/approve-pr.d.ts.map +1 -1
  10. package/dist/commands/approve-pr.js +24 -41
  11. package/dist/commands/approve-pr.js.map +1 -1
  12. package/dist/commands/attach-project-item.d.ts.map +1 -1
  13. package/dist/commands/attach-project-item.js +27 -7
  14. package/dist/commands/attach-project-item.js.map +1 -1
  15. package/dist/commands/close-worktree.d.ts.map +1 -1
  16. package/dist/commands/close-worktree.js +4 -3
  17. package/dist/commands/close-worktree.js.map +1 -1
  18. package/dist/commands/help.d.ts.map +1 -1
  19. package/dist/commands/help.js +17 -11
  20. package/dist/commands/help.js.map +1 -1
  21. package/dist/commands/index.d.ts +2 -1
  22. package/dist/commands/index.d.ts.map +1 -1
  23. package/dist/commands/index.js +3 -1
  24. package/dist/commands/index.js.map +1 -1
  25. package/dist/commands/integrate.d.ts +13 -0
  26. package/dist/commands/integrate.d.ts.map +1 -0
  27. package/dist/commands/integrate.js +128 -0
  28. package/dist/commands/integrate.js.map +1 -0
  29. package/dist/commands/join-project-item.d.ts.map +1 -1
  30. package/dist/commands/join-project-item.js +22 -48
  31. package/dist/commands/join-project-item.js.map +1 -1
  32. package/dist/commands/next-workflow-step.d.ts.map +1 -1
  33. package/dist/commands/next-workflow-step.js +20 -21
  34. package/dist/commands/next-workflow-step.js.map +1 -1
  35. package/dist/commands/ready-for-approval.d.ts.map +1 -1
  36. package/dist/commands/ready-for-approval.js +27 -19
  37. package/dist/commands/ready-for-approval.js.map +1 -1
  38. package/dist/commands/release.d.ts +6 -0
  39. package/dist/commands/release.d.ts.map +1 -1
  40. package/dist/commands/release.js +189 -25
  41. package/dist/commands/release.js.map +1 -1
  42. package/dist/commands/ship-local-changes.d.ts +8 -0
  43. package/dist/commands/ship-local-changes.d.ts.map +1 -0
  44. package/dist/commands/ship-local-changes.js +34 -0
  45. package/dist/commands/ship-local-changes.js.map +1 -0
  46. package/dist/commands/start-agent-implementation.js +2 -2
  47. package/dist/commands/start-agent-implementation.js.map +1 -1
  48. package/dist/commands/start-dev-implementation.d.ts.map +1 -1
  49. package/dist/commands/start-dev-implementation.js +8 -3
  50. package/dist/commands/start-dev-implementation.js.map +1 -1
  51. package/dist/commands/start-project-item.d.ts +27 -0
  52. package/dist/commands/start-project-item.d.ts.map +1 -0
  53. package/dist/commands/start-project-item.js +325 -0
  54. package/dist/commands/start-project-item.js.map +1 -0
  55. package/dist/commands/start.d.ts +8 -2
  56. package/dist/commands/start.d.ts.map +1 -1
  57. package/dist/commands/start.js +76 -35
  58. package/dist/commands/start.js.map +1 -1
  59. package/dist/index.js +0 -0
  60. package/dist/interactive.d.ts.map +1 -1
  61. package/dist/interactive.js +164 -0
  62. package/dist/interactive.js.map +1 -1
  63. package/dist/jobs/job.d.ts +81 -0
  64. package/dist/jobs/job.d.ts.map +1 -0
  65. package/dist/jobs/job.js +258 -0
  66. package/dist/jobs/job.js.map +1 -0
  67. package/dist/jobs/targets.d.ts +58 -0
  68. package/dist/jobs/targets.d.ts.map +1 -0
  69. package/dist/jobs/targets.js +215 -0
  70. package/dist/jobs/targets.js.map +1 -0
  71. package/dist/lib/claude-options.d.ts +3 -2
  72. package/dist/lib/claude-options.d.ts.map +1 -1
  73. package/dist/lib/claude-options.js +15 -4
  74. package/dist/lib/claude-options.js.map +1 -1
  75. package/dist/lib/logger.d.ts +10 -0
  76. package/dist/lib/logger.d.ts.map +1 -1
  77. package/dist/lib/logger.js +16 -0
  78. package/dist/lib/logger.js.map +1 -1
  79. package/dist/lib/prompt.d.ts +7 -0
  80. package/dist/lib/prompt.d.ts.map +1 -1
  81. package/dist/lib/prompt.js +29 -0
  82. package/dist/lib/prompt.js.map +1 -1
  83. package/dist/lib/settings.d.ts +13 -3
  84. package/dist/lib/settings.d.ts.map +1 -1
  85. package/dist/lib/settings.js +12 -3
  86. package/dist/lib/settings.js.map +1 -1
  87. package/dist/lib/shell.d.ts +2 -1
  88. package/dist/lib/shell.d.ts.map +1 -1
  89. package/dist/lib/shell.js +17 -1
  90. package/dist/lib/shell.js.map +1 -1
  91. package/dist/services/git.d.ts +41 -13
  92. package/dist/services/git.d.ts.map +1 -1
  93. package/dist/services/git.js +85 -46
  94. package/dist/services/git.js.map +1 -1
  95. package/dist/services/github.d.ts +28 -0
  96. package/dist/services/github.d.ts.map +1 -1
  97. package/dist/services/github.js +82 -3
  98. package/dist/services/github.js.map +1 -1
  99. package/dist/services/setup.d.ts +4 -2
  100. package/dist/services/setup.d.ts.map +1 -1
  101. package/dist/services/setup.js +61 -37
  102. package/dist/services/setup.js.map +1 -1
  103. package/dist/services/workflow.d.ts +17 -0
  104. package/dist/services/workflow.d.ts.map +1 -0
  105. package/dist/services/workflow.js +39 -0
  106. package/dist/services/workflow.js.map +1 -0
  107. package/dist/services/worktree.js +1 -1
  108. package/dist/services/worktree.js.map +1 -1
  109. package/dist/types/index.d.ts +25 -24
  110. package/dist/types/index.d.ts.map +1 -1
  111. package/dist/version.d.ts +2 -1
  112. package/dist/version.d.ts.map +1 -1
  113. package/dist/version.js +3 -2
  114. package/dist/version.js.map +1 -1
  115. package/dist/workflow/engine/approval-flow.d.ts +10 -2
  116. package/dist/workflow/engine/approval-flow.d.ts.map +1 -1
  117. package/dist/workflow/engine/approval-flow.js +58 -9
  118. package/dist/workflow/engine/approval-flow.js.map +1 -1
  119. package/dist/workflow/engine/handlers/agent-implementation.d.ts.map +1 -1
  120. package/dist/workflow/engine/handlers/agent-implementation.js +4 -11
  121. package/dist/workflow/engine/handlers/agent-implementation.js.map +1 -1
  122. package/dist/workflow/engine/handlers/approve-pr.d.ts.map +1 -1
  123. package/dist/workflow/engine/handlers/approve-pr.js +9 -3
  124. package/dist/workflow/engine/handlers/approve-pr.js.map +1 -1
  125. package/dist/workflow/engine/handlers/dev-implementation.d.ts +2 -2
  126. package/dist/workflow/engine/handlers/dev-implementation.d.ts.map +1 -1
  127. package/dist/workflow/engine/handlers/dev-implementation.js +13 -7
  128. package/dist/workflow/engine/handlers/dev-implementation.js.map +1 -1
  129. package/dist/workflow/engine/handlers/ready-for-approval.d.ts +5 -0
  130. package/dist/workflow/engine/handlers/ready-for-approval.d.ts.map +1 -1
  131. package/dist/workflow/engine/handlers/ready-for-approval.js +11 -7
  132. package/dist/workflow/engine/handlers/ready-for-approval.js.map +1 -1
  133. package/dist/workflow/engine/{release-flow.d.ts → release-engine.d.ts} +83 -6
  134. package/dist/workflow/engine/release-engine.d.ts.map +1 -0
  135. package/dist/workflow/engine/{release-flow.js → release-engine.js} +291 -19
  136. package/dist/workflow/engine/release-engine.js.map +1 -0
  137. package/dist/workflow/engine/ship-flow.d.ts +87 -0
  138. package/dist/workflow/engine/ship-flow.d.ts.map +1 -0
  139. package/dist/workflow/engine/ship-flow.js +221 -0
  140. package/dist/workflow/engine/ship-flow.js.map +1 -0
  141. package/dist/workflow/engine/workflow-engine.d.ts +85 -15
  142. package/dist/workflow/engine/workflow-engine.d.ts.map +1 -1
  143. package/dist/workflow/engine/workflow-engine.js +195 -66
  144. package/dist/workflow/engine/workflow-engine.js.map +1 -1
  145. package/package.json +3 -3
  146. package/dist/workflow/engine/release-flow.d.ts.map +0 -1
  147. package/dist/workflow/engine/release-flow.js.map +0 -1
@@ -1,10 +1,15 @@
1
1
  import { logger } from '../lib/logger.js';
2
- import { readBranchSettings } from '../lib/settings.js';
3
- import { promptInput } from '../lib/prompt.js';
4
- import { runHook } from '../services/hooks.js';
2
+ import { readBranchSettings, readReleaseSettings } from '../lib/settings.js';
3
+ import { promptInput, promptSelect } from '../lib/prompt.js';
4
+ import { deferredHandlerOptions } from '../workflow/engine/handlers/index.js';
5
5
  import * as git from '../services/git.js';
6
6
  import * as github from '../services/github.js';
7
- import { PR_MODE_OPTION, RELEASE_KIND, createGatedPr, runPrMode, validateSourceBranch } from '../workflow/engine/release-flow.js';
7
+ import { runJob } from '../jobs/job.js';
8
+ import { TARGET_OPTION_NAME, parseTargets, prepareTargetRuns, promptForTargets } from '../jobs/targets.js';
9
+ import { WorkflowStates } from '../workflow/data/workflow-states.js';
10
+ import { mergeConfirmationOption } from '../workflow/engine/approval-flow.js';
11
+ import { approvePrCommand } from './approve-pr.js';
12
+ import { PR_MODE_OPTION, RELEASE_KIND, VERSION_BUMP_TYPES, approveRelease, commitVersionBumps, createGatedPr, detectPendingVersionBumps, runPrMode, validateSourceBranch } from '../workflow/engine/release-engine.js';
8
13
  /**
9
14
  * Resolve the release branch (source branch)
10
15
  */
@@ -12,7 +17,7 @@ async function resolveReleaseBranch(cliBranch) {
12
17
  if (cliBranch) {
13
18
  return cliBranch;
14
19
  }
15
- return (await readBranchSettings(await git.getRepoRoot())).releaseBranch;
20
+ return (await readBranchSettings(await git.getRepoRoot())).baseBranch;
16
21
  }
17
22
  /**
18
23
  * Resolve the target branch
@@ -31,18 +36,132 @@ async function promptPrTitle() {
31
36
  return promptInput('Enter PR title:', { default: defaultTitle });
32
37
  }
33
38
  /**
34
- * Release-time automation declared by the repository (`pre-release` in .idea1/settings.json -
35
- * here the version bumps). It runs before the PR is opened so the PR's head, and the one CI/CD
36
- * run the release is gated on, already include whatever it committed.
39
+ * Why a `--bumps` value is malformed, or undefined when it is well formed: comma-separated
40
+ * `<package>=<patch|minor|major>` entries, e.g. `filekit=minor,cli=patch`.
37
41
  */
38
- async function runPreReleaseHook() {
39
- logger.step('Running pre-release hook...');
40
- const repoRoot = await git.getRepoRoot();
41
- const hookResult = await runHook('pre-release', repoRoot);
42
- if (!hookResult.success) {
43
- throw new Error('Pre-release hook failed. Aborting release.');
42
+ function bumpsOptionError(value) {
43
+ for (const entry of value.split(',').map(part => part.trim()).filter(part => part.length > 0)) {
44
+ const [name, type, ...rest] = entry.split('=').map(part => part.trim());
45
+ if (!name || rest.length > 0 || !VERSION_BUMP_TYPES.includes(type)) {
46
+ return `"${entry}" is not <package>=<${VERSION_BUMP_TYPES.join('|')}> (e.g. filekit=minor,cli=patch)`;
47
+ }
48
+ }
49
+ return undefined;
50
+ }
51
+ /** The bump types a well-formed `--bumps` value names, by package name. */
52
+ function parseBumpsOption(value) {
53
+ return new Map(value.split(',')
54
+ .map(part => part.trim())
55
+ .filter(part => part.length > 0)
56
+ .map(entry => {
57
+ const [name, type] = entry.split('=').map(part => part.trim());
58
+ return [name, type];
59
+ }));
60
+ }
61
+ /**
62
+ * The versioned packages that need a bump for the release, with the bump type of each: from
63
+ * `--bumps`, else asked. Counts the changes of `incomingBranches`, the branches approved into the
64
+ * release branch before it is released, as the release's own. None when the repository declares no
65
+ * versioned packages, or when a release PR is already open: a bump is never made onto an open
66
+ * release PR, which may already be approved.
67
+ */
68
+ async function resolvePendingBumps(sourceBranch, targetBranch, requestedBumps, incomingBranches) {
69
+ const settings = await readReleaseSettings(await git.getRepoRoot());
70
+ if (settings.versionedPackages.length === 0) {
71
+ if (requestedBumps.size > 0) {
72
+ throw new Error('--bumps was given, but this repository declares no release.versionedPackages in .idea1/settings.json.');
73
+ }
74
+ return { pending: [], bumps: {} };
75
+ }
76
+ const knownNames = settings.versionedPackages.map(pkg => pkg.name);
77
+ const unknownNames = [...requestedBumps.keys()].filter(name => !knownNames.includes(name));
78
+ if (unknownNames.length > 0) {
79
+ throw new Error(`--bumps names unknown package(s): ${unknownNames.join(', ')}. ` +
80
+ `The versioned packages are: ${knownNames.join(', ')}.`);
81
+ }
82
+ if (await github.checkPrExists(sourceBranch, targetBranch)) {
83
+ logger.dim('A release PR is already open, so no version bump is made onto it');
84
+ logger.newline();
85
+ return { pending: [], bumps: {} };
86
+ }
87
+ logger.step('Checking which versioned packages changed since the last release...');
88
+ const pending = await detectPendingVersionBumps(settings.versionedPackages, sourceBranch, targetBranch, incomingBranches);
89
+ if (pending.length === 0) {
90
+ logger.success('No versioned package needs a version bump');
91
+ logger.newline();
92
+ return { pending, bumps: {} };
93
+ }
94
+ const bumps = {};
95
+ for (const pkg of pending) {
96
+ bumps[pkg.name] = requestedBumps.get(pkg.name) ?? await promptBumpType(pkg);
97
+ }
98
+ for (const name of requestedBumps.keys()) {
99
+ if (!(name in bumps)) {
100
+ logger.dim(`${name} is unchanged or already bumped for this release - ignoring its --bumps entry`);
101
+ }
44
102
  }
45
103
  logger.newline();
104
+ return { pending, bumps };
105
+ }
106
+ /**
107
+ * Bump the versions of the packages that changed since the last release, before the PR is opened,
108
+ * so the PR's head - and the one CI/CD run the release is gated on - already carries them. The
109
+ * bump is made here, in the local checkout: the packages' `package.json` and lockfiles are edited,
110
+ * committed and pushed to the release branch. Nothing is asked, and nothing is committed, when no
111
+ * versioned package needs a bump.
112
+ */
113
+ async function bumpPendingVersions(sourceBranch, targetBranch, requestedBumps) {
114
+ const { pending, bumps } = await resolvePendingBumps(sourceBranch, targetBranch, requestedBumps, []);
115
+ if (pending.length === 0) {
116
+ return;
117
+ }
118
+ await commitVersionBumps({ releaseBranch: sourceBranch, pending, bumps });
119
+ logger.newline();
120
+ }
121
+ async function promptBumpType(pkg) {
122
+ return await promptSelect(`The ${pkg.label} (${pkg.currentVersion}) changed since the last release - version bump:`, VERSION_BUMP_TYPES.map(type => ({ label: type, value: type })), { default: 'patch' });
123
+ }
124
+ const isApprove = (resolved) => resolved['approve'] === 'true';
125
+ /**
126
+ * Release the release branch once the given project items and branches are approved into it: every
127
+ * target's PR is approved - merged once its checks pass - in parallel, each in its own unattended
128
+ * run, and once all of them have merged the release itself runs, exactly as it does on its own.
129
+ * Every answer is asked before anything starts, so the whole sequence runs unattended. The first
130
+ * target that fails stops the others, and nothing is released.
131
+ */
132
+ async function releaseWithApprovals(sourceBranch, targetBranch, targets, resolved) {
133
+ logger.header(`Release: ${sourceBranch} -> ${targetBranch}, once ${targets.length} target(s) are approved into ${sourceBranch}`);
134
+ logger.newline();
135
+ // The release runs in this checkout once the approvals have merged, so it must be fit for that now.
136
+ await validateSourceBranch(sourceBranch);
137
+ const { runs, summaries } = await prepareTargetRuns(approvePrCommand, targets, resolved, {
138
+ advancesTo: () => WorkflowStates.ApprovedAndMerged,
139
+ itemlessBranches: true
140
+ });
141
+ const { bumps } = await resolvePendingBumps(sourceBranch, targetBranch, parseBumpsOption(resolved['bumps']), summaries.flatMap(summary => summary.branchName ? [summary.branchName] : []));
142
+ const title = resolved['title'] || await promptPrTitle();
143
+ // Every bump the release may need: those asked for here, and any other the command line named.
144
+ const bumpsValue = Object.entries({ ...Object.fromEntries(parseBumpsOption(resolved['bumps'])), ...bumps })
145
+ .map(([name, type]) => `${name}=${type}`)
146
+ .join(',');
147
+ await runJob({
148
+ title: `release ${sourceBranch} -> ${targetBranch} once ${runs.length} target(s) are approved`,
149
+ runs,
150
+ followUp: {
151
+ label: `release ${sourceBranch} -> ${targetBranch}`,
152
+ args: [
153
+ releaseCommand.name,
154
+ '--branch', sourceBranch,
155
+ '--target-branch', targetBranch,
156
+ `--${TARGET_OPTION_NAME}`, '',
157
+ '--bumps', bumpsValue,
158
+ '--title', title,
159
+ '--pr-mode', resolved['pr-mode'],
160
+ `--${mergeConfirmationOption.longName}`
161
+ ]
162
+ },
163
+ failFast: true
164
+ });
46
165
  }
47
166
  /**
48
167
  * Stage 2 of change management (change-management-policy.md clause 2): the release PR from the
@@ -50,11 +169,18 @@ async function runPreReleaseHook() {
50
169
  * releaser and the approver, and their merge is the recorded approval. No review is required:
51
170
  * every change in the release was already approved on its own PR, and the body lists them. What
52
171
  * this stage gates is the build - the required CI/CD checks must pass before the merge.
172
+ *
173
+ * Before the PR is opened, the packages that changed since the last release get their version
174
+ * bumps, committed and pushed to the release branch by this command. `--approve` instead approves
175
+ * and merges the release PR that is already open. With `--target`, the named project items and
176
+ * branches are approved into the release branch first, and the release follows once all of them
177
+ * have merged.
53
178
  */
54
179
  export const releaseCommand = {
55
180
  name: 'release',
56
181
  aliases: ['r', 'rel'],
57
- description: 'Open the release PR from the release branch into main, assigned to you, and merge it once the checks pass',
182
+ description: 'Bump the versions of changed packages, open the release PR from the release branch into main assigned to you, ' +
183
+ 'and merge it once the checks pass - optionally approving items or branches into the release branch first (--approve merges the open release PR)',
58
184
  options: [
59
185
  {
60
186
  longName: 'branch',
@@ -64,32 +190,69 @@ export const releaseCommand = {
64
190
  promptWhenDefaultExists: false
65
191
  },
66
192
  {
67
- longName: 'target',
193
+ longName: 'target-branch',
68
194
  shortName: 't',
69
195
  description: 'Target branch to release to',
70
196
  defaultValue: '',
71
197
  promptWhenDefaultExists: false
72
198
  },
73
- PR_MODE_OPTION,
199
+ {
200
+ longName: 'approve',
201
+ description: 'Approve and merge the open release PR instead of opening one',
202
+ isFlag: true
203
+ },
204
+ {
205
+ longName: TARGET_OPTION_NAME,
206
+ description: 'Project items, branches or PR URLs to approve into the release branch first, releasing once all have merged (default: release the branch as it is)',
207
+ defaultValue: '',
208
+ // Releasing the branch as it is and approving work into it first are both picked here.
209
+ resolveValue: async () => (await promptForTargets('release the release branch as it is')).join(','),
210
+ dependsOn: resolved => !isApprove(resolved)
211
+ },
212
+ {
213
+ longName: 'bumps',
214
+ description: 'Version bump per changed package, e.g. filekit=minor,cli=patch (changed packages not named are prompted)',
215
+ defaultValue: '',
216
+ promptWhenDefaultExists: false,
217
+ validate: bumpsOptionError,
218
+ dependsOn: resolved => !isApprove(resolved)
219
+ },
220
+ { ...PR_MODE_OPTION, dependsOn: resolved => !isApprove(resolved) },
74
221
  {
75
222
  longName: 'title',
76
223
  description: 'PR title',
77
224
  defaultValue: '',
78
- promptWhenDefaultExists: false
79
- }
225
+ promptWhenDefaultExists: false,
226
+ dependsOn: resolved => !isApprove(resolved)
227
+ },
228
+ { ...mergeConfirmationOption, description: 'Merge the release PR without asking for confirmation, in merge mode (the merge still waits for the required checks)' },
229
+ // The approvals a release can start with ask for the options of the workflow states their
230
+ // items pass through on the way.
231
+ ...deferredHandlerOptions([mergeConfirmationOption])
80
232
  ],
81
233
  async execute(resolved) {
82
234
  const branchArg = resolved['branch'] || undefined;
83
- const targetArg = resolved['target'] || undefined;
84
- const prMode = resolved['pr-mode'];
85
- const titleArg = resolved['title'] || undefined;
235
+ const targetArg = resolved['target-branch'] || undefined;
86
236
  const sourceBranch = await resolveReleaseBranch(branchArg);
87
237
  const targetBranch = await resolveTargetBranch(targetArg);
238
+ await github.ensureGitHubCli();
239
+ if (isApprove(resolved)) {
240
+ logger.header(`Approve release: ${sourceBranch} -> ${targetBranch}`);
241
+ logger.newline();
242
+ await approveRelease(sourceBranch, targetBranch);
243
+ return;
244
+ }
245
+ const targets = parseTargets(resolved[TARGET_OPTION_NAME] ?? '');
246
+ if (targets.length > 0) {
247
+ await releaseWithApprovals(sourceBranch, targetBranch, targets, resolved);
248
+ return;
249
+ }
250
+ const prMode = resolved['pr-mode'];
251
+ const titleArg = resolved['title'] || undefined;
88
252
  logger.header(`Release: ${sourceBranch} -> ${targetBranch}`);
89
253
  logger.newline();
90
- await github.ensureGitHubCli();
91
254
  await validateSourceBranch(sourceBranch);
92
- await runPreReleaseHook();
255
+ await bumpPendingVersions(sourceBranch, targetBranch, parseBumpsOption(resolved['bumps']));
93
256
  const prTitle = titleArg ?? await promptPrTitle();
94
257
  logger.info(`Using title: ${prTitle}`);
95
258
  logger.info(`PR mode: ${prMode}`);
@@ -109,7 +272,8 @@ export const releaseCommand = {
109
272
  targetBranch,
110
273
  prUrl,
111
274
  kind: RELEASE_KIND,
112
- openActionsAfterMerge: true
275
+ openActionsAfterMerge: true,
276
+ confirmed: resolved[mergeConfirmationOption.longName] === 'true'
113
277
  });
114
278
  logger.newline();
115
279
  logger.hint(`PR: ${prUrl}`);
@@ -1 +1 @@
1
- {"version":3,"file":"release.js","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"release.js","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { Command } from '../types/index.js';
2
+ /**
3
+ * `start --carry-local-changes --approve-and-merge` with nothing asked beyond what a new item
4
+ * needs (its title and Project): the uncommitted changes of the base branch checkout become a
5
+ * project item's branch and PR, which merges into the base branch once the required checks pass.
6
+ */
7
+ export declare const shipLocalChangesCommand: Command;
8
+ //# sourceMappingURL=ship-local-changes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ship-local-changes.d.ts","sourceRoot":"","sources":["../../src/commands/ship-local-changes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAYjD;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,OAuBrC,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { isolationModeOption } from '../lib/isolation.js';
2
+ import { branchCreationOptions } from '../workflow/engine/branch-setup.js';
3
+ import { approveAndMergeOption, carryLocalChangesOption, commitMessageOption, unpromptedReviewersOption } from '../workflow/engine/ship-flow.js';
4
+ import { TARGET_OPTION_NAME } from '../jobs/targets.js';
5
+ import { projectItemTargetOptions, startProjectItem } from './start.js';
6
+ /**
7
+ * `start --carry-local-changes --approve-and-merge` with nothing asked beyond what a new item
8
+ * needs (its title and Project): the uncommitted changes of the base branch checkout become a
9
+ * project item's branch and PR, which merges into the base branch once the required checks pass.
10
+ */
11
+ export const shipLocalChangesCommand = {
12
+ name: 'ship-local-changes',
13
+ aliases: ['ship'],
14
+ description: 'Ship the uncommitted changes of your base branch checkout: create a project item and its branch, commit and push the changes there, and advance it through approval, merging its PR once the checks pass',
15
+ options: [
16
+ ...projectItemTargetOptions.map(option => option.longName === TARGET_OPTION_NAME
17
+ ? { ...option, description: 'Project item URL, or its branch name or PR URL (default: create a new item)', promptWhenDefaultExists: false }
18
+ : option),
19
+ ...branchCreationOptions
20
+ .filter(option => option.longName !== 'workflow-type')
21
+ .map(option => ({ ...option, defaultValue: '', promptWhenDefaultExists: false })),
22
+ commitMessageOption,
23
+ { ...isolationModeOption, description: 'Where to work on the branch while it is shipped', defaultValue: 'worktree', promptWhenDefaultExists: false },
24
+ unpromptedReviewersOption
25
+ ],
26
+ async execute(resolved) {
27
+ await startProjectItem({
28
+ ...resolved,
29
+ [carryLocalChangesOption.longName]: 'true',
30
+ [approveAndMergeOption.longName]: 'true'
31
+ });
32
+ }
33
+ };
34
+ //# sourceMappingURL=ship-local-changes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ship-local-changes.js","sourceRoot":"","sources":["../../src/commands/ship-local-changes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAExE;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAY;IAC9C,IAAI,EAAE,oBAAoB;IAC1B,OAAO,EAAE,CAAC,MAAM,CAAC;IACjB,WAAW,EAAE,0MAA0M;IACvN,OAAO,EAAE;QACP,GAAG,wBAAwB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,kBAAkB;YAC9E,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,6EAA6E,EAAE,uBAAuB,EAAE,KAAK,EAAE;YAC3I,CAAC,CAAC,MAAM,CAAC;QACX,GAAG,qBAAqB;aACrB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,eAAe,CAAC;aACrD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,uBAAuB,EAAE,KAAK,EAAE,CAAC,CAAC;QACnF,mBAAmB;QACnB,EAAE,GAAG,mBAAmB,EAAE,WAAW,EAAE,iDAAiD,EAAE,YAAY,EAAE,UAAU,EAAE,uBAAuB,EAAE,KAAK,EAAE;QACpJ,yBAAyB;KAC1B;IAED,KAAK,CAAC,OAAO,CAAC,QAAgC;QAC5C,MAAM,gBAAgB,CAAC;YACrB,GAAG,QAAQ;YACX,CAAC,uBAAuB,CAAC,QAAQ,CAAC,EAAE,MAAM;YAC1C,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,MAAM;SACzC,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -21,10 +21,10 @@ export const startAgentImplementationCommand = {
21
21
  process.chdir(sourcePath);
22
22
  }
23
23
  const projectItemUrl = await resolveOrCreateProjectItem(resolved);
24
- const transition = await resolveTransition({ projectItemUrl, options: resolved });
24
+ const transition = await resolveTransition({ target: projectItemUrl, options: resolved });
25
25
  if (transition.currentState && isStateAtOrAfter(transition.currentState, WorkflowStates.DevImplementation)) {
26
26
  throw new Error(`${projectItemUrl} is already past Agent Implementation (state: ${transition.currentState}). ` +
27
- `Use 'idea1 join-project-item --project-item-url ${projectItemUrl}' to set up a working environment.`);
27
+ `Use 'idea1 join-project-item --target ${projectItemUrl}' to set up a working environment.`);
28
28
  }
29
29
  logger.section('Agent Implementation');
30
30
  if (transition.currentState === WorkflowStates.AgentImplementation) {
@@ -1 +1 @@
1
- {"version":3,"file":"start-agent-implementation.js","sourceRoot":"","sources":["../../src/commands/start-agent-implementation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC3G,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAElF,MAAM,CAAC,MAAM,+BAA+B,GAAY;IACtD,IAAI,EAAE,4BAA4B;IAClC,gFAAgF;IAChF,OAAO,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,oBAAoB,CAAC;IACnD,WAAW,EAAE,sKAAsK;IACnL,OAAO,EAAE;QACP,GAAG,wBAAwB;QAC3B,GAAG,qBAAqB;QACxB,GAAG,CAAC,0BAA0B,CAAC,OAAO,IAAI,EAAE,CAAC;KAC9C;IAED,KAAK,CAAC,OAAO,CAAC,QAAgC;QAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC3C,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAClE,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;QAElF,IAAI,UAAU,CAAC,YAAY,IAAI,gBAAgB,CAAC,UAAU,CAAC,YAAY,EAAE,cAAc,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC3G,MAAM,IAAI,KAAK,CACb,GAAG,cAAc,iDAAiD,UAAU,CAAC,YAAY,KAAK;gBAC9F,mDAAmD,cAAc,oCAAoC,CACtG,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAEvC,IAAI,UAAU,CAAC,YAAY,KAAK,cAAc,CAAC,mBAAmB,EAAE,CAAC;YACnE,mGAAmG;YACnG,MAAM,QAAQ,GAAG,MAAM,aAAa,CAClC,GAAG,cAAc,sGAAsG,EACvH,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;YACF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;gBAC/C,OAAO;YACT,CAAC;YAED,MAAM,YAAY,CAAC,UAAU,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,MAAM,iBAAiB,CAAC,UAAU,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAAC;IAC1E,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"start-agent-implementation.js","sourceRoot":"","sources":["../../src/commands/start-agent-implementation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC3G,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAElF,MAAM,CAAC,MAAM,+BAA+B,GAAY;IACtD,IAAI,EAAE,4BAA4B;IAClC,gFAAgF;IAChF,OAAO,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,oBAAoB,CAAC;IACnD,WAAW,EAAE,sKAAsK;IACnL,OAAO,EAAE;QACP,GAAG,wBAAwB;QAC3B,GAAG,qBAAqB;QACxB,GAAG,CAAC,0BAA0B,CAAC,OAAO,IAAI,EAAE,CAAC;KAC9C;IAED,KAAK,CAAC,OAAO,CAAC,QAAgC;QAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC3C,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAClE,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;QAE1F,IAAI,UAAU,CAAC,YAAY,IAAI,gBAAgB,CAAC,UAAU,CAAC,YAAY,EAAE,cAAc,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC3G,MAAM,IAAI,KAAK,CACb,GAAG,cAAc,iDAAiD,UAAU,CAAC,YAAY,KAAK;gBAC9F,yCAAyC,cAAc,oCAAoC,CAC5F,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAEvC,IAAI,UAAU,CAAC,YAAY,KAAK,cAAc,CAAC,mBAAmB,EAAE,CAAC;YACnE,mGAAmG;YACnG,MAAM,QAAQ,GAAG,MAAM,aAAa,CAClC,GAAG,cAAc,sGAAsG,EACvH,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;YACF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;gBAC/C,OAAO;YACT,CAAC;YAED,MAAM,YAAY,CAAC,UAAU,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,MAAM,iBAAiB,CAAC,UAAU,EAAE,cAAc,CAAC,mBAAmB,CAAC,CAAC;IAC1E,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"start-dev-implementation.d.ts","sourceRoot":"","sources":["../../src/commands/start-dev-implementation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAKjD,eAAO,MAAM,6BAA6B,EAAE,OAwB3C,CAAC"}
1
+ {"version":3,"file":"start-dev-implementation.d.ts","sourceRoot":"","sources":["../../src/commands/start-dev-implementation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAMjD,eAAO,MAAM,6BAA6B,EAAE,OA4B3C,CAAC"}
@@ -1,11 +1,13 @@
1
1
  import { WorkflowStates } from '../workflow/data/workflow-states.js';
2
2
  import { advanceAsNeededTo, resolveTransition } from '../workflow/engine/workflow-engine.js';
3
3
  import { deferredHandlerOptions } from '../workflow/engine/handlers/index.js';
4
+ import { runForTargets, targetOption } from '../jobs/targets.js';
4
5
  export const startDevImplementationCommand = {
5
6
  name: 'start-dev-implementation',
6
7
  aliases: ['dev'],
7
- description: 'Advance the item to Dev Implementation (through every state before it) - commits and pushes the work, creates the PR and optionally closes the worktree',
8
+ description: 'Advance project items to Dev Implementation (through every state before it) - commits and pushes the work, creates the PR and optionally closes the worktree; several run in parallel',
8
9
  options: [
10
+ targetOption(false),
9
11
  {
10
12
  longName: 'source-path',
11
13
  shortName: 'p',
@@ -20,8 +22,11 @@ export const startDevImplementationCommand = {
20
22
  if (sourcePath) {
21
23
  process.chdir(sourcePath);
22
24
  }
23
- const transition = await resolveTransition({ options: resolved });
24
- await advanceAsNeededTo(transition, WorkflowStates.DevImplementation);
25
+ await runForTargets(startDevImplementationCommand, resolved, {
26
+ advancesTo: () => WorkflowStates.DevImplementation,
27
+ itemlessBranches: false,
28
+ run: async (target) => advanceAsNeededTo(await resolveTransition({ target, options: resolved }), WorkflowStates.DevImplementation)
29
+ });
25
30
  }
26
31
  };
27
32
  //# sourceMappingURL=start-dev-implementation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"start-dev-implementation.js","sourceRoot":"","sources":["../../src/commands/start-dev-implementation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,MAAM,CAAC,MAAM,6BAA6B,GAAY;IACpD,IAAI,EAAE,0BAA0B;IAChC,OAAO,EAAE,CAAC,KAAK,CAAC;IAChB,WAAW,EAAE,yJAAyJ;IACtK,OAAO,EAAE;QACP;YACE,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,GAAG;YACd,WAAW,EAAE,4BAA4B;YACzC,YAAY,EAAE,EAAE;YAChB,uBAAuB,EAAE,KAAK;SAC/B;QACD,GAAG,sBAAsB,CAAC,EAAE,CAAC;KAC9B;IAED,KAAK,CAAC,OAAO,CAAC,QAAgC;QAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC3C,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClE,MAAM,iBAAiB,CAAC,UAAU,EAAE,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACxE,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"start-dev-implementation.js","sourceRoot":"","sources":["../../src/commands/start-dev-implementation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC7F,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,CAAC,MAAM,6BAA6B,GAAY;IACpD,IAAI,EAAE,0BAA0B;IAChC,OAAO,EAAE,CAAC,KAAK,CAAC;IAChB,WAAW,EAAE,uLAAuL;IACpM,OAAO,EAAE;QACP,YAAY,CAAC,KAAK,CAAC;QACnB;YACE,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,GAAG;YACd,WAAW,EAAE,4BAA4B;YACzC,YAAY,EAAE,EAAE;YAChB,uBAAuB,EAAE,KAAK;SAC/B;QACD,GAAG,sBAAsB,CAAC,EAAE,CAAC;KAC9B;IAED,KAAK,CAAC,OAAO,CAAC,QAAgC;QAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC3C,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;QAED,MAAM,aAAa,CAAC,6BAA6B,EAAE,QAAQ,EAAE;YAC3D,UAAU,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,iBAAiB;YAClD,gBAAgB,EAAE,KAAK;YACvB,GAAG,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE,CAAC,iBAAiB,CAAC,MAAM,iBAAiB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,cAAc,CAAC,iBAAiB,CAAC;SACjI,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { Command, ClaudePermissionMode, ClaudeEffortLevel } from '../types/index.js';
2
+ export declare const VALID_PERMISSION_MODES: ClaudePermissionMode[];
3
+ export declare const VALID_EFFORT_LEVELS: ClaudeEffortLevel[];
4
+ export declare const WORKFLOW_CHOICES: {
5
+ label: string;
6
+ value: string;
7
+ }[];
8
+ export interface IntegrationBranchSelection {
9
+ integrationName: string;
10
+ integrationBranchName: string;
11
+ isNew: boolean;
12
+ }
13
+ /**
14
+ * Prompt the user whether to stack this branch on another and resolve the
15
+ * chosen stack branch. Prompt-only: performs no branch writes. Returns the
16
+ * resolved stack branch name, or null when the user opts not to stack.
17
+ * Shared by start-project-item and attach-project-item.
18
+ */
19
+ export declare function promptForStackBranch(): Promise<string | null>;
20
+ /**
21
+ * Prompt the user for integration-branch selection. Prompt-only: does not
22
+ * perform any branch writes. Must be invoked before setWorkflowStatus so the
23
+ * user completes all setup questions up front.
24
+ */
25
+ export declare function promptForIntegrationBranch(): Promise<IntegrationBranchSelection>;
26
+ export declare const startProjectItemCommand: Command;
27
+ //# sourceMappingURL=start-project-item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start-project-item.d.ts","sourceRoot":"","sources":["../../src/commands/start-project-item.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,oBAAoB,EAAwB,iBAAiB,EAAkC,MAAM,mBAAmB,CAAC;AAUhJ,eAAO,MAAM,sBAAsB,EAAE,oBAAoB,EAAmF,CAAC;AAE7I,eAAO,MAAM,mBAAmB,EAAE,iBAAiB,EAA8C,CAAC;AAQlG,eAAO,MAAM,gBAAgB;;;GAG5B,CAAC;AAkBF,MAAM,WAAW,0BAA0B;IACzC,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA6BnE;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,0BAA0B,CAAC,CAoBtF;AAED,eAAO,MAAM,uBAAuB,EAAE,OAqLrC,CAAC"}