@idea1/cli 1.10.3 → 1.11.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 (73) hide show
  1. package/README.md +43 -16
  2. package/dist/commands/help.d.ts.map +1 -1
  3. package/dist/commands/help.js +19 -2
  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 +15 -9
  18. package/dist/commands/release.d.ts.map +1 -1
  19. package/dist/commands/release.js +60 -31
  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 +15 -4
  26. package/dist/lib/settings.d.ts.map +1 -1
  27. package/dist/lib/settings.js +17 -2
  28. package/dist/lib/settings.js.map +1 -1
  29. package/dist/lib/shell.d.ts.map +1 -1
  30. package/dist/lib/shell.js +4 -0
  31. package/dist/lib/shell.js.map +1 -1
  32. package/dist/prompts/platform-prompts.d.ts +5 -30
  33. package/dist/prompts/platform-prompts.d.ts.map +1 -1
  34. package/dist/prompts/platform-prompts.js +5 -44
  35. package/dist/prompts/platform-prompts.js.map +1 -1
  36. package/dist/services/github.d.ts +15 -3
  37. package/dist/services/github.d.ts.map +1 -1
  38. package/dist/services/github.js +20 -1
  39. package/dist/services/github.js.map +1 -1
  40. package/dist/services/platform-auth.d.ts +43 -0
  41. package/dist/services/platform-auth.d.ts.map +1 -0
  42. package/dist/services/platform-auth.js +380 -0
  43. package/dist/services/platform-auth.js.map +1 -0
  44. package/dist/services/platform.d.ts +23 -16
  45. package/dist/services/platform.d.ts.map +1 -1
  46. package/dist/services/platform.js +188 -190
  47. package/dist/services/platform.js.map +1 -1
  48. package/dist/services/setup.d.ts.map +1 -1
  49. package/dist/services/setup.js +4 -1
  50. package/dist/services/setup.js.map +1 -1
  51. package/dist/types/index.d.ts +18 -0
  52. package/dist/types/index.d.ts.map +1 -1
  53. package/dist/types/index.js +1 -1
  54. package/dist/types/index.js.map +1 -1
  55. package/dist/workflow/data/team-member.d.ts +9 -2
  56. package/dist/workflow/data/team-member.d.ts.map +1 -1
  57. package/dist/workflow/data/team-member.js +8 -1
  58. package/dist/workflow/data/team-member.js.map +1 -1
  59. package/dist/workflow/engine/approval-flow.d.ts +3 -3
  60. package/dist/workflow/engine/approval-flow.d.ts.map +1 -1
  61. package/dist/workflow/engine/approval-flow.js +5 -5
  62. package/dist/workflow/engine/approval-flow.js.map +1 -1
  63. package/dist/workflow/engine/branch-setup.d.ts +1 -1
  64. package/dist/workflow/engine/branch-setup.js +1 -1
  65. package/dist/workflow/engine/handlers/approve-pr.d.ts +1 -1
  66. package/dist/workflow/engine/handlers/approve-pr.js +1 -1
  67. package/dist/workflow/engine/handlers/ready-for-approval.d.ts +1 -1
  68. package/dist/workflow/engine/handlers/ready-for-approval.js +1 -1
  69. package/dist/workflow/engine/release-engine.d.ts +41 -24
  70. package/dist/workflow/engine/release-engine.d.ts.map +1 -1
  71. package/dist/workflow/engine/release-engine.js +151 -80
  72. package/dist/workflow/engine/release-engine.js.map +1 -1
  73. package/package.json +2 -1
package/README.md CHANGED
@@ -8,6 +8,23 @@ CLI tool for Idea1.ai workflow automation - AI-assisted development workflows.
8
8
  npm install -g @idea1/cli
9
9
  ```
10
10
 
11
+ ## Signing in
12
+
13
+ The CLI reaches idea1.ai through the platform's REST API, signed in as you on one of your teams.
14
+
15
+ ```bash
16
+ idea1 login # sign in in the browser and pick the team the CLI works on
17
+ idea1 logout # revoke the sign-in and remove it from this computer
18
+ ```
19
+
20
+ `idea1 login` opens the idea1.ai consent page in the browser, where you approve the CLI and choose the team; the CLI then prints the account and team it is signed in as. The CLI is an OAuth client of api.idea1.ai: it registers itself the first time, signs in with the authorization code flow and PKCE, and receives the browser's redirect on a local loopback port. Its access is limited to reading the team and reading and writing its projects (`team:read projects:read projects:write`).
21
+
22
+ The sign-in is kept in the operating system's credential store (macOS Keychain, Windows Credential Manager, the Secret Service on Linux) under the service `idea1-cli`, one entry per API base URL. Access tokens are short-lived and renewed automatically; the CLI processes of a parallel run share the one sign-in. A command that needs idea1.ai while you are not signed in starts the sign-in; an unattended run (a target of a batch) fails instead, asking for `idea1 login`.
23
+
24
+ Environment variables:
25
+ - `IDEA1_TOKEN` - a bearer token every platform call uses instead of the sign-in, such as a team API client's token in CI. Nothing is read from or kept in the credential store while it is set.
26
+ - `IDEA1_API_BASE_URL` - the platform's API (default: `https://api.idea1.ai`).
27
+
11
28
  ## Usage
12
29
 
13
30
  ### Headless Mode
@@ -44,7 +61,7 @@ idea1 approve-pr --target working/integration/<name>-main
44
61
  idea1 approve-pr --target https://app.idea1.ai/project/items/590,working/agent/fix-config,https://github.com/org/repo/pull/912
45
62
 
46
63
  # Release the release branch to production (bumps changed packages' versions, opens the release PR into main assigned to you, and merges it once the checks pass)
47
- idea1 release # or: idea1 r
64
+ idea1 release # or: idea1 r; on working/hotfix it is a hotfix release of that branch
48
65
  idea1 release --approve # approve and merge the release PR that is already open
49
66
  idea1 release --target <item url>,<branch> # approve these into working/release first, then release once all have merged
50
67
 
@@ -104,7 +121,7 @@ The state names and their order are defined once, in `shared-config/workflow-sta
104
121
 
105
122
  ### How the workflow engine works
106
123
 
107
- An item **under workflow management** has a *workflow context* on idea1.ai: its workflow status together with the one branch on origin that carries its work — the repository and branch name, the PR target (base) branch, the dev workflow type and any stack or integration branch. An item with no context is outside workflow management and has no status. The CLI reads and records the context through the platform's MCP tools (`get_item_summary_for_branch`, `get_item_summary`, `upsert_item_workflow_context`) and, having run a transition's automation itself, records the state it reached directly with `update_item`'s `workflowStatus` (and `assignedToEmail`, when the state takes a teammate assignment; the team's members come from `list_team_members`); the web client works on the same context, so the two always agree, and any clone resolves a branch to its item from the platform. The branching decisions the context records (dev workflow type, stack and integration branch, branch name) are made once, when the item's branch is created, and are never asked again for an item that has one. Locally, each clone remembers the item URL a branch was last resolved to in its git config, so ordinary branches are recognized as unmanaged instantly.
124
+ An item **under workflow management** has a *workflow context* on idea1.ai: its workflow status together with the one branch on origin that carries its work — the repository and branch name, the PR target (base) branch, the dev workflow type and any stack or integration branch. An item with no context is outside workflow management and has no status. The CLI reads and records the context through the platform's REST API (an item's summary by item or by branch, and the item's workflow context) and, having run a transition's automation itself, records the state it reached directly as the item's workflow status (with the teammate assigned, when the state takes a teammate assignment; the team's members come from the API too); the web client works on the same context, so the two always agree, and any clone resolves a branch to its item from the platform. The branching decisions the context records (dev workflow type, stack and integration branch, branch name) are made once, when the item's branch is created, and are never asked again for an item that has one. Locally, each clone remembers the item URL a branch was last resolved to in its git config, so ordinary branches are recognized as unmanaged instantly.
108
125
 
109
126
  The branch itself carries the work. A branch's PR is therefore gated on a CI/CD run of exactly what merges, and `approve-pr` merges that run's head. When a branch is deleted on GitHub the context keeps its name and records whether the work merged; a context whose branch is gone without merging gets a new branch the next time the item enters a pre-merge state, while merged work stays merged. Branches put under workflow before the platform kept contexts carry a legacy `.idea1/<branch>.json` file, which the CLI removes from the branch before the approval gate.
110
127
 
@@ -127,13 +144,13 @@ A transition is "enter state X". Entering a state runs that state's automation (
127
144
 
128
145
  A change reaches production through two merges, and **each merge is its approval**.
129
146
 
130
- **Into `working/release`** — the PR's **assignee** (required) is its approver: the teammate the project item is assigned to on the way into Needs Approval for Release, through their linked GitHub account. They review the code and approve it by running `idea1 approve-pr`, which waits for the full CI/CD suite and then **merges** the PR. That is not the GitHub "Approve" button, which only leaves a review behind and merges nothing. A red or unfinished suite stops the merge, and there is no override at this stage. `approve-pr` checks that the person merging is the assignee; anyone else has to confirm explicitly, and the evidence report lists that merge as an exception. GitHub records the approval as `merged_by`, with its timestamp and merge commit.
147
+ **Into `working/release`** — the PR's **assignee** (required) is its approver: the teammate the project item is assigned to on the way into Needs Approval for Release, through their linked GitHub account. They review the code and approve it by running `idea1 approve-pr`, which waits for the full CI/CD suite and then **merges** the PR. That is not the GitHub "Approve" button, which only leaves a review behind and merges nothing. A red or unfinished suite stops the merge, and there is no override at this stage. `approve-pr` checks that the person merging is the assignee; anyone else has to confirm explicitly, and the evidence report lists that merge as an exception. GitHub records the approval as `merged_by`, with its timestamp and merge commit. A change approved in the Idea1 web app is merged by the Idea1 GitHub App instead, and only by one of the PR's assignees with a linked GitHub account; the app first posts an approval comment naming that assignee, and that comment is the approval of record.
131
148
 
132
149
  **Any other branch into `working/release`** — a branch with no project item takes the same gate. `idea1 ready-for-approval` opens its PR (with the approval chain of what the branch carries as the body) and names its assignee — a teammate, assigned through their linked GitHub account, with no item to assign; `idea1 approve-pr` merges it once the suite passes, with the same no-override rule, and then deletes the branch. Only the idea1.ai status writes are absent. Integration branches work this way: work items PR into `working/integration/<name>-main` and are approved there exactly as above, then the integration branch itself is carried into `working/release` with these two commands — its PR body lists every work-item PR and who approved it, and `approve-pr` refuses while any PR still targets the integration branch.
133
150
 
134
- **Into `main`** — `idea1 release` opens the release PR **assigned to whoever ran it**: the releaser is the approver, and their merge is the recorded approval. No review is required — every change in the release was already approved above, and the release PR body lists each contained PR with who approved it. What this stage gates is the build: the required CI/CD checks must pass first. In the default `create` mode the releaser merges the PR in GitHub once the checks are green; in `merge` mode (and with `idea1 release --approve`) the CLI turns on GitHub's auto-merge as the releaser, so GitHub merges once the checks pass and records the releaser as `merged_by`, or waits for the checks with `gh` and merges here where GitHub can't auto-merge. A release approved in the Idea1 web app is merged by the Idea1 GitHub App instead; the app first posts an approval comment naming the releaser, who is the PR's assignee, and that comment is the approval of record. An emergency admin override past a red check needs an explicit confirmation and a stated reason, and is recorded as a comment on the PR before the merge.
151
+ **Into `main`** — only two branches are released into `main`: `working/release` in a planned release, and `working/hotfix` in a hotfix release. `idea1 release` opens the release PR **assigned to whoever ran it**: the releaser is the approver, and their merge is the recorded approval. A planned release needs no review — every change in it was already approved above, and the release PR body lists each contained PR with who approved it. Where the repository's `release.releaseBranchChanges` is `approved-only`, a commit pushed straight to `working/release` stops the release until a repository admin records why it was pushed directly, which goes on the PR; where it is `direct-allowed`, such a commit is listed on the PR for the releaser to review. A hotfix release carries an isolated fix pushed straight to `working/hotfix`, for when `working/release` is not ready to release; its one PR into `main` is where the fix is reviewed and approved. What this stage gates is the build: the required CI/CD checks must pass first. In the default `create` mode the releaser merges the PR in GitHub once the checks are green; in `merge` mode (and with `idea1 release --approve`) the CLI turns on GitHub's auto-merge as the releaser, so GitHub merges once the checks pass and records the releaser as `merged_by`, or waits for the checks with `gh` and merges here where GitHub can't auto-merge. A release approved in the Idea1 web app is merged by the Idea1 GitHub App instead; the app first posts an approval comment naming the releaser, who is the PR's assignee, and that comment is the approval of record. An emergency admin override past a red check needs an explicit confirmation and a stated reason, and is recorded as a comment on the PR before the merge.
135
152
 
136
- This is the change-management control DataFabrIQ is audited on; see `infrastructure/soc2/policies/change-management-policy.md` clause 2.
153
+ This is the change-management control DataFabrIQ is audited on; see "Approval and release gates" in `infrastructure/soc2/policies/change-management-policy.md`.
137
154
 
138
155
  ### start
139
156
 
@@ -395,10 +412,14 @@ idea1 approve-pr --target <url>,<branch>,<pr url> --yes # several, in paral
395
412
 
396
413
  ### release
397
414
 
398
- Release everything on the release branch to production. Bumps the versions of the packages that changed since the last release (committing the bump to the release branch), opens the release PR from `working/release` into `main`, **assigned to you**, and merges it — the person who runs the command is the releaser and the approver, and no review is required, because every change in the release was already approved on its own PR.
415
+ Release to production. Bumps the versions of the packages that changed since the last release (committing the bump to the branch being released), opens the release PR into `main`, **assigned to you**, and merges it — the person who runs the command is the releaser and the approver. A release is made from one of two branches:
416
+
417
+ - **Planned release** — the base branch (`working/release`): everything approved into it since the last release. No review is required, because every change in it was already approved on its own PR. A repository that sets `release.releaseBranchChanges` to `direct-allowed` also accepts changes made directly on the base branch; see [Release Settings](#release-settings).
418
+ - **Hotfix release** — the hotfix branch (`defaults.hotfixBranch`, `working/hotfix` by default), for an isolated fix that cannot wait until `working/release` is ready to release. The fix is pushed straight to the hotfix branch, and the release PR is where it is reviewed and approved, so there is one PR for it, not two. Run `idea1 release` on the hotfix branch to release it. Bring the hotfix branch level with `main` before pushing the fix, and once the release has merged, merge `main` into `working/release` so the next planned release carries the fix.
399
419
 
400
420
  ```bash
401
421
  idea1 release # prompts for any version bumps, the PR mode and title
422
+ idea1 release # on working/hotfix: a hotfix release of that branch
402
423
  idea1 release --bumps filekit=minor,cli=patch # bump types given up front
403
424
  idea1 release --pr-mode merge # enable auto-merge (or wait for the checks and merge here)
404
425
  idea1 release --approve # approve and merge the open release PR
@@ -407,26 +428,26 @@ idea1 r
407
428
  ```
408
429
 
409
430
  **Options:**
410
- - `-b, --branch <branch>` - Source branch to release from (default: `baseBranch`, then `working/release`)
431
+ - `-b, --branch <branch>` - Branch to release: `baseBranch` (a planned release) or `hotfixBranch` (a hotfix release); any other branch is refused (default: `hotfixBranch` when it is checked out, else `baseBranch`)
411
432
  - `-t, --target-branch <branch>` - Target branch to release into (default: `releaseTargetBranch`, then `main`)
412
433
  - `--approve` - Approve and merge the release PR that is already open, instead of opening one. See [Approving an open release](#approving-an-open-release)
413
- - `--target <url | branch | PR url>[,...]` - Project items, branches or PRs to approve into the release branch before releasing it. Asked for, blank by default, which releases the branch as it is. See [Releasing with approvals](#releasing-with-approvals)
434
+ - `--target <url | branch | PR url>[,...]` - Planned releases only: project items, branches or PRs to approve into the base branch before releasing it. Asked for, blank by default, which releases the branch as it is. See [Releasing with approvals](#releasing-with-approvals)
414
435
  - `--bumps <package=type,...>` - Version bump per changed package, as `patch`, `minor` or `major` (e.g. `filekit=minor,cli=patch`). A changed package it doesn't name is prompted for, with `patch` preselected; a package that needs no bump is ignored
415
436
  - `-pr, --pr-mode <mode>` - `create` (default) creates the PR and opens it in the browser so you merge it there once the required checks pass; `merge` turns on GitHub's auto-merge, so GitHub merges once the required checks pass, and falls back to waiting for every check with `gh` and merging here when GitHub can't auto-merge (the PR is already mergeable, or the repository doesn't allow auto-merge). You are the recorded merger, and the merge is the recorded approval, in every case
416
- - `--title <title>` - PR title (default: `Release <YYYY-MM-DD>`)
437
+ - `--title <title>` - PR title (default: `Release <YYYY-MM-DD>`, or `Hotfix release <YYYY-MM-DD>`)
417
438
  - `-y, --yes` - In `merge` mode, merge without asking for confirmation; with `--target`, also start the approvals without asking. The required checks still gate every merge
418
439
 
419
440
  **What it does:**
420
- 1. Requires you to be on the release branch with nothing uncommitted, unpushed or behind origin, and to have write access to the repository. Refuses when a PR from the release branch into the target is already open: one that does not follow the release workflow (it has no assignee, or its description carries no approval chain) has to be fixed in GitHub or closed, and a release PR is approved with `--approve` instead. The Idea1 web app refuses a release on the same terms
441
+ 1. Requires you to be on the branch being released with nothing uncommitted, unpushed or behind origin, and to have write access to the repository. Refuses when a PR from the release branch into the target is already open: one that does not follow the release workflow (it has no assignee, or its description carries no approval chain) has to be fixed in GitHub or closed, and a release PR is approved with `--approve` instead. The Idea1 web app refuses a release on the same terms
421
442
  2. Bumps versions, when the repository's `.idea1/settings.json` has a `release` section (see [Release Settings](#release-settings)). A versioned package needs a bump when its folder differs between the release branch and the target and its `package.json` version is still the same on both — so a release re-run after a bump never bumps twice. You pick `patch`, `minor` or `major` for each such package (or give them with `--bumps`), and are asked nothing when no package changed. The CLI makes the bump itself, in your checkout, with no script or workflow: it sets the new version in each package's `package.json` and in the lockfiles at or above the package's folder that record it (the same files `npm version` touches, edited in place so nothing else changes), commits them as one `chore: bump <package> <version>, ...` commit and pushes it to the release branch. Only plain `major.minor.patch` versions are bumped. The bump lands before the PR is opened, so its commit is the PR's head and the suite runs once, on the release as it will merge. The Idea1 web app's release view makes the same bump through the GitHub API
422
- 3. Creates the release PR assigned to you, whose body is the release's approval chain: every contained PR — attributed by GitHub's commit association, so squash and rebase merges are covered — with its author and the assignee who approved it by merging. Commits with no PR are listed separately, split in two: the version bumps (a commit with no PR that changes only version files, meaning the `package.json` of a declared package and the lockfiles above it, whatever its name or author), which are release automation and not an exception, and genuine direct commits, which are exceptions under change-management-policy.md clause 2, explained at the quarterly review
423
- 4. Refuses the release when nothing in it came through a merged PR. A repository admin can override that — an explicit confirmation and a required reason — and the exception is recorded as a comment on the PR naming the admin, the reason and every commit that had no PR, as well as in the PR body. Anyone who is not a repository admin just gets the refusal
443
+ 3. Creates the release PR assigned to you, whose body is the release's approval chain: every contained PR — attributed by GitHub's commit association, so squash and rebase merges are covered — with its author and the assignee who approved it by merging. Commits with no PR are listed separately, split in two: the version bumps (a commit with no PR that changes only version files, meaning the `package.json` of a declared package and the lockfiles above it, whatever its name or author), which are release automation, and the direct commits. In a hotfix release the direct commits are the hotfix, listed as the change the PR's assignee reviews and approves by merging
444
+ 4. In a planned release of a repository whose `release.releaseBranchChanges` is `approved-only` (the default), refuses direct commits. A repository admin (the production root tier) can release them anyway — an explicit confirmation and a required reason for pushing them directly — and the reason is recorded as a comment on the PR naming the admin and every commit that had no PR, as well as in the PR body. Anyone who is not a repository admin just gets the refusal. Where it is `direct-allowed`, the direct commits are not refused: they are listed like a hotfix's, as the change the PR's assignee reviews and approves by merging, and no admin or reason is needed
424
445
  5. In `merge` mode, enables auto-merge, or waits for the required CI/CD checks and merges normally. Checks that fail, never start or never finish stop the release; an admin override is available but takes an explicit confirmation and a required reason, and the exception is recorded as a comment on the PR before anything is merged
425
446
  6. Opens GitHub Actions once it has merged the PR itself, where the merge to `main` has triggered the production deploy
426
447
 
427
448
  #### Releasing with approvals
428
449
 
429
- `idea1 release --target <items, branches or PRs>` releases the release branch once the given targets are approved into it, as one unattended sequence:
450
+ `idea1 release --target <items, branches or PRs>` releases the base branch once the given targets are approved into it, as one unattended sequence (a hotfix release takes no targets):
430
451
 
431
452
  1. **Checks:** your checkout must be on the release branch, clean and level with origin, and the release must be one that can be created (see step 1 above). Then every target is resolved exactly as `approve-pr` resolves several targets.
432
453
  2. **Questions, all asked up front:**
@@ -444,7 +465,7 @@ In interactive mode the whole sequence runs as a background job (see `/jobs`); o
444
465
 
445
466
  #### Approving an open release
446
467
 
447
- `idea1 release --approve` finds the open release PR from the release branch into the target and merges it as its approver, on the same terms as the Idea1 web app: you need write access to the repository, the PR must follow the release workflow (an assignee, and the approval chain as its description), and you must be one of its assignees — anyone else is refused, and the PR is reassigned in GitHub or approved by its assignee. Then:
468
+ `idea1 release --approve` finds the open release PR from the branch being released (the hotfix branch when it is checked out, else the base branch) into the target and merges it as its approver, on the same terms as the Idea1 web app: you need write access to the repository, the PR must follow the release workflow (an assignee, and the approval chain as its description), and you must be one of its assignees — anyone else is refused, and the PR is reassigned in GitHub or approved by its assignee. Then:
448
469
  - every check passed — merges now
449
470
  - checks still running — enables auto-merge, or waits for the checks and merges where GitHub can't auto-merge
450
471
  - a check failed — stops, unless a repository admin confirms the admin override, gives a reason, and has it recorded on the PR before the merge
@@ -526,11 +547,12 @@ Create `.idea1/settings.json` in your repository root to configure repo-specific
526
547
 
527
548
  ### Release Settings
528
549
 
529
- The optional `release` section declares the repository folders `idea1 release` (and the Idea1 web app's release view) can version. A repository without it has no version bump step.
550
+ The optional `release` section configures `idea1 release` and the Idea1 web app's release view: how changes may reach the release branch, and the repository folders a release versions. A repository without `versionedPackages` has no version bump step.
530
551
 
531
552
  ```json
532
553
  {
533
554
  "release": {
555
+ "releaseBranchChanges": "approved-only",
534
556
  "versionedPackages": [
535
557
  { "name": "filekit", "label": "filekit package", "path": "packages/filekit" },
536
558
  { "name": "cli", "label": "idea1 CLI", "path": "omega/idea1-cli" }
@@ -539,6 +561,11 @@ The optional `release` section declares the repository folders `idea1 release` (
539
561
  }
540
562
  ```
541
563
 
564
+ - `releaseBranchChanges` - How changes may reach the release branch (`defaults.baseBranch`), the branch a planned release is cut from. This is the workflow's own policy, independent of how the repository host enforces it:
565
+ - `approved-only` (default) - every change reaches the release branch through its own approved change. A release carrying a commit made directly on the branch is refused until a repository admin records why it was made there (only the CLI releases one; the web app refuses it). The right setting for a repository whose release branch is protected so that only an approved change, or a recorded admin exception, can land
566
+ - `direct-allowed` - changes may also be made directly on the release branch. A release carries such a commit and lists it in the release PR for the releaser to review, with no admin and no reason recorded, in the CLI and the web app alike. The right setting for a repository where developers commit to the release branch
567
+
568
+ The release target branch (`defaults.releaseTargetBranch`, `main`) is not configurable: it only ever changes through a release PR, never by a direct push. `settings.local.json` can override this setting for a clone, which changes what that clone's `idea1 release` accepts; the web app reads only the committed `settings.json`
542
569
  - `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`, relative to the repository root). A package needs a bump when its folder differs between the release branch and the target while its `package.json` version is the same on both
543
570
 
544
571
  ### Local Settings Overrides
@@ -649,7 +676,7 @@ its `.idea1/settings.json`.
649
676
 
650
677
  Every use of Claude Code goes through `src/services/claude.ts`, the only module that spawns `claude`. It always passes `--model` and `--effort`: a caller that states neither gets the documented defaults (`opus`, `high` — the same defaults a Claude session on an item offers), so a run never inherits whatever was last picked in an interactive session.
651
678
 
652
- Access to the Idea1 cloud platform — reading a project item's summary (by item or by the branch it implements), recording the item's workflow context, setting its workflow status, creating items, listing Projects, generating a branch name — goes through `src/services/platform.ts`. Its prompts are Handlebars templates in `src/prompts/`, rendered by `src/services/template-renderer.ts` like every other prompt. Today it drives the Idea1 MCP tools through Claude on `sonnet` at `medium` effort (these are simple tool calls, not implementation sessions); that transport is the module's implementation detail and may become direct calls to the platform API. A Claude session started on an item's branch (entering Agent Implementation, or joining an item) is the one place the model and effort are the user's choice (`--model`, `--effort`); a Claude Desktop session that names neither runs with Desktop's own. Opening URLs (Claude Desktop's `claude://` links) and terminal windows goes through `src/services/os-launcher.ts`, which uses only the tools macOS and Windows provide.
679
+ Access to the Idea1 cloud platform — reading a project item's summary (by item or by the branch it implements), recording the item's workflow context, setting its workflow status, creating items, listing Projects and team members, generating a branch name — goes through `src/services/platform.ts`, which calls the platform's REST API with the credential described in [Signing in](#signing-in). Claude is used there only to generate a branch name from an item's description, on `sonnet` at `medium` effort; the prompt is a Handlebars template in `src/prompts/`, rendered by `src/services/template-renderer.ts` like every other prompt. Agent sessions reach Idea1 through Claude's own Idea1 MCP connection. A Claude session started on an item's branch (entering Agent Implementation, or joining an item) is the one place the model and effort are the user's choice (`--model`, `--effort`); a Claude Desktop session that names neither runs with Desktop's own. Opening URLs (Claude Desktop's `claude://` links) and terminal windows goes through `src/services/os-launcher.ts`, which uses only the tools macOS and Windows provide.
653
680
 
654
681
  ## Requirements
655
682
 
@@ -1 +1 @@
1
- {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAMjD,eAAO,MAAM,WAAW,EAAE,OAoLzB,CAAC"}
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAMjD,eAAO,MAAM,WAAW,EAAE,OAsMzB,CAAC"}
@@ -53,8 +53,14 @@ export const helpCommand = {
53
53
  console.log(' merge it once the suite passes. No override, no status recorded.');
54
54
  console.log();
55
55
  console.log(` ${chalk.bold('Into main')} ${chalk.bold('release')} opens the release PR assigned to whoever ran it - the`);
56
- console.log(' releaser is the approver and merges it. No review is required:');
57
- console.log(' every change in the release was already approved above. The');
56
+ console.log(' releaser is the approver and merges it. Only working/release (a');
57
+ console.log(' planned release) and working/hotfix (a hotfix release, run there)');
58
+ console.log(' are released. A planned release needs no review: every change in');
59
+ console.log(' it was already approved above, and (release.releaseBranchChanges:');
60
+ console.log(' approved-only) a direct push stops it until a repository admin');
61
+ console.log(' records why on the PR; with direct-allowed it is listed for review.');
62
+ console.log(' A hotfix is pushed to');
63
+ console.log(' working/hotfix directly and reviewed in its one release PR. The');
58
64
  console.log(' gate is the required CI/CD suite. Default mode creates the PR');
59
65
  console.log(' to merge in GitHub once green; --pr-mode merge (and --approve)');
60
66
  console.log(' enables auto-merge, or waits for the checks with gh and merges');
@@ -121,6 +127,15 @@ export const helpCommand = {
121
127
  }
122
128
  }
123
129
  logger.newline();
130
+ console.log(chalk.bold('SIGNING IN:'));
131
+ console.log();
132
+ console.log(' The CLI reaches idea1.ai through its API, signed in as you on one of your teams.');
133
+ console.log(` ${chalk.bold('login')} Sign in in the browser and pick the team; the sign-in is kept in the OS credential store`);
134
+ console.log(` ${chalk.bold('logout')} Revoke the sign-in and remove it from this computer`);
135
+ console.log(' A command that needs idea1.ai signs you in when you are not; an unattended run asks for `idea1 login` instead.');
136
+ console.log(` ${chalk.dim('IDEA1_TOKEN')} A bearer token every call uses instead of the sign-in (CI, with a team API client token)`);
137
+ console.log(` ${chalk.dim('IDEA1_API_BASE_URL')} The platform's API (default: https://api.idea1.ai)`);
138
+ console.log();
124
139
  console.log(chalk.bold('CONFIGURATION:'));
125
140
  console.log();
126
141
  console.log(' Settings are resolved in priority order:');
@@ -134,10 +149,12 @@ export const helpCommand = {
134
149
  console.log(` ${chalk.dim('defaults.baseBranch')} Base branch for PRs, and the branch releases are cut from (default: working/release)`);
135
150
  console.log(` ${chalk.dim('defaults.branchPrefix')} Agent branch prefix (default: working/agent)`);
136
151
  console.log(` ${chalk.dim('defaults.releaseTargetBranch')} Branch a release merges into (default: main)`);
152
+ console.log(` ${chalk.dim('defaults.hotfixBranch')} Branch a hotfix release is made from, run there with idea1 release (default: working/hotfix)`);
137
153
  console.log(` ${chalk.dim('defaults.integrationBranchPrefix')} Integration prefix (default: working/integration)`);
138
154
  console.log(` ${chalk.dim('defaults.integrationBranchTemplate')} Template for integration branch name`);
139
155
  console.log(` ${chalk.dim('defaults.integrationWorkBranchTemplate')} Template for work item branch name`);
140
156
  console.log(` ${chalk.dim('defaults.removeWorktreeAtState')} Workflow state that removes the worktree (default: Needs Approval for Release)`);
157
+ console.log(` ${chalk.dim('release.releaseBranchChanges')} How changes reach the release branch: approved-only (default) or direct-allowed`);
141
158
  console.log(` ${chalk.dim('release.versionedPackages')} Package folders a release bumps when they changed: { name, label, path }`);
142
159
  console.log(` ${chalk.dim('prompts.entryPoints')} Entry point prompts by workflow state: [{ name, template | templateFile }]`);
143
160
  console.log();
@@ -1 +1 @@
1
- {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,8 @@ import { updateBranchCommand } from './update-branch.js';
16
16
  import { getProjectItemUrlCommand } from './get-project-item-url.js';
17
17
  import { shipLocalChangesCommand } from './ship-local-changes.js';
18
18
  import { openUrlCommand, registerUrlHandlerCommand, unregisterUrlHandlerCommand } from './url-handler.js';
19
+ import { loginCommand } from './login.js';
20
+ import { logoutCommand } from './logout.js';
19
21
  /**
20
22
  * Get a command by name or alias
21
23
  */
@@ -28,5 +30,5 @@ export declare function getAllCommands(): Command[];
28
30
  * Get all command names and aliases for autocomplete
29
31
  */
30
32
  export declare function getAllCommandNamesAndAliases(): string[];
31
- export { startCommand, startAgentImplementationCommand, joinProjectItemCommand, attachProjectItemCommand, closeWorktreeCommand, createWorktreeCommand, pushCommand, helpCommand, releaseCommand, startDevImplementationCommand, readyForApprovalCommand, approvePrCommand, nextWorkflowStepCommand, updateBranchCommand, getProjectItemUrlCommand, shipLocalChangesCommand, registerUrlHandlerCommand, unregisterUrlHandlerCommand, openUrlCommand };
33
+ export { startCommand, startAgentImplementationCommand, joinProjectItemCommand, attachProjectItemCommand, closeWorktreeCommand, createWorktreeCommand, pushCommand, helpCommand, releaseCommand, startDevImplementationCommand, readyForApprovalCommand, approvePrCommand, nextWorkflowStepCommand, updateBranchCommand, getProjectItemUrlCommand, shipLocalChangesCommand, registerUrlHandlerCommand, unregisterUrlHandlerCommand, openUrlCommand, loginCommand, logoutCommand };
32
34
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AA6C1G;;GAEG;AACH,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAEnE;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,EAAE,CAM1C;AAED;;GAEG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,EAAE,CAEvD;AAED,OAAO,EACL,YAAY,EACZ,+BAA+B,EAC/B,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,cAAc,EACd,6BAA6B,EAC7B,uBAAuB,EACvB,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,EAC3B,cAAc,EACf,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,+BAA+B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC1G,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AA+C5C;;GAEG;AACH,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAEnE;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,EAAE,CAM1C;AAED;;GAEG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,EAAE,CAEvD;AAED,OAAO,EACL,YAAY,EACZ,+BAA+B,EAC/B,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,cAAc,EACd,6BAA6B,EAC7B,uBAAuB,EACvB,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,EAC3B,cAAc,EACd,YAAY,EACZ,aAAa,EACd,CAAC"}
@@ -15,6 +15,8 @@ import { updateBranchCommand } from './update-branch.js';
15
15
  import { getProjectItemUrlCommand } from './get-project-item-url.js';
16
16
  import { shipLocalChangesCommand } from './ship-local-changes.js';
17
17
  import { openUrlCommand, registerUrlHandlerCommand, unregisterUrlHandlerCommand } from './url-handler.js';
18
+ import { loginCommand } from './login.js';
19
+ import { logoutCommand } from './logout.js';
18
20
  /**
19
21
  * Command registry - Map-based for O(1) lookup
20
22
  */
@@ -47,6 +49,8 @@ registerCommand(getProjectItemUrlCommand);
47
49
  registerCommand(registerUrlHandlerCommand);
48
50
  registerCommand(unregisterUrlHandlerCommand);
49
51
  registerCommand(openUrlCommand);
52
+ registerCommand(loginCommand);
53
+ registerCommand(logoutCommand);
50
54
  // lower level operations, we can re-enable these if they end up being needed, but, going forward,
51
55
  // commands should be at a 'workflow' level rather than 'git' level.
52
56
  // registerCommand(closeWorktreeCommand);
@@ -74,5 +78,5 @@ export function getAllCommands() {
74
78
  export function getAllCommandNamesAndAliases() {
75
79
  return Array.from(commandRegistry.keys());
76
80
  }
77
- export { startCommand, startAgentImplementationCommand, joinProjectItemCommand, attachProjectItemCommand, closeWorktreeCommand, createWorktreeCommand, pushCommand, helpCommand, releaseCommand, startDevImplementationCommand, readyForApprovalCommand, approvePrCommand, nextWorkflowStepCommand, updateBranchCommand, getProjectItemUrlCommand, shipLocalChangesCommand, registerUrlHandlerCommand, unregisterUrlHandlerCommand, openUrlCommand };
81
+ export { startCommand, startAgentImplementationCommand, joinProjectItemCommand, attachProjectItemCommand, closeWorktreeCommand, createWorktreeCommand, pushCommand, helpCommand, releaseCommand, startDevImplementationCommand, readyForApprovalCommand, approvePrCommand, nextWorkflowStepCommand, updateBranchCommand, getProjectItemUrlCommand, shipLocalChangesCommand, registerUrlHandlerCommand, unregisterUrlHandlerCommand, openUrlCommand, loginCommand, logoutCommand };
78
82
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from '../types/index.js';
2
+ export declare const loginCommand: Command;
3
+ //# sourceMappingURL=login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAKjD,eAAO,MAAM,YAAY,EAAE,OAW1B,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { logger } from '../lib/logger.js';
2
+ import * as platform from '../services/platform.js';
3
+ import { apiBaseUrl, login } from '../services/platform-auth.js';
4
+ export const loginCommand = {
5
+ name: 'login',
6
+ aliases: [],
7
+ description: 'Sign in to idea1.ai in the browser, choosing the team the CLI works on',
8
+ options: [],
9
+ async execute() {
10
+ await login();
11
+ const user = await platform.getSignedInUser();
12
+ logger.success(`Signed in to ${apiBaseUrl()} as ${user.emailAddress}, on the team ${user.teamName}.`);
13
+ }
14
+ };
15
+ //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,QAAQ,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAEjE,MAAM,CAAC,MAAM,YAAY,GAAY;IACnC,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,wEAAwE;IACrF,OAAO,EAAE,EAAE;IAEX,KAAK,CAAC,OAAO;QACX,MAAM,KAAK,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC9C,MAAM,CAAC,OAAO,CAAC,gBAAgB,UAAU,EAAE,OAAO,IAAI,CAAC,YAAY,iBAAiB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;IACxG,CAAC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from '../types/index.js';
2
+ export declare const logoutCommand: Command;
3
+ //# sourceMappingURL=logout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAIjD,eAAO,MAAM,aAAa,EAAE,OAa3B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { logger } from '../lib/logger.js';
2
+ import { apiBaseUrl, logout } from '../services/platform-auth.js';
3
+ export const logoutCommand = {
4
+ name: 'logout',
5
+ aliases: [],
6
+ description: 'Sign out of idea1.ai: revoke the CLI\'s sign-in and remove it from this computer',
7
+ options: [],
8
+ async execute() {
9
+ if (await logout()) {
10
+ logger.success(`Signed out of ${apiBaseUrl()}.`);
11
+ }
12
+ else {
13
+ logger.dim(`Not signed in to ${apiBaseUrl()}.`);
14
+ }
15
+ }
16
+ };
17
+ //# sourceMappingURL=logout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAElE,MAAM,CAAC,MAAM,aAAa,GAAY;IACpC,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,kFAAkF;IAC/F,OAAO,EAAE,EAAE;IAEX,KAAK,CAAC,OAAO;QACX,IAAI,MAAM,MAAM,EAAE,EAAE,CAAC;YACnB,MAAM,CAAC,OAAO,CAAC,iBAAiB,UAAU,EAAE,GAAG,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,CAAC,oBAAoB,UAAU,EAAE,GAAG,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -1,16 +1,22 @@
1
1
  import type { Command } from '../types/index.js';
2
2
  /**
3
- * Stage 2 of change management (change-management-policy.md clause 2): the release PR from the
4
- * release branch into main. It is assigned to the person who runs the command - they are the
5
- * releaser and the approver, and their merge is the recorded approval. No review is required:
6
- * every change in the release was already approved on its own PR, and the body lists them. What
7
- * this stage gates is the build - the required CI/CD checks must pass before the merge.
3
+ * Stage 2 of change management (change-management-policy.md, "Approval and release gates"): the release PR into
4
+ * main. It is assigned to the person who runs the command - they are the releaser and the
5
+ * approver, and their merge is the recorded approval. What this stage gates is the build - the
6
+ * required CI/CD checks must pass before the merge.
7
+ *
8
+ * A planned release, from the base branch, needs no further review: every change in it was already
9
+ * approved on its own PR, and the body lists them. A commit pushed straight to the base branch
10
+ * stops it until a repository admin records why on the PR, unless the repository's
11
+ * `release.releaseBranchChanges` is `direct-allowed`, when the PR lists it for review. A hotfix release, run on the hotfix
12
+ * branch, carries an isolated fix pushed straight to that branch; its PR is where the fix is
13
+ * reviewed and approved, so its direct commits are listed rather than refused.
8
14
  *
9
15
  * Before the PR is opened, the packages that changed since the last release get their version
10
- * bumps, committed and pushed to the release branch by this command. `--approve` instead approves
11
- * and merges the release PR that is already open. With `--target`, the named project items and
12
- * branches are approved into the release branch first, and the release follows once all of them
13
- * have merged.
16
+ * bumps, committed and pushed to the branch being released by this command. `--approve` instead
17
+ * approves and merges the release PR that is already open. With `--target`, the named project
18
+ * items and branches are approved into the base branch first, and the planned release follows once
19
+ * all of them have merged.
14
20
  */
15
21
  export declare const releaseCommand: Command;
16
22
  //# sourceMappingURL=release.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"release.d.ts","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAgOjD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,cAAc,EAAE,OAoH5B,CAAC"}
1
+ {"version":3,"file":"release.d.ts","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAqPjD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,cAAc,EAAE,OAqI5B,CAAC"}