@idea1/cli 1.10.4 → 1.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/README.md +74 -32
  2. package/dist/commands/help.d.ts.map +1 -1
  3. package/dist/commands/help.js +30 -12
  4. package/dist/commands/help.js.map +1 -1
  5. package/dist/commands/index.d.ts +3 -1
  6. package/dist/commands/index.d.ts.map +1 -1
  7. package/dist/commands/index.js +5 -1
  8. package/dist/commands/index.js.map +1 -1
  9. package/dist/commands/login.d.ts +3 -0
  10. package/dist/commands/login.d.ts.map +1 -0
  11. package/dist/commands/login.js +15 -0
  12. package/dist/commands/login.js.map +1 -0
  13. package/dist/commands/logout.d.ts +3 -0
  14. package/dist/commands/logout.d.ts.map +1 -0
  15. package/dist/commands/logout.js +17 -0
  16. package/dist/commands/logout.js.map +1 -0
  17. package/dist/commands/release.d.ts +9 -4
  18. package/dist/commands/release.d.ts.map +1 -1
  19. package/dist/commands/release.js +53 -27
  20. package/dist/commands/release.js.map +1 -1
  21. package/dist/lib/project-item-url.d.ts +6 -0
  22. package/dist/lib/project-item-url.d.ts.map +1 -1
  23. package/dist/lib/project-item-url.js +11 -0
  24. package/dist/lib/project-item-url.js.map +1 -1
  25. package/dist/lib/settings.d.ts +25 -3
  26. package/dist/lib/settings.d.ts.map +1 -1
  27. package/dist/lib/settings.js +26 -1
  28. package/dist/lib/settings.js.map +1 -1
  29. package/dist/prompts/platform-prompts.d.ts +5 -30
  30. package/dist/prompts/platform-prompts.d.ts.map +1 -1
  31. package/dist/prompts/platform-prompts.js +5 -44
  32. package/dist/prompts/platform-prompts.js.map +1 -1
  33. package/dist/services/github.d.ts +21 -19
  34. package/dist/services/github.d.ts.map +1 -1
  35. package/dist/services/github.js +56 -64
  36. package/dist/services/github.js.map +1 -1
  37. package/dist/services/platform-auth.d.ts +44 -0
  38. package/dist/services/platform-auth.d.ts.map +1 -0
  39. package/dist/services/platform-auth.js +476 -0
  40. package/dist/services/platform-auth.js.map +1 -0
  41. package/dist/services/platform.d.ts +75 -18
  42. package/dist/services/platform.d.ts.map +1 -1
  43. package/dist/services/platform.js +254 -191
  44. package/dist/services/platform.js.map +1 -1
  45. package/dist/services/setup.d.ts.map +1 -1
  46. package/dist/services/setup.js +2 -1
  47. package/dist/services/setup.js.map +1 -1
  48. package/dist/types/index.d.ts +32 -0
  49. package/dist/types/index.d.ts.map +1 -1
  50. package/dist/types/index.js +1 -1
  51. package/dist/types/index.js.map +1 -1
  52. package/dist/workflow/data/team-member.d.ts +9 -2
  53. package/dist/workflow/data/team-member.d.ts.map +1 -1
  54. package/dist/workflow/data/team-member.js +8 -1
  55. package/dist/workflow/data/team-member.js.map +1 -1
  56. package/dist/workflow/engine/approval-flow.d.ts +28 -11
  57. package/dist/workflow/engine/approval-flow.d.ts.map +1 -1
  58. package/dist/workflow/engine/approval-flow.js +52 -17
  59. package/dist/workflow/engine/approval-flow.js.map +1 -1
  60. package/dist/workflow/engine/branch-setup.d.ts +1 -1
  61. package/dist/workflow/engine/branch-setup.js +1 -1
  62. package/dist/workflow/engine/handlers/approve-pr.d.ts +10 -9
  63. package/dist/workflow/engine/handlers/approve-pr.d.ts.map +1 -1
  64. package/dist/workflow/engine/handlers/approve-pr.js +24 -17
  65. package/dist/workflow/engine/handlers/approve-pr.js.map +1 -1
  66. package/dist/workflow/engine/release-engine.d.ts +90 -58
  67. package/dist/workflow/engine/release-engine.d.ts.map +1 -1
  68. package/dist/workflow/engine/release-engine.js +296 -161
  69. package/dist/workflow/engine/release-engine.js.map +1 -1
  70. package/dist/workflow/engine/workflow-engine.d.ts +9 -2
  71. package/dist/workflow/engine/workflow-engine.d.ts.map +1 -1
  72. package/dist/workflow/engine/workflow-engine.js +20 -2
  73. package/dist/workflow/engine/workflow-engine.js.map +1 -1
  74. package/package.json +2 -1
@@ -1,29 +1,50 @@
1
1
  import type { CommandOption, VersionedPackage } from '../../types/index.js';
2
+ import * as github from '../../services/github.js';
2
3
  /**
3
4
  * The release engine: the gated PR sequence, a PR whose body is the approval chain of the changes it carries, assigned
4
5
  * to its approver, merged only once the required CI/CD checks have passed. `idea1 release` runs the
5
- * whole sequence here for both kinds of release into main: a planned release from the base branch,
6
- * whose changes were each approved on their own PR, and a hotfix release from the hotfix branch,
7
- * whose directly pushed commits are reviewed and approved in the release PR itself. That includes
8
- * the one sanctioned admin override (change-management-policy.md, "The automated gate"), recorded
9
- * on the PR before any merge happens. `idea1 ready-for-approval` opens a stage-1 change PR with the
10
- * same kind of body for a branch that has no project item (see approval-flow.ts).
6
+ * whole sequence here for the three kinds of release into main: a planned release from the base
7
+ * branch, whose changes were each approved on their own PR, a hotfix release from the hotfix branch,
8
+ * whose directly pushed commits are reviewed and approved in the release PR itself, and a content
9
+ * release from the content release branch (`release.contentRelease`), which carries no version bumps
10
+ * and changes only content. Once the checks pass, the Idea1 platform merges the release as the Idea1
11
+ * GitHub App, after recording the releaser's approval on the PR; the one sanctioned admin override
12
+ * (change-management-policy.md, "The automated gate") is the only merge made here, recorded on the
13
+ * PR before it happens. `idea1 ready-for-approval` opens a stage-1 change PR with the same kind of
14
+ * body for a branch that has no project item (see approval-flow.ts).
15
+ *
16
+ * Who may release is the repository's release roles: the members of the GitHub team
17
+ * `release.releaserTeam` release the base and hotfix branches, and the members of
18
+ * `release.contentRelease.releaserTeam` approve changes into the content release branch and release
19
+ * it. The CLI refuses anyone else before anything is committed or merged; the platform checks again.
11
20
  *
12
21
  * A release's version bumps land on the release branch before its PR is opened, so the PR's head,
13
22
  * and the one CI/CD run the release is gated on, already carry them. The packages that changed since
14
- * the last release are detected here, and this engine makes the bump itself: it edits each package's
15
- * `package.json` and the lockfiles above it in the local checkout, commits the edit as one
16
- * `chore: bump ...` commit, and pushes it. The repository only declares which folders are candidates
17
- * (`release.versionedPackages` in `.idea1/settings.json`); no script or workflow is involved.
23
+ * the last release are detected here, and this engine computes the bump from the local checkout: the
24
+ * new `version` of each package's `package.json` and of the lockfiles above it. The platform commits
25
+ * it onto the release branch as one `chore: bump ...` commit as the Idea1 GitHub App, accepting
26
+ * only those version edits, since a releaser need not be able to push to the release branch. The
27
+ * repository only declares which folders are candidates (`release.versionedPackages` in
28
+ * `.idea1/settings.json`); no script or workflow is involved.
18
29
  *
19
30
  * The platform's `ReleaseEngine` (backend-core/applicationlayer/workflow) runs the same release
20
31
  * sequence from the web app and writes the same PR and the same bump commit, by making the same edits
21
- * to the same files and committing them through the GitHub API instead of a local checkout, so a
22
- * release cut on either side reads the same. Both refuse a release the same way: when the releaser
32
+ * to the same files through the GitHub API, so a release cut on either side reads the same. Both
33
+ * refuse a release the same way: when the releaser
23
34
  * lacks the access a release needs (here the person running the command, there the GitHub App),
24
35
  * and when an open PR from the release branch into its target does not follow the release workflow;
25
36
  * and both refuse a planned release that carries a direct push, which only the CLI can release, once
26
- * a repository admin records why. Keep the two in step.
37
+ * a repository admin records why. A repository that sets `release.releaseBranchChanges` to
38
+ * `direct-allowed` in `.idea1/settings.json` accepts changes made directly on its release branch
39
+ * instead: neither engine refuses such a release, and its PR lists the direct commits for its
40
+ * assignee to review. Keep the two in step.
41
+ *
42
+ * A release PR lists every change it contains, including those that land on its branch after it is
43
+ * opened: the approval chain is a delimited section of the body, and before anything merges the PR
44
+ * the section is re-rendered from the branch as it stands, leaving the rest of the body as it is.
45
+ * Both engines render the same section for the same branch, and the platform also re-renders it on
46
+ * every push to the branch. A merge whose re-render fails goes ahead only when the branch has not
47
+ * moved since the section was rendered.
27
48
  */
28
49
  /** Which command opened the PR; shapes the PR body and the override record. */
29
50
  export interface GatedPrKind {
@@ -37,7 +58,8 @@ export interface GatedPrKind {
37
58
  * IS the change under review, so it is listed neutrally and never refused - this PR is its
38
59
  * approval. False for a planned release, where every change was already approved on its own PR
39
60
  * (change-management-policy.md, "Approval and release gates"), so a commit with no pull request
40
- * is refused until a repository admin records why it was pushed directly.
61
+ * is refused until a repository admin records why it was pushed directly - unless the
62
+ * repository's `release.releaseBranchChanges` is `direct-allowed`, which lists it neutrally.
41
63
  */
42
64
  assigneeReviewsCommits: boolean;
43
65
  /** What merging the PR approves, as its body states it under the approval chain. */
@@ -45,13 +67,15 @@ export interface GatedPrKind {
45
67
  }
46
68
  export declare const RELEASE_KIND: GatedPrKind;
47
69
  export declare const HOTFIX_RELEASE_KIND: GatedPrKind;
70
+ export declare const CONTENT_RELEASE_KIND: GatedPrKind;
48
71
  export declare const CHANGE_KIND: GatedPrKind;
49
72
  export type PrMode = 'create' | 'merge';
50
73
  /**
51
74
  * The `--pr-mode` option of `idea1 release`. `create` is the default: the PR is opened and the
52
75
  * approver merges it in GitHub once the required checks are green - that merge is the approval of
53
- * record, exactly as in `merge` mode, where the CLI turns on GitHub's auto-merge on the approver's
54
- * behalf (or, where GitHub can't auto-merge, waits for the checks and merges here).
76
+ * record. In `merge` mode the CLI waits for the checks and has the Idea1 platform merge the PR as
77
+ * the approver's recorded approval, exactly as `idea1 release --approve` does. A content release is
78
+ * always merged the second way.
55
79
  */
56
80
  export declare const PR_MODE_OPTION: CommandOption;
57
81
  /** The first line of the comment that records an admin override; the evidence script keys on it. */
@@ -108,9 +132,11 @@ export interface CommitVersionBumpsOptions {
108
132
  bumps: Record<string, VersionBumpType>;
109
133
  }
110
134
  /**
111
- * Bump the versions of the pending packages in one commit on the release branch and push it, so
112
- * the release PR opens against a branch that already carries them. The commit is `chore: bump
113
- * <package> <version>, ...` and is made as whoever runs the command.
135
+ * Bump the versions of the pending packages in one commit on the release branch, so the release PR
136
+ * opens against a branch that already carries them. The bump is computed from the checkout, which is
137
+ * level with origin, and the Idea1 platform commits it onto the branch as the Idea1 GitHub App -
138
+ * `chore: bump <package> <version>, ...`, naming the releaser - only while the branch is still at the
139
+ * checkout's tip. The checkout is then fast-forwarded to the bump.
114
140
  */
115
141
  export declare function commitVersionBumps(options: CommitVersionBumpsOptions): Promise<void>;
116
142
  interface BranchCommit {
@@ -133,15 +159,19 @@ export interface ApprovalChain {
133
159
  directPushRecord: DirectPushRecord | null;
134
160
  }
135
161
  /**
136
- * The PR body, written as the approval record for everything the PR carries.
137
- *
138
- * SOC2 change management asks who approved a change and when. Each change on the source branch
139
- * was already approved by its assignee, who merged its PR into that branch. Listing those merges
140
- * here makes this PR self-contained evidence: the whole chain is readable from the one PR an
141
- * auditor lands on. Commits are attributed to PRs through GitHub's own association, so squash and
142
- * rebase merges are covered, and a commit with no PR is shown rather than silently dropped.
162
+ * The body of a new gated PR, written as the approval record for everything the PR carries: its
163
+ * opening line, then the approval chain section. A direct push it carries with no recorded reason
164
+ * is refused unless a repository admin records why; that record is returned for posting on the PR.
143
165
  */
144
166
  export declare function buildApprovalChain(sourceBranch: string, targetBranch: string, kind: GatedPrKind): Promise<ApprovalChain>;
167
+ /**
168
+ * Re-render the approval chain section of an open gated PR from the source branch as it stands on
169
+ * origin now, and write it to the PR when it differs; the rest of the body stays as it is. Returns
170
+ * whether the body changed. The direct pushes already recorded on the PR stay accounted for; one
171
+ * that landed with no recorded reason is resolved as when the PR was opened - a repository admin
172
+ * records why, on the PR - or refused.
173
+ */
174
+ export declare function refreshApprovalChain(pr: github.OpenPr, sourceBranch: string, targetBranch: string, kind: GatedPrKind): Promise<boolean>;
145
175
  export interface CreateGatedPrOptions {
146
176
  sourceBranch: string;
147
177
  targetBranch: string;
@@ -155,40 +185,40 @@ export interface CreateGatedPrOptions {
155
185
  */
156
186
  export declare function createGatedPr(options: CreateGatedPrOptions): Promise<string>;
157
187
  /**
158
- * The PR's assignee is its approver of record, and GitHub records whoever merges as `merged_by`.
159
- * The two must be the same person for the record to name the right approver: no assignee means
160
- * no approver, and a different merger is an exception the evidence report calls out - so it
161
- * takes an explicit, eyes-open confirmation.
188
+ * The signed-in Idea1 user's linked GitHub login: the identity the platform records an approval
189
+ * under, checks against a PR's assignees and checks a release role for.
162
190
  */
163
- export declare function confirmApproverIdentity(branchName: string): Promise<void>;
191
+ export declare function signedInGitHubLogin(): Promise<string>;
164
192
  /**
165
- * Merge the PR once the required checks pass. Checks that fail, never start or never finish stop
166
- * the merge; a repository with no CI/CD configured has nothing to wait for and merges straight
167
- * away. The one sanctioned admin override remains: it needs an explicit confirmation, a stated
168
- * reason, and the exception must be recorded as a comment on the PR *before* the merge - if the
169
- * comment cannot be posted, nothing is merged.
193
+ * Refuse `login` a release role they lack: only the members of `team`, a GitHub team of the
194
+ * repository's organization named by `setting` in `.idea1/settings.json`, may `action`. A repository
195
+ * that names no team for the role leaves it to anyone the release workflow admits. The platform
196
+ * checks the same role again before it merges or commits anything.
170
197
  */
171
- export declare function mergeWithCheckGate(branchName: string, kind: GatedPrKind): Promise<void>;
172
- /** What `enableAutoMergeOrPoll` left the PR as. */
173
- export type AutoMergeOutcome = 'auto-merge-enabled' | 'merged';
198
+ export declare function requireReleaseRole(team: string | null, setting: string, login: string, action: string): Promise<void>;
174
199
  /**
175
- * Merge the PR the way that records the person running this as `merged_by`, without them having to
176
- * wait: GitHub's auto-merge, which merges once the required checks pass. Where GitHub can't
177
- * auto-merge (the PR is already mergeable, or the repository doesn't allow auto-merge), it falls
178
- * back to waiting for the checks here and merging (`mergeWithCheckGate`, with its admin-override
179
- * path). Any other refusal throws.
200
+ * Refuse a release by anyone outside the release role for its kind: `release.releaserTeam` for a
201
+ * planned or hotfix release, `release.contentRelease.releaserTeam` for a content release. Returns
202
+ * the releaser's linked GitHub login.
180
203
  */
181
- export declare function enableAutoMergeOrPoll(branchName: string, kind: GatedPrKind): Promise<AutoMergeOutcome>;
204
+ export declare function requireReleaser(kind: GatedPrKind, sourceBranch: string): Promise<string>;
205
+ /**
206
+ * Merge the release PR once the required checks pass: the Idea1 platform records the releaser's
207
+ * approval on the PR and merges it as the Idea1 GitHub App, after the PR's change list is brought up
208
+ * to date with what landed on the branch while the checks ran. Checks that fail, never start or
209
+ * never finish stop the merge; a repository with no CI/CD configured has nothing to wait for. The one
210
+ * sanctioned admin override remains, merged here as the admin: it needs an explicit confirmation, a
211
+ * stated reason, and the exception must be recorded as a comment on the PR *before* the merge - if
212
+ * the comment cannot be posted, nothing is merged.
213
+ */
214
+ export declare function mergeWithCheckGate(branchName: string, targetBranch: string, kind: GatedPrKind): Promise<void>;
182
215
  export interface RunPrModeOptions {
183
216
  mode: PrMode;
184
217
  sourceBranch: string;
185
218
  targetBranch: string;
186
219
  prUrl: string;
187
220
  kind: GatedPrKind;
188
- /**
189
- * Open the Actions page after a merge made here - the merge to main triggers the production
190
- * deploy. An auto-merge GitHub performs later opens nothing.
191
- */
221
+ /** Open the Actions page once the release has merged - the merge to main triggers the production deploy. */
192
222
  openActionsAfterMerge: boolean;
193
223
  /** The approver already said to merge (`--yes`), so the merge is not confirmed again. */
194
224
  confirmed: boolean;
@@ -196,9 +226,9 @@ export interface RunPrModeOptions {
196
226
  /**
197
227
  * Finish the sequence in the chosen mode. Either way the merge is the approval of record: in
198
228
  * `create` mode the approver performs it in GitHub once the checks are green; in `merge` mode the
199
- * CLI turns on GitHub's auto-merge as the approver, so GitHub merges once the checks pass and
200
- * records the approver as the merger - or, where GitHub can't auto-merge, waits for the checks and
201
- * merges here.
229
+ * CLI waits for the checks and the Idea1 platform merges it as the approver's recorded approval. A
230
+ * content release is merged only the second way, since its releaser cannot merge into the release
231
+ * target in GitHub, so `create` mode leaves it for `idea1 release --approve`.
202
232
  */
203
233
  export declare function runPrMode(options: RunPrModeOptions): Promise<void>;
204
234
  /**
@@ -209,12 +239,14 @@ export declare function runPrMode(options: RunPrModeOptions): Promise<void>;
209
239
  */
210
240
  export declare function ensureReleasable(sourceBranch: string, targetBranch: string): Promise<void>;
211
241
  /**
212
- * `idea1 release --approve`: approve and merge the open release PR from the source branch into the
213
- * target, as its approver. Only a PR that follows the release workflow is approved, and only by one
214
- * of its assignees, its approvers of record, exactly as the Idea1 web app approves it. With every
215
- * check passed it merges now; with checks still running it turns on auto-merge (or waits and merges
216
- * where GitHub can't auto-merge); with a failed check it goes to the gate's admin-override path,
217
- * which refuses unless the override is confirmed, reasoned and recorded.
242
+ * `idea1 release --approve`: approve the open release PR from the source branch into the target, as
243
+ * its approver, and have the Idea1 platform merge it. Only a PR that follows the release workflow is
244
+ * approved, and only by one of its assignees, its approvers of record, who holds the release role for
245
+ * its kind of release - the platform checks both again. The CLI waits for the required checks, and
246
+ * the platform records the approval on the PR and merges it as the Idea1 GitHub App; with a failed
247
+ * check it goes to the gate's admin-override path, which refuses unless the override is confirmed,
248
+ * reasoned and recorded. Before any of that, the PR's change list is brought up to date with what
249
+ * landed on the branch since it was opened.
218
250
  */
219
251
  export declare function approveRelease(sourceBranch: string, targetBranch: string, kind: GatedPrKind): Promise<void>;
220
252
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"release-engine.d.ts","sourceRoot":"","sources":["../../../src/workflow/engine/release-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"release-engine.d.ts","sourceRoot":"","sources":["../../../src/workflow/engine/release-engine.ts"],"names":[],"mappings":"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"}