@idea1/cli 1.8.3 → 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 (107) hide show
  1. package/README.md +117 -55
  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 +20 -37
  11. package/dist/commands/approve-pr.js.map +1 -1
  12. package/dist/commands/attach-project-item.js +1 -1
  13. package/dist/commands/attach-project-item.js.map +1 -1
  14. package/dist/commands/close-worktree.d.ts.map +1 -1
  15. package/dist/commands/close-worktree.js +4 -3
  16. package/dist/commands/close-worktree.js.map +1 -1
  17. package/dist/commands/help.d.ts.map +1 -1
  18. package/dist/commands/help.js +9 -5
  19. package/dist/commands/help.js.map +1 -1
  20. package/dist/commands/join-project-item.d.ts.map +1 -1
  21. package/dist/commands/join-project-item.js +22 -48
  22. package/dist/commands/join-project-item.js.map +1 -1
  23. package/dist/commands/next-workflow-step.d.ts.map +1 -1
  24. package/dist/commands/next-workflow-step.js +20 -21
  25. package/dist/commands/next-workflow-step.js.map +1 -1
  26. package/dist/commands/ready-for-approval.d.ts.map +1 -1
  27. package/dist/commands/ready-for-approval.js +26 -18
  28. package/dist/commands/ready-for-approval.js.map +1 -1
  29. package/dist/commands/release.d.ts +3 -1
  30. package/dist/commands/release.d.ts.map +1 -1
  31. package/dist/commands/release.js +98 -19
  32. package/dist/commands/release.js.map +1 -1
  33. package/dist/commands/ship-local-changes.d.ts.map +1 -1
  34. package/dist/commands/ship-local-changes.js +3 -2
  35. package/dist/commands/ship-local-changes.js.map +1 -1
  36. package/dist/commands/start-agent-implementation.js +2 -2
  37. package/dist/commands/start-agent-implementation.js.map +1 -1
  38. package/dist/commands/start-dev-implementation.d.ts.map +1 -1
  39. package/dist/commands/start-dev-implementation.js +8 -3
  40. package/dist/commands/start-dev-implementation.js.map +1 -1
  41. package/dist/commands/start.d.ts +2 -2
  42. package/dist/commands/start.d.ts.map +1 -1
  43. package/dist/commands/start.js +27 -21
  44. package/dist/commands/start.js.map +1 -1
  45. package/dist/interactive.d.ts.map +1 -1
  46. package/dist/interactive.js +164 -0
  47. package/dist/interactive.js.map +1 -1
  48. package/dist/jobs/job.d.ts +81 -0
  49. package/dist/jobs/job.d.ts.map +1 -0
  50. package/dist/jobs/job.js +258 -0
  51. package/dist/jobs/job.js.map +1 -0
  52. package/dist/jobs/targets.d.ts +58 -0
  53. package/dist/jobs/targets.d.ts.map +1 -0
  54. package/dist/jobs/targets.js +215 -0
  55. package/dist/jobs/targets.js.map +1 -0
  56. package/dist/lib/logger.d.ts +10 -0
  57. package/dist/lib/logger.d.ts.map +1 -1
  58. package/dist/lib/logger.js +16 -0
  59. package/dist/lib/logger.js.map +1 -1
  60. package/dist/lib/prompt.d.ts +7 -0
  61. package/dist/lib/prompt.d.ts.map +1 -1
  62. package/dist/lib/prompt.js +29 -0
  63. package/dist/lib/prompt.js.map +1 -1
  64. package/dist/lib/shell.d.ts +2 -1
  65. package/dist/lib/shell.d.ts.map +1 -1
  66. package/dist/lib/shell.js +17 -1
  67. package/dist/lib/shell.js.map +1 -1
  68. package/dist/services/git.d.ts +7 -0
  69. package/dist/services/git.d.ts.map +1 -1
  70. package/dist/services/git.js +10 -7
  71. package/dist/services/git.js.map +1 -1
  72. package/dist/services/github.d.ts +13 -0
  73. package/dist/services/github.d.ts.map +1 -1
  74. package/dist/services/github.js +35 -3
  75. package/dist/services/github.js.map +1 -1
  76. package/dist/services/setup.d.ts +4 -2
  77. package/dist/services/setup.d.ts.map +1 -1
  78. package/dist/services/setup.js +43 -13
  79. package/dist/services/setup.js.map +1 -1
  80. package/dist/services/worktree.js +1 -1
  81. package/dist/services/worktree.js.map +1 -1
  82. package/dist/types/index.d.ts +7 -0
  83. package/dist/types/index.d.ts.map +1 -1
  84. package/dist/workflow/engine/approval-flow.d.ts +2 -1
  85. package/dist/workflow/engine/approval-flow.d.ts.map +1 -1
  86. package/dist/workflow/engine/approval-flow.js +35 -1
  87. package/dist/workflow/engine/approval-flow.js.map +1 -1
  88. package/dist/workflow/engine/handlers/agent-implementation.d.ts.map +1 -1
  89. package/dist/workflow/engine/handlers/agent-implementation.js +3 -10
  90. package/dist/workflow/engine/handlers/agent-implementation.js.map +1 -1
  91. package/dist/workflow/engine/handlers/dev-implementation.d.ts +2 -2
  92. package/dist/workflow/engine/handlers/dev-implementation.d.ts.map +1 -1
  93. package/dist/workflow/engine/handlers/dev-implementation.js +13 -7
  94. package/dist/workflow/engine/handlers/dev-implementation.js.map +1 -1
  95. package/dist/workflow/engine/release-engine.d.ts +7 -1
  96. package/dist/workflow/engine/release-engine.d.ts.map +1 -1
  97. package/dist/workflow/engine/release-engine.js +16 -6
  98. package/dist/workflow/engine/release-engine.js.map +1 -1
  99. package/dist/workflow/engine/ship-flow.d.ts +2 -2
  100. package/dist/workflow/engine/ship-flow.d.ts.map +1 -1
  101. package/dist/workflow/engine/ship-flow.js +3 -9
  102. package/dist/workflow/engine/ship-flow.js.map +1 -1
  103. package/dist/workflow/engine/workflow-engine.d.ts +67 -13
  104. package/dist/workflow/engine/workflow-engine.d.ts.map +1 -1
  105. package/dist/workflow/engine/workflow-engine.js +137 -47
  106. package/dist/workflow/engine/workflow-engine.js.map +1 -1
  107. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"release-engine.js","sourceRoot":"","sources":["../../../src/workflow/engine/release-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"release-engine.js","sourceRoot":"","sources":["../../../src/workflow/engine/release-engine.ts"],"names":[],"mappings":"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"}
@@ -79,8 +79,8 @@ export declare function carryLocalChanges(transition: WorkflowTransition, change
79
79
  * Advance the item through every workflow state up to Approved and Merged, asking nothing: the
80
80
  * states on the way get the options a person would otherwise be asked for. No Claude session is
81
81
  * started on the way through Agent Implementation, the PR is assigned to the person running the
82
- * command, who merges it once the required checks pass, and the base branch's local checkout is
83
- * brought up to date with the merge. Each state runs its usual automation, so a run that stops -
82
+ * command, who merges it once the required checks pass (which brings the base branch's local
83
+ * checkout up to date with the merge). Each state runs its usual automation, so a run that stops -
84
84
  * on failing checks, say - continues from where it stopped when run again.
85
85
  */
86
86
  export declare function approveAndMerge(transition: WorkflowTransition): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"ship-flow.d.ts","sourceRoot":"","sources":["../../../src/workflow/engine/ship-flow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAY1D,OAAO,EAKL,KAAK,kBAAkB,EACxB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,uBAAuB,EAAE,aAKrC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,aAInC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAE7E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAE3E;AAED;;;GAGG;AACH,eAAO,MAAM,iCAAiC,EAAE,aAAa,EAI5D,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAMjC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,aAA8D,CAAC;AAEvG;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,aAAa,EAOtC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,sFAAsF;IACtF,YAAY,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,oBAAoB,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CA0BxG;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,iBAAiB,CAAC,UAAU,EAAE,kBAAkB,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAsD5G;AAoCD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBnF"}
1
+ {"version":3,"file":"ship-flow.d.ts","sourceRoot":"","sources":["../../../src/workflow/engine/ship-flow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAY1D,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,uBAAuB,EAAE,aAKrC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,aAInC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAE7E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAE3E;AAED;;;GAGG;AACH,eAAO,MAAM,iCAAiC,EAAE,aAAa,EAI5D,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAMjC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,aAA8D,CAAC;AAEvG;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,aAAa,EAOtC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,sFAAsF;IACtF,YAAY,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,oBAAoB,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CA0BxG;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,iBAAiB,CAAC,UAAU,EAAE,kBAAkB,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAsD5G;AAoCD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAYnF"}
@@ -9,7 +9,7 @@ import { WorkflowStates } from '../data/workflow-states.js';
9
9
  import { mergeConfirmationOption } from './approval-flow.js';
10
10
  import { branchCreationOptions } from './branch-setup.js';
11
11
  import { reviewersOption } from './handlers/ready-for-approval.js';
12
- import { advanceAsNeededTo, requireContext, requireLiveContext, startWorkflowManagementAtCommit } from './workflow-engine.js';
12
+ import { advanceAsNeededTo, requireLiveContext, startWorkflowManagementAtCommit } from './workflow-engine.js';
13
13
  /**
14
14
  * Shipping work that exists before its project item's branch does. Uncommitted changes in a
15
15
  * checkout of the branch an item's branch is cut from (the base branch, `working/release` by
@@ -203,8 +203,8 @@ async function requireBranchWithNoCommitsOfItsOwn(context, sourceBranch) {
203
203
  * Advance the item through every workflow state up to Approved and Merged, asking nothing: the
204
204
  * states on the way get the options a person would otherwise be asked for. No Claude session is
205
205
  * started on the way through Agent Implementation, the PR is assigned to the person running the
206
- * command, who merges it once the required checks pass, and the base branch's local checkout is
207
- * brought up to date with the merge. Each state runs its usual automation, so a run that stops -
206
+ * command, who merges it once the required checks pass (which brings the base branch's local
207
+ * checkout up to date with the merge). Each state runs its usual automation, so a run that stops -
208
208
  * on failing checks, say - continues from where it stopped when run again.
209
209
  */
210
210
  export async function approveAndMerge(transition) {
@@ -217,11 +217,5 @@ export async function approveAndMerge(transition) {
217
217
  [mergeConfirmationOption.longName]: 'true'
218
218
  });
219
219
  await advanceAsNeededTo(transition, WorkflowStates.ApprovedAndMerged);
220
- const { baseBranch } = requireContext(transition);
221
- const baseCheckoutPath = await git.getCheckoutPathForBranch(baseBranch);
222
- if (baseCheckoutPath) {
223
- await git.pullBranch(baseBranch, baseCheckoutPath);
224
- logger.success(`${baseBranch} at ${baseCheckoutPath} is up to date with the merge`);
225
- }
226
220
  }
227
221
  //# sourceMappingURL=ship-flow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ship-flow.js","sourceRoot":"","sources":["../../../src/workflow/engine/ship-flow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ship-flow.js","sourceRoot":"","sources":["../../../src/workflow/engine/ship-flow.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,12 @@ import { type WorkflowState } from '../data/workflow-states.js';
16
16
  * to any earlier state, recording the state only) finds its work done and leaves it as it is - also
17
17
  * once the work is merged and its branch retired.
18
18
  *
19
+ * A command names its target - a project item URL, a branch name or a GitHub PR URL - and the
20
+ * engine resolves it to a project item, or to a branch no item is recorded for (`resolveTarget`).
21
+ * Work happens where the branch is checked out when it has a local checkout; a branch with none is
22
+ * worked on through origin and GitHub, and is checked out only when a step needs its files
23
+ * (`ensureWorkingPath`), so a command never arranges a checkout itself.
24
+ *
19
25
  * A command resolves the transition it operates on and, when it changes the item, calls the
20
26
  * operation that says so: `advanceAsNeededTo` to move the item on, `reenterState` to run the
21
27
  * automation of the state it is already in. Both put the item under workflow management on the way
@@ -56,27 +62,60 @@ export interface WorkflowStateHandler {
56
62
  complete?: (transition: WorkflowTransition) => Promise<void>;
57
63
  }
58
64
  export interface ResolveTransitionInput {
59
- /** Project item URL; required when the current branch is not the item's branch. */
60
- projectItemUrl?: string;
65
+ /**
66
+ * What the command operates on: a project item URL, a branch name, or a GitHub PR URL (standing
67
+ * for its head branch). Null for the current branch.
68
+ */
69
+ target: string | null;
61
70
  /** Resolved command options, handed to the state handlers. */
62
71
  options: Record<string, string>;
63
72
  }
64
73
  /**
65
- * Work out which project item and branch a command operates on. Reading only: an item outside
66
- * workflow management resolves to a transition with no context, and the transition the command
67
- * goes on to make is what gives it one.
68
- *
69
- * On a managed branch (the platform records the current branch as an item's) the branch is the
70
- * target. Otherwise the item URL is required: its summary is read from the platform and, when its
71
- * branch is live and checked out somewhere locally, that checkout becomes the working directory.
74
+ * What a target resolves to: a project item, or a branch no project item is recorded for.
75
+ */
76
+ export type ResolvedTarget = {
77
+ kind: 'item';
78
+ transition: WorkflowTransition;
79
+ } | {
80
+ kind: 'branch';
81
+ branchName: string;
82
+ };
83
+ /**
84
+ * Work out which project item a command operates on, for commands that need one. A branch (named,
85
+ * behind a PR URL, or the current one) must be a project item's branch.
72
86
  */
73
87
  export declare function resolveTransition(input: ResolveTransitionInput): Promise<WorkflowTransition>;
74
88
  /**
75
- * Like `resolveTransition`, returning null for a current branch outside workflow management when
76
- * no item URL was given. For commands that also operate on a branch with no project item
77
- * (`ready-for-approval`, `approve-pr`).
89
+ * Work out what a command operates on: a project item, or a branch with no project item, for the
90
+ * commands that also take those (`ready-for-approval`, `approve-pr`). Reading only: an item outside
91
+ * workflow management resolves to a transition with no context, and the transition the command goes
92
+ * on to make is what gives it one.
93
+ *
94
+ * A branch is the target's when it is a project item's branch (the platform records it as the
95
+ * item's), so a branch or PR URL target names the item as surely as its URL does. Whatever the
96
+ * target, its branch's local checkout, when it has one, is brought up to date with origin and
97
+ * becomes the working directory; a branch with no checkout is worked on through origin and GitHub
98
+ * alone, and gets a checkout only when a step needs one (`ensureWorkingPath`).
99
+ */
100
+ export declare function resolveTarget(input: ResolveTransitionInput): Promise<ResolvedTarget>;
101
+ /** The target named by a run, with what is known of it before anything moves. See `readTarget`. */
102
+ export interface TargetSummary {
103
+ /** The target as given: an item URL, a branch name or a PR URL. */
104
+ target: string;
105
+ /** What progress output calls the target: `#<id> <title>` for an item, the branch name otherwise. */
106
+ label: string;
107
+ /** The item's URL; null for a branch with no project item. */
108
+ projectItemUrl: string | null;
109
+ /** The branch carrying the work; null for an item with no live branch in this repository. */
110
+ branchName: string | null;
111
+ /** The item's state; null for an item outside workflow management or a branch with no item. */
112
+ currentState: WorkflowState | null;
113
+ }
114
+ /**
115
+ * What a target is - its item, branch and state - read without moving into any checkout or
116
+ * changing anything, so many targets can be checked before any of them is worked on.
78
117
  */
79
- export declare function resolveTransitionIfManaged(input: ResolveTransitionInput): Promise<WorkflowTransition | null>;
118
+ export declare function readTarget(target: string): Promise<TargetSummary>;
80
119
  export interface StartWorkflowManagementAtCommitInput {
81
120
  /** The branch name under the branch prefix; null to derive one from the item. */
82
121
  shortBranchName: string | null;
@@ -110,6 +149,13 @@ export declare function advanceAsNeededTo(transition: WorkflowTransition, target
110
149
  * the branch is recorded on the item alongside it.
111
150
  */
112
151
  export declare function reenterState(transition: WorkflowTransition, state: WorkflowState): Promise<void>;
152
+ /**
153
+ * Prompt for every handler option that was not supplied on the command line and that advancing
154
+ * from `fromState` to `targetState` needs, so a handler reached through `next` asks the same
155
+ * questions as its dedicated command would. A batch asks this for each of its items, up front, so
156
+ * its unattended runs are asked nothing; an option answered once is not asked again.
157
+ */
158
+ export declare function resolveOptionsForAdvancing(fromState: WorkflowState | null, targetState: WorkflowState, options: Record<string, string>): Promise<void>;
113
159
  /**
114
160
  * The summary of the project item a branch in this repository implements, with the item's workflow
115
161
  * context. Null for a branch outside workflow management, which the base branch always is: no item
@@ -179,6 +225,14 @@ export declare function isWorkMerged(transition: WorkflowTransition): boolean;
179
225
  * The item's context with its live branch, for handlers that do branch work.
180
226
  */
181
227
  export declare function requireLiveContext(transition: WorkflowTransition): WorkflowContext;
228
+ /**
229
+ * The branch's local checkout, created when it has none - a step that needs to work in the branch's
230
+ * files asks for it, and only then does a checkout come to exist: a worktree, or the branch checked
231
+ * out in the main repository, per the `isolation` option. The checkout becomes the working
232
+ * directory. Steps that can work through origin and GitHub alone use `transition.workingPath`,
233
+ * the checkout the branch already had.
234
+ */
235
+ export declare function ensureWorkingPath(transition: WorkflowTransition): Promise<string>;
182
236
  /**
183
237
  * The local checkout a handler needs, with guidance when there is none.
184
238
  */
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-engine.d.ts","sourceRoot":"","sources":["../../../src/workflow/engine/workflow-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-engine.d.ts","sourceRoot":"","sources":["../../../src/workflow/engine/workflow-engine.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import { logger } from '../../lib/logger.js';
2
2
  import { resolveOptions } from '../../cli/resolver.js';
3
+ import { resolveIsolationMode } from '../../lib/isolation.js';
4
+ import { isProjectItemUrl } from '../../lib/project-item-url.js';
3
5
  import * as git from '../../services/git.js';
4
6
  import * as github from '../../services/github.js';
5
7
  import * as platform from '../../services/platform.js';
@@ -9,51 +11,109 @@ import { WorkflowStates, getWorkflowStatesBetween, isStateAtOrAfter, normalizeWo
9
11
  import { collectBranchCreationChoices } from './branch-setup.js';
10
12
  import { HANDLERS_BY_STATE, getHandler } from './handlers/index.js';
11
13
  /**
12
- * Work out which project item and branch a command operates on. Reading only: an item outside
13
- * workflow management resolves to a transition with no context, and the transition the command
14
- * goes on to make is what gives it one.
15
- *
16
- * On a managed branch (the platform records the current branch as an item's) the branch is the
17
- * target. Otherwise the item URL is required: its summary is read from the platform and, when its
18
- * branch is live and checked out somewhere locally, that checkout becomes the working directory.
14
+ * Work out which project item a command operates on, for commands that need one. A branch (named,
15
+ * behind a PR URL, or the current one) must be a project item's branch.
19
16
  */
20
17
  export async function resolveTransition(input) {
21
- const transition = await resolveTransitionIfManaged(input);
22
- if (!transition) {
23
- throw new Error('This branch is not under workflow management. Pass --url <project item url>, or run this from the item\'s branch.');
18
+ const resolved = await resolveTarget(input);
19
+ if (resolved.kind === 'branch') {
20
+ throw new Error(`${resolved.branchName} is not a project item's branch, and this command operates on project items. ` +
21
+ 'Pass --target <project item url>, or its branch; only ready-for-approval and approve-pr operate on a branch with no project item.');
24
22
  }
25
- return transition;
23
+ return resolved.transition;
26
24
  }
27
25
  /**
28
- * Like `resolveTransition`, returning null for a current branch outside workflow management when
29
- * no item URL was given. For commands that also operate on a branch with no project item
30
- * (`ready-for-approval`, `approve-pr`).
26
+ * Work out what a command operates on: a project item, or a branch with no project item, for the
27
+ * commands that also take those (`ready-for-approval`, `approve-pr`). Reading only: an item outside
28
+ * workflow management resolves to a transition with no context, and the transition the command goes
29
+ * on to make is what gives it one.
30
+ *
31
+ * A branch is the target's when it is a project item's branch (the platform records it as the
32
+ * item's), so a branch or PR URL target names the item as surely as its URL does. Whatever the
33
+ * target, its branch's local checkout, when it has one, is brought up to date with origin and
34
+ * becomes the working directory; a branch with no checkout is worked on through origin and GitHub
35
+ * alone, and gets a checkout only when a step needs one (`ensureWorkingPath`).
31
36
  */
32
- export async function resolveTransitionIfManaged(input) {
33
- const requestedUrl = input.projectItemUrl || null;
34
- const currentBranch = await git.getCurrentBranch();
35
- const currentBranchItem = currentBranch !== 'HEAD' ? await getProjectItemSummaryForBranch(currentBranch) : null;
36
- if (currentBranchItem && (!requestedUrl || requestedUrl === currentBranchItem.url)) {
37
- return transitionForManagedBranch(currentBranchItem, input.options);
37
+ export async function resolveTarget(input) {
38
+ const target = input.target?.trim() || null;
39
+ if (target && isProjectItemUrl(target)) {
40
+ return { kind: 'item', transition: await transitionForItem(await getProjectItemSummary(target), input.options) };
38
41
  }
39
- if (!requestedUrl) {
40
- return null;
42
+ const branchName = target ? await branchNameForTarget(target) : await requireCurrentBranch();
43
+ const item = await getProjectItemSummaryForBranch(branchName);
44
+ if (item) {
45
+ return { kind: 'item', transition: await transitionForManagedBranch(item, input.options) };
46
+ }
47
+ if (target) {
48
+ await enterCheckout(branchName);
49
+ }
50
+ return { kind: 'branch', branchName };
51
+ }
52
+ /**
53
+ * What a target is - its item, branch and state - read without moving into any checkout or
54
+ * changing anything, so many targets can be checked before any of them is worked on.
55
+ */
56
+ export async function readTarget(target) {
57
+ const trimmed = target.trim();
58
+ let item;
59
+ if (isProjectItemUrl(trimmed)) {
60
+ item = await getProjectItemSummary(trimmed);
61
+ }
62
+ else {
63
+ const branchName = await branchNameForTarget(trimmed);
64
+ const branchItem = await getProjectItemSummaryForBranch(branchName);
65
+ if (!branchItem) {
66
+ return { target: trimmed, label: branchName, projectItemUrl: null, branchName, currentState: null };
67
+ }
68
+ item = branchItem;
41
69
  }
42
- if (currentBranchItem) {
43
- logger.dim(`Current branch belongs to ${currentBranchItem.url}; operating on ${requestedUrl} instead.`);
70
+ const context = item.workflowContext;
71
+ return {
72
+ target: trimmed,
73
+ label: `#${item.externalId} ${item.title}`,
74
+ projectItemUrl: item.url,
75
+ branchName: await liveBranchHere(context) ? context.branchName : null,
76
+ currentState: context ? normalizeWorkflowState(context.workflowStatus) : null
77
+ };
78
+ }
79
+ /**
80
+ * The branch a branch-name or PR URL target names: the PR's head branch, or the name itself.
81
+ */
82
+ async function branchNameForTarget(target) {
83
+ if (!github.isPullRequestUrl(target)) {
84
+ return target;
85
+ }
86
+ const pr = await github.getBranchFromPrUrl(target);
87
+ if (!pr) {
88
+ throw new Error(`Could not read the pull request ${target} from GitHub.`);
44
89
  }
45
- const item = await getProjectItemSummary(requestedUrl);
90
+ logger.dim(`${target} is the PR of ${pr.headBranch}`);
91
+ return pr.headBranch;
92
+ }
93
+ async function requireCurrentBranch() {
94
+ const branchName = await git.getCurrentBranch();
95
+ if (branchName === 'HEAD') {
96
+ throw new Error('You are not on a branch (detached HEAD). Pass --target <project item url | branch | PR url>.');
97
+ }
98
+ return branchName;
99
+ }
100
+ /**
101
+ * The transition for an item read by its URL: its live branch's, when it has one in this
102
+ * repository, else one with no working directory (and no context, for an item outside workflow
103
+ * management) that the command's transition goes on to give a branch.
104
+ */
105
+ async function transitionForItem(item, options) {
46
106
  const context = item.workflowContext;
47
107
  if (context?.branchState === WorkflowBranchState.Live) {
48
- logger.info(`Resolved branch for ${requestedUrl}: ${context.branchName}`);
49
- return transitionForManagedBranch(item, input.options);
108
+ logger.info(`Resolved branch for ${item.url}: ${context.branchName}`);
109
+ return transitionForManagedBranch(item, options);
50
110
  }
51
111
  return {
52
112
  projectItemUrl: item.url,
53
113
  context,
54
114
  currentState: context ? normalizeWorkflowState(context.workflowStatus) : null,
55
115
  workingPath: null,
56
- options: input.options
116
+ options
57
117
  };
58
118
  }
59
119
  /**
@@ -68,20 +128,27 @@ async function transitionForManagedBranch(item, options) {
68
128
  if (!await liveBranchHere(context)) {
69
129
  throw new Error(`${item.url} is implemented on ${context.branchName} in ${context.repositoryFullName}, not in this repository (${await currentRepositoryFullName()}).`);
70
130
  }
71
- await syncCheckoutWithOrigin(context.branchName);
72
- const workingPath = await git.getCheckoutPathForBranch(context.branchName);
73
- if (workingPath && workingPath !== (await git.getRepoRoot()).trim()) {
74
- logger.dim(`Working in ${workingPath}`);
75
- process.chdir(workingPath);
76
- }
77
131
  return {
78
132
  projectItemUrl: item.url,
79
133
  context,
80
134
  currentState: normalizeWorkflowState(context.workflowStatus),
81
- workingPath,
135
+ workingPath: await enterCheckout(context.branchName),
82
136
  options
83
137
  };
84
138
  }
139
+ /**
140
+ * Bring a branch's local checkout, when it has one, up to date with origin and make it the working
141
+ * directory. Returns the checkout's path, or null when the branch has none.
142
+ */
143
+ async function enterCheckout(branchName) {
144
+ await syncCheckoutWithOrigin(branchName);
145
+ const workingPath = await git.getCheckoutPathForBranch(branchName);
146
+ if (workingPath && workingPath !== (await git.getRepoRoot()).trim()) {
147
+ logger.dim(`Working in ${workingPath}`);
148
+ process.chdir(workingPath);
149
+ }
150
+ return workingPath;
151
+ }
85
152
  /**
86
153
  * GitHub repository names compare case-insensitively.
87
154
  */
@@ -253,11 +320,9 @@ export async function advanceAsNeededTo(transition, targetState) {
253
320
  return;
254
321
  }
255
322
  const steps = getWorkflowStatesBetween(transition.currentState, targetState);
256
- await resolveHandlerOptions(transition, steps
257
- .map(state => HANDLERS_BY_STATE.get(state))
258
- .filter((handler) => handler !== undefined));
323
+ await resolveOptionsForAdvancing(transition.currentState, targetState, transition.options);
259
324
  for (const state of steps) {
260
- logger.info(`Workflow: ${transition.currentState ?? '(not started)'} → ${state}`);
325
+ logger.status(`Workflow: ${transition.currentState ?? '(not started)'} → ${state}`);
261
326
  const handler = HANDLERS_BY_STATE.get(state);
262
327
  await handler?.prepare?.(transition);
263
328
  await persistState(transition, state);
@@ -288,7 +353,7 @@ async function refreshWorkingPath(transition) {
288
353
  export async function reenterState(transition, state) {
289
354
  await startWorkflowManagement(transition, state);
290
355
  const handler = getHandler(state);
291
- await resolveHandlerOptions(transition, [handler]);
356
+ await resolveHandlerOptions(transition.options, [handler]);
292
357
  const recordedPullRequestUrl = requireContext(transition).pullRequestUrl;
293
358
  await handler.prepare?.(transition);
294
359
  if (requireContext(transition).pullRequestUrl !== recordedPullRequestUrl) {
@@ -297,10 +362,19 @@ export async function reenterState(transition, state) {
297
362
  await handler.complete?.(transition);
298
363
  }
299
364
  /**
300
- * Prompt for any handler option that was not supplied on the command line, so a handler reached
301
- * through `next` asks the same questions as its dedicated command would.
365
+ * Prompt for every handler option that was not supplied on the command line and that advancing
366
+ * from `fromState` to `targetState` needs, so a handler reached through `next` asks the same
367
+ * questions as its dedicated command would. A batch asks this for each of its items, up front, so
368
+ * its unattended runs are asked nothing; an option answered once is not asked again.
302
369
  */
303
- async function resolveHandlerOptions(transition, handlers) {
370
+ export async function resolveOptionsForAdvancing(fromState, targetState, options) {
371
+ if (fromState !== null && isStateAtOrAfter(fromState, targetState)) {
372
+ return;
373
+ }
374
+ const entered = new Set(getWorkflowStatesBetween(fromState, targetState));
375
+ await resolveHandlerOptions(options, [...HANDLERS_BY_STATE.values()].filter(handler => entered.has(handler.state)));
376
+ }
377
+ async function resolveHandlerOptions(options, handlers) {
304
378
  for (const handler of handlers) {
305
379
  if (!handler.options || handler.options.length === 0) {
306
380
  continue;
@@ -314,11 +388,11 @@ async function resolveHandlerOptions(transition, handlers) {
314
388
  };
315
389
  const supplied = {};
316
390
  for (const option of handler.options) {
317
- if (option.longName in transition.options) {
318
- supplied[option.longName] = transition.options[option.longName];
391
+ if (option.longName in options) {
392
+ supplied[option.longName] = options[option.longName];
319
393
  }
320
394
  }
321
- Object.assign(transition.options, await resolveOptions(pseudoCommand, supplied));
395
+ Object.assign(options, await resolveOptions(pseudoCommand, supplied));
322
396
  }
323
397
  }
324
398
  /**
@@ -457,12 +531,28 @@ export function requireLiveContext(transition) {
457
531
  }
458
532
  return context;
459
533
  }
534
+ /**
535
+ * The branch's local checkout, created when it has none - a step that needs to work in the branch's
536
+ * files asks for it, and only then does a checkout come to exist: a worktree, or the branch checked
537
+ * out in the main repository, per the `isolation` option. The checkout becomes the working
538
+ * directory. Steps that can work through origin and GitHub alone use `transition.workingPath`,
539
+ * the checkout the branch already had.
540
+ */
541
+ export async function ensureWorkingPath(transition) {
542
+ const { branchName } = requireLiveContext(transition);
543
+ const { workingPath } = await worktree.ensureBranchEnvironment(resolveIsolationMode(transition.options), branchName);
544
+ transition.workingPath = workingPath;
545
+ if ((await git.getRepoRoot()).trim() !== workingPath) {
546
+ process.chdir(workingPath);
547
+ }
548
+ return workingPath;
549
+ }
460
550
  /**
461
551
  * The local checkout a handler needs, with guidance when there is none.
462
552
  */
463
553
  export function requireWorkingPath(transition, purpose) {
464
554
  if (!transition.workingPath) {
465
- throw new Error(`Branch ${transition.context?.branchName ?? ''} has no local checkout, which is needed to ${purpose}. Run: idea1 join-project-item --project-item-url ${transition.projectItemUrl}`);
555
+ throw new Error(`Branch ${transition.context?.branchName ?? ''} has no local checkout, which is needed to ${purpose}. Run: idea1 join-project-item --target ${transition.projectItemUrl}`);
466
556
  }
467
557
  return transition.workingPath;
468
558
  }