Repository navigation
Rebuild the 0.3.0 changelog from the code, and fix what blocks the release on main - #1001
Merged
Merged
Conversation
…_check_ins The policy was written before the personal edition added 0075_individual_check_ins, so the publish workflow's --validate-policy step would refuse the release before building anything.
Entries added to Unreleased since the last release are claims. The release procedure now starts by checking every change since the last tag in its diff and writing the notes from what the code shows.
Every change merged since v0.2.0, #998 included, was checked in its diff and in the code as it stands, and Unreleased is written from that rather than from the entries added along the way. Entries the code does not support are dropped, ones it contradicts are rewritten, fixes to things that never shipped are folded into the feature they fixed, and changes nobody described now have entries. The section is about 89,000 characters, well under GitHub's 125,000-character limit for a release body, which the previous section would have crossed. The redaction entry that merged after v0.2.0 but sat under the 0.2.0 heading moves to 0.3.0, and the 0.1.0 Before upgrading count, changed to Eight by a merge, is Six again, matching its list.
Contributor
Author
Unreleased entries dropped or rewritten in the 0.3.0 rebuildEach was checked against its commit's diff and the code on Dropped
Rewritten
|
…igrations The fixture's last migration was written out as 0074_single_user_identity, the value the policy held when the test was added, so moving the policy to 0075_individual_check_ins failed five tests that check something else. The fixture now uses the migrations the committed policy names.
The test read only ## Unreleased, which is empty on the release commit once the release workflow promotes it, so the checks that gate the publish would have failed. It also required 1.79.1, which main never pinned: the runtime went from 1.77.0 to 1.83.0. It now reads the notes from ## Unreleased to ## 0.2.0 and requires the runtime version server/package.json pins.
…he 0.3.0 release prep # Conflicts: # CHANGELOG.md
… diffs Claude Agent SDK, Agno, Google ADK, LangGraph and Mastra Bots now answer from the whole conversation in their role. Checked against v0.2.0 and the code on main: the Antigravity fix is folded into its entry because that harness is new in this release, the components entry no longer says the Claude Agent SDK harness drops the standing role, and the macOS signing fixes change only CI, so they have no entry.
Contributor
Author
Addendum: changes merged to main during the prep (#1002 to #1012)
|
… desktop (#832), into the 0.3.0 changelog rebuild # Conflicts: # CHANGELOG.md # docs/releasing.md
…ening Main added 0076_model_selection and 0077_channel_opening. Create release PR moves only the policy's version within a release, so the database transition has to be right on main before the first candidate is cut, or publishing refuses it.
… diffs The standalone Desktop with local Intelligence, signed installers at fixed links, Intelligence in the Helm chart, the model picker, the always-ask refinements, the question drawer and Strands are checked against v0.2.0 and the code on main. Sections they change are rewritten in place, and links to Admin → Enterprise controls point at the pages that replaced it.
davidmckayv
marked this pull request as ready for review
November 5, 2026 22:02
davidmckayv
requested review from
MikeRyanDev,
dustywusty,
guidovizoso,
mxmzb,
samjulien and
tylerslaton
as code owners
November 5, 2026 22:02
Contributor
Author
Addendum: changes merged to main since #1012 (#832, #980, #999, #1009, #1015 to #1030)
|
…ngelog rebuild # Conflicts: # CHANGELOG.md
#1033 moved the chart's Intelligence dependency from 0.16.0-rc.3 to 0.16.0-rc.4 (Chart.yaml and Chart.lock); the changelog names it once.
…ngelog rebuild # Conflicts: # CHANGELOG.md
#1034 moved the chart's Intelligence dependency to 0.16.0-rc.5 and pinned Desktop's CLI to the copilotkit preview built from Intelligence commit 256cc68, whose default local release is 0.16.0-rc.5 (checked in the published package). The Desktop entry no longer says the installer carries whatever CLI was current.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What has to be on
mainbefore 0.3.0 is cut with the normal release flow (docs/releasing.md, Cutting one). No version bumps: Create release PR writespackage.json, the changelog heading, the chart'sappVersion, the desktop Cargo files and the policy'sversionitself.What's in it
CHANGELOG.md:## Unreleasedrebuilt from the code. Every commit since v0.2.0 (up to 8e4ef7b) was checked in its diff and in the code onmain; existing entries were kept, rewritten or dropped on that evidence, and changes no entry described were added. The ledger of dropped and rewritten entries is in the comments below. The section is about 102,500 characters (GitHub refuses a release body over 125,000; it was heading past that). The redaction entry that merged after v0.2.0 but sat under## 0.2.0moved here, and the 0.1.0 Before upgrading count, changed to "Eight" by a merge, is "Six" again.release-policy.json:compatibility.database.tois now0077_channel_opening, the last migration. It named0074_single_user_identity, so the publish workflow'srelease-manifest.ts --validate-policywould refuse the release. Create release PR only moves the policy'sversion, so this has to be right onmain.docs/releasing.md: the rule "Rebuild the changelog from the code", as step 1 of Cutting one, its own subsection, and in Release candidates and betas before a first candidate.tests/release-policy.test.ts: its fixture had the policy's old last migration written out, so updating the policy failed five unrelated tests. It now uses the migrations the committed policy names.server/tests/recorder-config.test.ts: it read only## Unreleased, which is empty on the release commit after Create release PR promotes it, so the checks that gate the publish would fail. It also required "1.79.1", whichmainnever pinned (1.77.0 went to 1.83.0). It now reads the notes from## Unreleasedto## 0.2.0and requires the runtime versionserver/package.jsonpins. Checked against a promoted changelog too.Cutting 0.3.0 from main (stable)
mainafter it needs its changelog entry checked from its diff first.main:bump=minor,kind=stable,fromempty.dry_run= true first shows the version and notes without opening anything.release/publish/v0.3.0(labelrelease):package.json0.3.0,## Unreleasedpromoted to## 0.3.0, chartappVersion, desktop Cargo files. It arrives without checks by design.bash scripts/start.sh,export OPENBOT_SMOKE_COOKIE='better-auth.session_token=...',bun run test:smoke.publish-release.ymlchecks the version, the## 0.3.0section and the policy, decides the release will become Latest, runs the full CI suite on the commit, builds and attests theopenbotimage and every component image (amd64 and arm64), creates thev0.3.0tag and a GitHub Release that is not yet Latest, withcontainer-images.json, the chart, the source archive,release-manifest.json, provenance, and the unsigned installers (ad-hoc Mac arm64.dmg, unsigned Windows x64-setup.exe) under their versioned names.developer-id,release-tag: v0.3.0,make-latest). Amacos-signingreviewer approves; it signs, notarizes and staples Apple silicon and Intel, and attaches the.dmgfiles under their versioned and fixed names (OpenBot-mac-arm64.dmg,OpenBot-mac-x64.dmg), the updater archives with.sig, andlatest.json.keyvault,release-tag: v0.3.0,make-latest). Awindows-signingreviewer approves; it signs with the Key Vault certificate, and a separate job attachesOpenBot_0.3.0_x64-setup.exe(replacing the unsigned one) andOpenBot-windows-x64-setup.exe.scripts/release-make-latest.sh), which starts Downloads sync fordownloads.copilotkit.aiand checks the update feed. If either signing run is not approved or fails, the release stays not Latest: sign again from the tag withmake-latest, or mark it Latest by hand.Worth deciding before the cut
copilotkit4.33.1-pre.256cc68, which installs the same release (Bundle Intelligence 0.16.0-rc.5 in the chart and the desktop #1034). A stable 0.3.0 ships both.LoadBalancerService carry an AWS Partner Revenue Measurement tag with no setting to turn it off (Tag the chart's AWS load balancers for Partner Revenue Measurement #1030). The notes say so.config.memory.researchDefaultscannot turn check-ins on (truewrites nothing,falsewrites the default); its values comment and README still say "on by default".Checks
bun run lint,format:checkandtypecheckpass locally on the merged tree;release-manifest.ts --validate-policypasses for v0.3.0 on this branch; CI below.