@idea1/cli 1.8.2 → 1.8.3

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 (93) hide show
  1. package/README.md +92 -18
  2. package/dist/commands/approve-pr.js +5 -5
  3. package/dist/commands/approve-pr.js.map +1 -1
  4. package/dist/commands/attach-project-item.d.ts.map +1 -1
  5. package/dist/commands/attach-project-item.js +27 -7
  6. package/dist/commands/attach-project-item.js.map +1 -1
  7. package/dist/commands/help.d.ts.map +1 -1
  8. package/dist/commands/help.js +8 -6
  9. package/dist/commands/help.js.map +1 -1
  10. package/dist/commands/index.d.ts +2 -1
  11. package/dist/commands/index.d.ts.map +1 -1
  12. package/dist/commands/index.js +3 -1
  13. package/dist/commands/index.js.map +1 -1
  14. package/dist/commands/integrate.d.ts +13 -0
  15. package/dist/commands/integrate.d.ts.map +1 -0
  16. package/dist/commands/integrate.js +128 -0
  17. package/dist/commands/integrate.js.map +1 -0
  18. package/dist/commands/ready-for-approval.js +1 -1
  19. package/dist/commands/ready-for-approval.js.map +1 -1
  20. package/dist/commands/release.d.ts +4 -0
  21. package/dist/commands/release.d.ts.map +1 -1
  22. package/dist/commands/release.js +105 -20
  23. package/dist/commands/release.js.map +1 -1
  24. package/dist/commands/ship-local-changes.d.ts +8 -0
  25. package/dist/commands/ship-local-changes.d.ts.map +1 -0
  26. package/dist/commands/ship-local-changes.js +33 -0
  27. package/dist/commands/ship-local-changes.js.map +1 -0
  28. package/dist/commands/start-project-item.d.ts +27 -0
  29. package/dist/commands/start-project-item.d.ts.map +1 -0
  30. package/dist/commands/start-project-item.js +325 -0
  31. package/dist/commands/start-project-item.js.map +1 -0
  32. package/dist/commands/start.d.ts +6 -0
  33. package/dist/commands/start.d.ts.map +1 -1
  34. package/dist/commands/start.js +53 -18
  35. package/dist/commands/start.js.map +1 -1
  36. package/dist/index.js +0 -0
  37. package/dist/lib/claude-options.d.ts +3 -2
  38. package/dist/lib/claude-options.d.ts.map +1 -1
  39. package/dist/lib/claude-options.js +15 -4
  40. package/dist/lib/claude-options.js.map +1 -1
  41. package/dist/lib/settings.d.ts +13 -3
  42. package/dist/lib/settings.d.ts.map +1 -1
  43. package/dist/lib/settings.js +12 -3
  44. package/dist/lib/settings.js.map +1 -1
  45. package/dist/services/git.d.ts +34 -13
  46. package/dist/services/git.d.ts.map +1 -1
  47. package/dist/services/git.js +75 -39
  48. package/dist/services/git.js.map +1 -1
  49. package/dist/services/github.d.ts +15 -0
  50. package/dist/services/github.d.ts.map +1 -1
  51. package/dist/services/github.js +47 -0
  52. package/dist/services/github.js.map +1 -1
  53. package/dist/services/setup.d.ts.map +1 -1
  54. package/dist/services/setup.js +18 -24
  55. package/dist/services/setup.js.map +1 -1
  56. package/dist/services/workflow.d.ts +17 -0
  57. package/dist/services/workflow.d.ts.map +1 -0
  58. package/dist/services/workflow.js +39 -0
  59. package/dist/services/workflow.js.map +1 -0
  60. package/dist/types/index.d.ts +18 -24
  61. package/dist/types/index.d.ts.map +1 -1
  62. package/dist/version.d.ts +2 -1
  63. package/dist/version.d.ts.map +1 -1
  64. package/dist/version.js +3 -2
  65. package/dist/version.js.map +1 -1
  66. package/dist/workflow/engine/approval-flow.d.ts +8 -1
  67. package/dist/workflow/engine/approval-flow.d.ts.map +1 -1
  68. package/dist/workflow/engine/approval-flow.js +23 -8
  69. package/dist/workflow/engine/approval-flow.js.map +1 -1
  70. package/dist/workflow/engine/handlers/agent-implementation.js +1 -1
  71. package/dist/workflow/engine/handlers/agent-implementation.js.map +1 -1
  72. package/dist/workflow/engine/handlers/approve-pr.d.ts.map +1 -1
  73. package/dist/workflow/engine/handlers/approve-pr.js +9 -3
  74. package/dist/workflow/engine/handlers/approve-pr.js.map +1 -1
  75. package/dist/workflow/engine/handlers/ready-for-approval.d.ts +5 -0
  76. package/dist/workflow/engine/handlers/ready-for-approval.d.ts.map +1 -1
  77. package/dist/workflow/engine/handlers/ready-for-approval.js +11 -7
  78. package/dist/workflow/engine/handlers/ready-for-approval.js.map +1 -1
  79. package/dist/workflow/engine/{release-flow.d.ts → release-engine.d.ts} +77 -6
  80. package/dist/workflow/engine/release-engine.d.ts.map +1 -0
  81. package/dist/workflow/engine/{release-flow.js → release-engine.js} +279 -17
  82. package/dist/workflow/engine/release-engine.js.map +1 -0
  83. package/dist/workflow/engine/ship-flow.d.ts +87 -0
  84. package/dist/workflow/engine/ship-flow.d.ts.map +1 -0
  85. package/dist/workflow/engine/ship-flow.js +227 -0
  86. package/dist/workflow/engine/ship-flow.js.map +1 -0
  87. package/dist/workflow/engine/workflow-engine.d.ts +18 -2
  88. package/dist/workflow/engine/workflow-engine.d.ts.map +1 -1
  89. package/dist/workflow/engine/workflow-engine.js +58 -19
  90. package/dist/workflow/engine/workflow-engine.js.map +1 -1
  91. package/package.json +2 -2
  92. package/dist/workflow/engine/release-flow.d.ts.map +0 -1
  93. package/dist/workflow/engine/release-flow.js.map +0 -1
@@ -12,7 +12,6 @@ const DEFAULT_SETTINGS = {
12
12
  defaults: {
13
13
  branchPrefix: DEFAULT_BRANCH_SETTINGS.branchPrefix,
14
14
  baseBranch: DEFAULT_BRANCH_SETTINGS.baseBranch,
15
- releaseBranch: DEFAULT_BRANCH_SETTINGS.releaseBranch,
16
15
  releaseTargetBranch: DEFAULT_BRANCH_SETTINGS.releaseTargetBranch,
17
16
  integrationBranchPrefix: DEFAULT_BRANCH_SETTINGS.integrationBranchPrefix,
18
17
  integrationBranchTemplate: DEFAULT_BRANCH_SETTINGS.integrationBranchTemplate,
@@ -36,8 +35,7 @@ This folder contains configuration for the Idea1 CLI.
36
35
  | Property | Description | Default |
37
36
  |----------|-------------|---------|
38
37
  | \`branchPrefix\` | Prefix for new branches | \`working/agent\` |
39
- | \`baseBranch\` | Branch new branches are cut from, and the target of their PRs | \`working/release\` |
40
- | \`releaseBranch\` | Branch a release is cut from | \`working/release\` |
38
+ | \`baseBranch\` | Branch new branches are cut from, the target of their PRs, and the branch a release is cut from | \`working/release\` |
41
39
  | \`releaseTargetBranch\` | Branch a release merges into | \`main\` |
42
40
  | \`integrationBranchPrefix\` | Prefix for integration branches | \`working/integration\` |
43
41
  | \`integrationBranchTemplate\` | Integration branch name template | \`{prefix}/{name}-main\` |
@@ -52,9 +50,7 @@ Hooks are shell scripts that run at specific points in the workflow. All hooks a
52
50
  | Hook | When it runs |
53
51
  |------|--------------|
54
52
  | \`setup-worktree\` | After creating a new git worktree |
55
- | \`pre-release\` | During \`idea1 release\`, before the release PR is opened - for release-time automation such as version bumps. The PR, its check gate and its merge belong to the CLI |
56
53
 
57
- **Simple hook:**
58
54
  \`\`\`json
59
55
  {
60
56
  "hooks": {
@@ -63,26 +59,24 @@ Hooks are shell scripts that run at specific points in the workflow. All hooks a
63
59
  }
64
60
  \`\`\`
65
61
 
66
- **Hook with user inputs:**
62
+ ### release (optional)
63
+
64
+ The packages \`idea1 release\` can version. Before the release PR is opened, every versioned
65
+ package whose folder changed since the last release (and whose version has not moved yet) gets
66
+ a version bump: its \`package.json\` version, and the lockfiles above it, are updated and
67
+ committed to the release branch by \`idea1 release\` itself (the Idea1 web app makes the same
68
+ bump). Without this section a release has no version bump step.
69
+
70
+ | Property | Description |
71
+ |----------|-------------|
72
+ | \`versionedPackages\` | The packages a release can bump: \`name\` (used by \`--bumps\`), \`label\` (shown in prompts) and \`path\` (the folder holding the package's \`package.json\`) |
73
+
67
74
  \`\`\`json
68
75
  {
69
- "hooks": {
70
- "pre-release": {
71
- "command": "scripts/version-bump.sh",
72
- "inputs": [
73
- {
74
- "name": "version-type",
75
- "type": "select",
76
- "label": "Select version bump type",
77
- "default": "patch",
78
- "choices": [
79
- { "label": "patch", "value": "patch" },
80
- { "label": "minor", "value": "minor" },
81
- { "label": "major", "value": "major" }
82
- ]
83
- }
84
- ]
85
- }
76
+ "release": {
77
+ "versionedPackages": [
78
+ { "name": "cli", "label": "CLI package", "path": "packages/cli" }
79
+ ]
86
80
  }
87
81
  }
88
82
  \`\`\`
@@ -92,7 +86,7 @@ Hooks are shell scripts that run at specific points in the workflow. All hooks a
92
86
  Optional, git-ignored file with the same shape as \`settings.json\`. Anything it
93
87
  defines overrides the committed settings for this clone only, so developer-specific
94
88
  preferences don't have to be shared with the team. Each section is merged
95
- individually, so overriding one hook or default leaves the rest in place.
89
+ individually, so overriding one hook, default or release setting leaves the rest in place.
96
90
 
97
91
  \`\`\`json
98
92
  {
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/services/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/services/setup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { WorkflowState, PrInfo } from '../types/index.js';
2
+ /**
3
+ * Get comprehensive workflow status for the current branch: the item it implements, the item's
4
+ * state and the branch record, from the platform (see `workflow-branch`). A branch this clone has
5
+ * never resolved as an item's is reported as unmanaged without a platform read, so the interactive
6
+ * header is instant on ordinary branches.
7
+ */
8
+ export declare function getWorkflowStatus(options?: {
9
+ includePrInfo?: boolean;
10
+ }): Promise<{
11
+ branch: string;
12
+ baseBranch: string | null;
13
+ projectItemUrl: string | null;
14
+ workflowState: WorkflowState | null;
15
+ prInfo: PrInfo | null;
16
+ }>;
17
+ //# 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,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAM/D;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC;IACtF,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,CA4BD"}
@@ -0,0 +1,39 @@
1
+ import * as git from './git.js';
2
+ import * as github from './github.js';
3
+ import * as workflowBranch from './workflow-branch.js';
4
+ import { normalizeWorkflowState } from '../lib/workflow-states.js';
5
+ /**
6
+ * Get comprehensive workflow status for the current branch: the item it implements, the item's
7
+ * state and the branch record, from the platform (see `workflow-branch`). A branch this clone has
8
+ * never resolved as an item's is reported as unmanaged without a platform read, so the interactive
9
+ * header is instant on ordinary branches.
10
+ */
11
+ export async function getWorkflowStatus(options) {
12
+ let branch = '';
13
+ try {
14
+ branch = await git.getCurrentBranch();
15
+ }
16
+ catch {
17
+ // Not in a repository
18
+ }
19
+ const context = branch && branch !== 'HEAD' && await workflowBranch.getRememberedProjectItemUrl(branch)
20
+ ? await workflowBranch.getBranchContext(branch).catch(() => null)
21
+ : null;
22
+ let prInfo = null;
23
+ if (options?.includePrInfo !== false && branch) {
24
+ try {
25
+ prInfo = await github.getPrInfo(branch);
26
+ }
27
+ catch {
28
+ // Ignore error, prInfo will be null
29
+ }
30
+ }
31
+ return {
32
+ branch,
33
+ baseBranch: context?.branch?.baseBranch ?? null,
34
+ projectItemUrl: context?.projectItem.url ?? null,
35
+ workflowState: normalizeWorkflowState(context?.projectItem.workflowStatus),
36
+ prInfo
37
+ };
38
+ }
39
+ //# sourceMappingURL=workflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/services/workflow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,cAAc,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAqC;IAO3E,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,sBAAsB;IACxB,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,cAAc,CAAC,2BAA2B,CAAC,MAAM,CAAC;QACrG,CAAC,CAAC,MAAM,cAAc,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;QACjE,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,OAAO,EAAE,aAAa,KAAK,KAAK,IAAI,MAAM,EAAE,CAAC;QAC/C,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,oCAAoC;QACtC,CAAC;IACH,CAAC;IAED,OAAO;QACL,MAAM;QACN,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,IAAI,IAAI;QAC/C,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,IAAI,IAAI;QAChD,aAAa,EAAE,sBAAsB,CAAC,OAAO,EAAE,WAAW,CAAC,cAAc,CAAC;QAC1E,MAAM;KACP,CAAC;AACJ,CAAC"}
@@ -62,34 +62,12 @@ export interface Command {
62
62
  options?: CommandOption[];
63
63
  execute: (resolved: Record<string, string>) => Promise<void>;
64
64
  }
65
- /**
66
- * Hook input definition for collecting user input before running a hook
67
- */
68
- export interface HookInput {
69
- /** Name used as the CLI argument (e.g., "version-type" becomes --version-type) */
70
- name: string;
71
- /** Display label for the prompt */
72
- label: string;
73
- /** Input type: 'text' for free-form input, 'select' for menu selection */
74
- type: 'text' | 'select';
75
- /** Default value (user can press Enter to accept) */
76
- default?: string;
77
- /** Choices for 'select' type */
78
- choices?: Array<{
79
- label: string;
80
- value: string;
81
- }>;
82
- }
83
65
  /**
84
66
  * Hook configuration object
85
67
  */
86
68
  export interface HookConfig {
87
69
  /** Command to execute (relative to repo root) */
88
70
  command: string;
89
- /** User inputs to collect before running the hook */
90
- inputs?: HookInput[];
91
- /** Working directory for the hook (relative to repo root, defaults to repo root) */
92
- cwd?: string;
93
71
  }
94
72
  /**
95
73
  * A hook can be either a simple string (command) or a full config object
@@ -102,13 +80,23 @@ export type PromptTemplateSetting = string | {
102
80
  /** Path of the template file, relative to the repo root */
103
81
  templateFile: string;
104
82
  };
83
+ /**
84
+ * A package whose version a release bumps when its folder changed since the last release.
85
+ */
86
+ export interface VersionedPackage {
87
+ /** Name `idea1 release --bumps` and the web release view know the package by, e.g. `cli`. */
88
+ name: string;
89
+ /** What prompts call the package, e.g. `idea1 CLI`. */
90
+ label: string;
91
+ /** The package's folder, relative to the repo root; it holds the package's package.json. */
92
+ path: string;
93
+ }
105
94
  /**
106
95
  * Idea1 settings from .idea1/settings.json, overlaid with .idea1/settings.local.json
107
96
  */
108
97
  export interface Idea1Settings {
109
98
  hooks?: {
110
99
  'setup-worktree'?: Hook;
111
- 'pre-release'?: Hook;
112
100
  };
113
101
  prompts?: {
114
102
  /** The prompt an Agent Implementation session starts with. */
@@ -118,7 +106,6 @@ export interface Idea1Settings {
118
106
  branchPrefix?: string;
119
107
  baseBranch?: string;
120
108
  testCommand?: string;
121
- releaseBranch?: string;
122
109
  releaseTargetBranch?: string;
123
110
  integrationBranchPrefix?: string;
124
111
  integrationBranchTemplate?: string;
@@ -130,6 +117,13 @@ export interface Idea1Settings {
130
117
  */
131
118
  removeWorktreeAtState?: WorkflowState;
132
119
  };
120
+ release?: {
121
+ /**
122
+ * The packages a release can bump: repository folders holding a `package.json`. A release
123
+ * bumps those whose folder changed since the last release, before the release PR is opened.
124
+ */
125
+ versionedPackages?: VersionedPackage[];
126
+ };
133
127
  }
134
128
  /**
135
129
  * Valid Claude permission modes
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1,2 +1,3 @@
1
- export declare const VERSION = "1.8.2";
1
+ /** The CLI's version: the `version` in its `package.json`, which sits beside both `src/` and `dist/`. */
2
+ export declare const VERSION: string;
2
3
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO,UAAU,CAAC"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAEA,yGAAyG;AACzG,eAAO,MAAM,OAAO,EAAE,MAAwH,CAAC"}
package/dist/version.js CHANGED
@@ -1,3 +1,4 @@
1
- // Auto-generated by scripts/generate-version.js - do not edit manually
2
- export const VERSION = '1.8.2';
1
+ import { readFileSync } from 'fs';
2
+ /** The CLI's version: the `version` in its `package.json`, which sits beside both `src/` and `dist/`. */
3
+ export const VERSION = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf-8')).version;
3
4
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAElC,yGAAyG;AACzG,MAAM,CAAC,MAAM,OAAO,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAyB,CAAC,OAAO,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { PrInfo } from '../../types/index.js';
1
+ import type { CommandOption, PrInfo } from '../../types/index.js';
2
2
  /**
3
3
  * Stage 1 of change management as it applies to a branch and its PR
4
4
  * (change-management-policy.md clause 2): the PR gets its assignee - the approver of record -
@@ -28,10 +28,17 @@ export interface ReadyForApprovalInput {
28
28
  * to be created gets the approval chain of what the branch carries as its body.
29
29
  */
30
30
  export declare function ensurePrReadyForApproval(input: ReadyForApprovalInput): Promise<PrInfo>;
31
+ /**
32
+ * Merge without being asked to confirm, for an approver who has already decided - a scripted run,
33
+ * say. The merge still waits for the required checks.
34
+ */
35
+ export declare const mergeConfirmationOption: CommandOption;
31
36
  export interface MergeAsApproverInput {
32
37
  branchName: string;
33
38
  baseBranch: string;
34
39
  prNumber: number;
40
+ /** The approver already said to merge (`--yes`), so the merge is not confirmed again. */
41
+ confirmed: boolean;
35
42
  }
36
43
  /**
37
44
  * The stage-1 approval: the assignee merges the PR once the required checks pass. There is no
@@ -1 +1 @@
1
- {"version":3,"file":"approval-flow.d.ts","sourceRoot":"","sources":["../../../src/workflow/engine/approval-flow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAQnD;;;;;;;GAOG;AAEH,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,QAAQ,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,iBAAiB,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC7C;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAgC5F;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBhF;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,qFAAqF;IACrF,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqCxF"}
1
+ {"version":3,"file":"approval-flow.d.ts","sourceRoot":"","sources":["../../../src/workflow/engine/approval-flow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAQlE;;;;;;;GAOG;AAEH,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,QAAQ,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,iBAAiB,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC7C;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAgC5F;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,aAKrC,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,yFAAyF;IACzF,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BhF;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,qFAAqF;IACrF,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwCxF"}
@@ -3,7 +3,7 @@ import { promptConfirm } from '../../lib/prompt.js';
3
3
  import * as git from '../../services/git.js';
4
4
  import * as github from '../../services/github.js';
5
5
  import { removeCurrentWorktree, resolveBaseBranch } from '../../services/worktree.js';
6
- import { CHANGE_KIND, createGatedPr } from './release-flow.js';
6
+ import { CHANGE_KIND, createGatedPr } from './release-engine.js';
7
7
  /**
8
8
  * The PR that carries the change, with its assignee and any requested reviewers set. A PR that has
9
9
  * to be created gets the approval chain of what the branch carries as its body.
@@ -39,6 +39,16 @@ export async function ensurePrReadyForApproval(input) {
39
39
  logger.hint(`PR: ${prInfo.url}`);
40
40
  return prInfo;
41
41
  }
42
+ /**
43
+ * Merge without being asked to confirm, for an approver who has already decided - a scripted run,
44
+ * say. The merge still waits for the required checks.
45
+ */
46
+ export const mergeConfirmationOption = {
47
+ longName: 'yes',
48
+ shortName: 'y',
49
+ description: 'Merge without asking for confirmation (the merge still waits for the required checks)',
50
+ isFlag: true
51
+ };
42
52
  /**
43
53
  * The stage-1 approval: the assignee merges the PR once the required checks pass. There is no
44
54
  * admin override here (change-management-policy.md clause 3) - a red or unfinished suite stops it,
@@ -46,9 +56,11 @@ export async function ensurePrReadyForApproval(input) {
46
56
  */
47
57
  export async function mergeAsApprover(input) {
48
58
  const { branchName, baseBranch, prNumber } = input;
49
- const confirmMerge = await promptConfirm(`Approve PR #${prNumber} by merging it (${branchName} -> ${baseBranch})?`, { default: true });
50
- if (!confirmMerge) {
51
- throw new Error('Merge cancelled by user');
59
+ if (!input.confirmed) {
60
+ const confirmMerge = await promptConfirm(`Approve PR #${prNumber} by merging it (${branchName} -> ${baseBranch})?`, { default: true });
61
+ if (!confirmMerge) {
62
+ throw new Error('Merge cancelled by user');
63
+ }
52
64
  }
53
65
  const checks = await github.waitForPrChecks(branchName);
54
66
  if (!checks.passed) {
@@ -70,6 +82,9 @@ export async function cleanUpMergedBranch(input) {
70
82
  await git.fetchLatest();
71
83
  if (!workingPath) {
72
84
  await github.deleteRemoteBranch(branchName);
85
+ if (await git.localBranchExists(branchName)) {
86
+ await deleteBranchQuietly(branchName, false);
87
+ }
73
88
  return;
74
89
  }
75
90
  const isWorktree = await git.isInsideWorktree();
@@ -78,7 +93,7 @@ export async function cleanUpMergedBranch(input) {
78
93
  // worktree is removed regardless of removeWorktreeAtState.
79
94
  if (isWorktree) {
80
95
  const worktreePath = await removeCurrentWorktree(mainRepoRoot);
81
- await deleteBranchQuietly(branchName);
96
+ await deleteBranchQuietly(branchName, true);
82
97
  logger.hint(`Worktree removed: ${worktreePath}`);
83
98
  logger.hint(`Change to a different folder (e.g. ${mainRepoRoot}) to continue.`);
84
99
  return;
@@ -94,14 +109,14 @@ export async function cleanUpMergedBranch(input) {
94
109
  else {
95
110
  await git.checkoutAndPullBranch(baseBranch);
96
111
  }
97
- await deleteBranchQuietly(branchName);
112
+ await deleteBranchQuietly(branchName, true);
98
113
  if (baseWorktreePath) {
99
114
  logger.hint(`Base branch is in worktree at: ${baseWorktreePath}`);
100
115
  }
101
116
  }
102
- async function deleteBranchQuietly(branchName) {
117
+ async function deleteBranchQuietly(branchName, deleteRemote) {
103
118
  try {
104
- await git.deleteBranch(branchName, true);
119
+ await git.deleteBranch(branchName, deleteRemote);
105
120
  }
106
121
  catch {
107
122
  // The remote branch may already have been deleted automatically after the merge
@@ -1 +1 @@
1
- {"version":3,"file":"approval-flow.js","sourceRoot":"","sources":["../../../src/workflow/engine/approval-flow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"approval-flow.js","sourceRoot":"","sources":["../../../src/workflow/engine/approval-flow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,GAAG,MAAM,uBAAuB,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AA0BjE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,KAA4B;IACzE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAEnD,IAAI,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAChE,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,MAAM,QAAQ,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,6GAA6G,CAAC,CAAC;QACjI,CAAC;QACD,MAAM,aAAa,CAAC;YAClB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,UAAU;YACxB,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK;YACpC,QAAQ;YACR,IAAI,EAAE,WAAW;SAClB,CAAC,CAAC;QACH,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,cAAc,UAAU,sDAAsD,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS;SAC9B,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SACxB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEnC,MAAM,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAClD,MAAM,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;IACjC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAkB;IACpD,QAAQ,EAAE,KAAK;IACf,SAAS,EAAE,GAAG;IACd,WAAW,EAAE,uFAAuF;IACpG,MAAM,EAAE,IAAI;CACb,CAAC;AAUF;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAA2B;IAC/D,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAEnD,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,YAAY,GAAG,MAAM,aAAa,CACtC,eAAe,QAAQ,mBAAmB,UAAU,OAAO,UAAU,IAAI,EACzE,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;QACF,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,6FAA6F;YAC7F,4FAA4F;YAC5F,MAAM,CAAC,OAAO,CACf,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACrD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,uBAAuB,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC;AASD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,KAA+B;IACvE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IACtD,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;IAExB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,MAAM,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,MAAM,GAAG,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5C,MAAM,mBAAmB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAChD,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,eAAe,EAAE,CAAC;IAEjD,2EAA2E;IAC3E,2DAA2D;IAC3D,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,MAAM,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAC/D,MAAM,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,qBAAqB,YAAY,EAAE,CAAC,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,sCAAsC,YAAY,gBAAgB,CAAC,CAAC;QAChF,OAAO;IACT,CAAC;IAED,wEAAwE;IACxE,MAAM,gBAAgB,GAAG,MAAM,GAAG,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACxE,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC,eAAe,UAAU,wBAAwB,gBAAgB,oBAAoB,CAAC,CAAC;QACnG,MAAM,GAAG,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,kBAAkB,GAAG,MAAM,iBAAiB,EAAE,CAAC;QACrD,MAAM,GAAG,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC5C,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC,kCAAkC,gBAAgB,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,UAAkB,EAAE,YAAqB;IAC1E,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,YAAY,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,gFAAgF;QAChF,MAAM,CAAC,GAAG,CAAC,gBAAgB,UAAU,kDAAkD,CAAC,CAAC;IAC3F,CAAC;AACH,CAAC"}
@@ -16,7 +16,7 @@ import { isWorkMerged, requireLiveContext, requireWorkingPath } from '../workflo
16
16
  */
17
17
  export const agentImplementationHandler = {
18
18
  state: WorkflowStates.AgentImplementation,
19
- options: [isolationModeOption, ...claudeSessionOptions, claudeEntryPointOption, ...claudeEntryPointPromptOptions],
19
+ options: [isolationModeOption, claudeEntryPointOption, ...claudeSessionOptions, ...claudeEntryPointPromptOptions],
20
20
  async prepare(transition) {
21
21
  if (isWorkMerged(transition)) {
22
22
  logger.dim('The item\'s work is already merged; nothing to do.');
@@ -1 +1 @@
1
- {"version":3,"file":"agent-implementation.js","sourceRoot":"","sources":["../../../../src/workflow/engine/handlers/agent-implementation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAC1J,OAAO,EAAE,sBAAsB,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AACnH,OAAO,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAChD,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAA6B,MAAM,uBAAuB,CAAC;AAExH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAyB;IAC9D,KAAK,EAAE,cAAc,CAAC,mBAAmB;IACzC,OAAO,EAAE,CAAC,mBAAmB,EAAE,GAAG,oBAAoB,EAAE,sBAAsB,EAAE,GAAG,6BAA6B,CAAC;IAEjH,KAAK,CAAC,OAAO,CAAC,UAAU;QACtB,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QAED,MAAM,EAAE,UAAU,EAAE,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,aAAa,GAAG,oBAAoB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAE/D,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,QAAQ,CAAC,uBAAuB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAC1F,UAAU,CAAC,WAAW,GAAG,WAAW,CAAC;QAErC,IAAI,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,WAAW,EAAE,CAAC;YACrD,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAU;QACvB,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,WAAW,GAAG,kBAAkB,CAAC,UAAU,EAAE,gCAAgC,CAAC,CAAC;QACrF,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,GAAG,2BAA2B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAClI,MAAM,MAAM,GAAG,MAAM,+BAA+B,CAClD,sBAAsB,CAAC,UAAU,CAAC,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC,EACvE,gBAAgB,CACjB,CAAC;QAEF,MAAM,QAAQ,CAAC,qBAAqB,CAAC,WAAW,EAAE;YAChD,cAAc,EAAE,UAAU,CAAC,cAAc;YACzC,MAAM;YACN,cAAc;YACd,KAAK;YACL,MAAM;YACN,oBAAoB;SACrB,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"agent-implementation.js","sourceRoot":"","sources":["../../../../src/workflow/engine/handlers/agent-implementation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAC1J,OAAO,EAAE,sBAAsB,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AACnH,OAAO,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAChD,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAA6B,MAAM,uBAAuB,CAAC;AAExH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAyB;IAC9D,KAAK,EAAE,cAAc,CAAC,mBAAmB;IACzC,OAAO,EAAE,CAAC,mBAAmB,EAAE,sBAAsB,EAAE,GAAG,oBAAoB,EAAE,GAAG,6BAA6B,CAAC;IAEjH,KAAK,CAAC,OAAO,CAAC,UAAU;QACtB,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QAED,MAAM,EAAE,UAAU,EAAE,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,aAAa,GAAG,oBAAoB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAE/D,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,QAAQ,CAAC,uBAAuB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAC1F,UAAU,CAAC,WAAW,GAAG,WAAW,CAAC;QAErC,IAAI,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,WAAW,EAAE,CAAC;YACrD,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAU;QACvB,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,WAAW,GAAG,kBAAkB,CAAC,UAAU,EAAE,gCAAgC,CAAC,CAAC;QACrF,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,GAAG,2BAA2B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAClI,MAAM,MAAM,GAAG,MAAM,+BAA+B,CAClD,sBAAsB,CAAC,UAAU,CAAC,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC,EACvE,gBAAgB,CACjB,CAAC;QAEF,MAAM,QAAQ,CAAC,qBAAqB,CAAC,WAAW,EAAE;YAChD,cAAc,EAAE,UAAU,CAAC,cAAc;YACzC,MAAM;YACN,cAAc;YACd,KAAK;YACL,MAAM;YACN,oBAAoB;SACrB,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"approve-pr.d.ts","sourceRoot":"","sources":["../../../../src/workflow/engine/handlers/approve-pr.ts"],"names":[],"mappings":"AAOA,OAAO,EAAoD,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAEpH;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gBAAgB,EAAE,oBAiD9B,CAAC"}
1
+ {"version":3,"file":"approve-pr.d.ts","sourceRoot":"","sources":["../../../../src/workflow/engine/handlers/approve-pr.ts"],"names":[],"mappings":"AAOA,OAAO,EAAoD,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAEpH;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gBAAgB,EAAE,oBAuD9B,CAAC"}
@@ -3,8 +3,8 @@ import * as git from '../../../services/git.js';
3
3
  import * as github from '../../../services/github.js';
4
4
  import { WorkflowBranchState } from '../../data/workflow-context.js';
5
5
  import { WorkflowStates } from '../../data/workflow-states.js';
6
- import { cleanUpMergedBranch, mergeAsApprover } from '../approval-flow.js';
7
- import { confirmApproverIdentity } from '../release-flow.js';
6
+ import { cleanUpMergedBranch, mergeAsApprover, mergeConfirmationOption } from '../approval-flow.js';
7
+ import { confirmApproverIdentity } from '../release-engine.js';
8
8
  import { isWorkMerged, requireContext, requireLiveContext } from '../workflow-engine.js';
9
9
  /**
10
10
  * Entering "Approved and Merged": merge the PR. The merge IS the approval - it is performed by
@@ -20,6 +20,7 @@ import { isWorkMerged, requireContext, requireLiveContext } from '../workflow-en
20
20
  */
21
21
  export const approvePrHandler = {
22
22
  state: WorkflowStates.ApprovedAndMerged,
23
+ options: [mergeConfirmationOption],
23
24
  async prepare(transition) {
24
25
  // The pull request was merged on an earlier pass through this state.
25
26
  if (isWorkMerged(transition)) {
@@ -43,7 +44,12 @@ export const approvePrHandler = {
43
44
  return;
44
45
  }
45
46
  await confirmApproverIdentity(context.branchName);
46
- await mergeAsApprover({ branchName: context.branchName, baseBranch: context.baseBranch, prNumber: prInfo.number });
47
+ await mergeAsApprover({
48
+ branchName: context.branchName,
49
+ baseBranch: context.baseBranch,
50
+ prNumber: prInfo.number,
51
+ confirmed: transition.options[mergeConfirmationOption.longName] === 'true'
52
+ });
47
53
  context.branchState = WorkflowBranchState.Merged;
48
54
  },
49
55
  async complete(transition) {
@@ -1 +1 @@
1
- {"version":3,"file":"approve-pr.js","sourceRoot":"","sources":["../../../../src/workflow/engine/handlers/approve-pr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAChD,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAA6B,MAAM,uBAAuB,CAAC;AAEpH;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAyB;IACpD,KAAK,EAAE,cAAc,CAAC,iBAAiB;IAEvC,KAAK,CAAC,OAAO,CAAC,UAAU;QACtB,qEAAqE;QACrE,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;YACtE,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAE/C,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;YAC3B,MAAM,GAAG,CAAC,oBAAoB,EAAE,CAAC;QACnC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,MAAM,QAAQ,CAAC,CAAC;QAC1C,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC;QAEpC,oFAAoF;QACpF,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,MAAM,yCAAyC,CAAC,CAAC;YAC1E,OAAO,CAAC,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC;YACjD,OAAO;QACT,CAAC;QAED,MAAM,uBAAuB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,eAAe,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACnH,OAAO,CAAC,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAU;QACvB,MAAM,OAAO,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,mBAAmB,CAAC;YACxB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,WAAW,EAAE,UAAU,CAAC,WAAW;SACpC,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACrC,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,kBAAkB,OAAO,CAAC,UAAU,uCAAuC,CAAC,CAAC;QACzF,MAAM,CAAC,IAAI,CAAC,iBAAiB,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;IAC5D,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"approve-pr.js","sourceRoot":"","sources":["../../../../src/workflow/engine/handlers/approve-pr.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,9 @@
1
+ import type { CommandOption } from '../../../types/index.js';
1
2
  import { type WorkflowStateHandler } from '../workflow-engine.js';
3
+ /**
4
+ * Reviewers requested on the PR. Optional: the assignee is the approver.
5
+ */
6
+ export declare const reviewersOption: CommandOption;
2
7
  /**
3
8
  * Entering "Needs Approval for Release": the PR is complete and gets its assignee - the person
4
9
  * who will approve it by merging it with `idea1 approve-pr`. The assignee is required: without
@@ -1 +1 @@
1
- {"version":3,"file":"ready-for-approval.d.ts","sourceRoot":"","sources":["../../../../src/workflow/engine/handlers/ready-for-approval.ts"],"names":[],"mappings":"AAKA,OAAO,EAAoC,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAEpG;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,EAAE,oBAsDrC,CAAC"}
1
+ {"version":3,"file":"ready-for-approval.d.ts","sourceRoot":"","sources":["../../../../src/workflow/engine/handlers/ready-for-approval.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAM7D,OAAO,EAAoC,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAEpG;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,aAM7B,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,EAAE,oBAgDrC,CAAC"}
@@ -4,6 +4,16 @@ import { removeWorktreeForWorkflowState } from '../../../services/worktree.js';
4
4
  import { WorkflowStates } from '../../data/workflow-states.js';
5
5
  import { ensurePrReadyForApproval } from '../approval-flow.js';
6
6
  import { isWorkMerged, requireLiveContext } from '../workflow-engine.js';
7
+ /**
8
+ * Reviewers requested on the PR. Optional: the assignee is the approver.
9
+ */
10
+ export const reviewersOption = {
11
+ longName: 'reviewers',
12
+ shortName: 'r',
13
+ description: 'Who to request a review from - optional, the assignee is the approver (select any number)',
14
+ choices: 'github-members',
15
+ multiSelect: true
16
+ };
7
17
  /**
8
18
  * Entering "Needs Approval for Release": the PR is complete and gets its assignee - the person
9
19
  * who will approve it by merging it with `idea1 approve-pr`. The assignee is required: without
@@ -23,13 +33,7 @@ export const readyForApprovalHandler = {
23
33
  choices: 'github-members',
24
34
  validate: value => value.trim() ? undefined : 'An assignee is required - the assignee is the approver of record'
25
35
  },
26
- {
27
- longName: 'reviewers',
28
- shortName: 'r',
29
- description: 'Who to request a review from - optional, the assignee is the approver (select any number)',
30
- choices: 'github-members',
31
- multiSelect: true
32
- }
36
+ reviewersOption
33
37
  ],
34
38
  async prepare(transition) {
35
39
  if (isWorkMerged(transition)) {
@@ -1 +1 @@
1
- {"version":3,"file":"ready-for-approval.js","sourceRoot":"","sources":["../../../../src/workflow/engine/handlers/ready-for-approval.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAA6B,MAAM,uBAAuB,CAAC;AAEpG;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAyB;IAC3D,KAAK,EAAE,cAAc,CAAC,uBAAuB;IAC7C,OAAO,EAAE;QACP;YACE,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,GAAG;YACd,WAAW,EAAE,+FAA+F;YAC5G,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kEAAkE;SACjH;QACD;YACE,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,GAAG;YACd,WAAW,EAAE,2FAA2F;YACxG,OAAO,EAAE,gBAAgB;YACzB,WAAW,EAAE,IAAI;SAClB;KACF;IAED,KAAK,CAAC,OAAO,CAAC,UAAU;QACtB,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAE/C,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;YAC3B,MAAM,GAAG,CAAC,oBAAoB,EAAE,CAAC;QACnC,CAAC;QAED,oFAAoF;QACpF,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC;YAC5C,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC;YACxC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE;YAChD,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAC;QACH,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAU;QACvB,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,MAAM,EAAE,UAAU,EAAE,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,8BAA8B,CAAC,cAAc,CAAC,uBAAuB,EAAE,UAAU,EAAE,UAAU,CAAC,cAAc,EAAE,EAAE,wBAAwB,EAAE,KAAK,EAAE,CAAC,CAAC;QAEzJ,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC,qGAAqG,CAAC,CAAC;IACrH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"ready-for-approval.js","sourceRoot":"","sources":["../../../../src/workflow/engine/handlers/ready-for-approval.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAA6B,MAAM,uBAAuB,CAAC;AAEpG;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAkB;IAC5C,QAAQ,EAAE,WAAW;IACrB,SAAS,EAAE,GAAG;IACd,WAAW,EAAE,2FAA2F;IACxG,OAAO,EAAE,gBAAgB;IACzB,WAAW,EAAE,IAAI;CAClB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAyB;IAC3D,KAAK,EAAE,cAAc,CAAC,uBAAuB;IAC7C,OAAO,EAAE;QACP;YACE,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,GAAG;YACd,WAAW,EAAE,+FAA+F;YAC5G,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kEAAkE;SACjH;QACD,eAAe;KAChB;IAED,KAAK,CAAC,OAAO,CAAC,UAAU;QACtB,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAE/C,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;YAC3B,MAAM,GAAG,CAAC,oBAAoB,EAAE,CAAC;QACnC,CAAC;QAED,oFAAoF;QACpF,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC;YAC5C,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC;YACxC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE;YAChD,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAC;QACH,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAU;QACvB,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,MAAM,EAAE,UAAU,EAAE,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,8BAA8B,CAAC,cAAc,CAAC,uBAAuB,EAAE,UAAU,EAAE,UAAU,CAAC,cAAc,EAAE,EAAE,wBAAwB,EAAE,KAAK,EAAE,CAAC,CAAC;QAEzJ,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC,qGAAqG,CAAC,CAAC;IACrH,CAAC;CACF,CAAC"}