Skip to content

chore(main): release 4.0.0 - #445

Merged
mogul merged 2 commits into
mainfrom
release-please--branches--main
Oct 6, 2026
Merged

mogul merged 2 commits into
mainfrom
release-please--branches--main

Conversation

@github-actions

@github-actions github-actions Bot commented Sep 2, 2026 •

Copy link
Copy Markdown
Contributor

🤖 I have created a release beep boop

4.0.0 (2026-10-06)

⚠ BREAKING CHANGES

  • kits: acq no longer installs podman/OCI tooling by default. Users who need docker, docker compose, or rootless podman when the base image doesn't provide it must opt into the oci-engine kit with acq configure, --kit, or ACQ_EXTRA_KITS.

Features

  • acq: choose the host port per sandbox, and let --publish pin it (#526) (410f332)
  • acq: export ACQ_WORKSPACE and ACQ_CLONE into the guest on both backends (#457) (e0b9a3b)
  • acq: interactive acq configure UI for extra kits + token-scoping defaults (#500) (13d9d3a)
  • kits: adopt pinned agent and capability kits (#474) (6a67063)
  • secrets: add Windows-native DPAPI secret backend (#464) (907f404)
  • windows: add acq preview install path (#463) (d6d76f4)

Bug Fixes

  • acq: use sandbox workspace for github scoping (#476) (1610835)
  • ci: bump js-yaml to 4.3.2 to clear a high-severity CPU-DoS advisory (#454) (3217b49)
  • ci: bump smol-toml to 1.7.1 to clear an infinite-loop DoS advisory (#459) (c2291bf)
  • ci: centralize markdownlint coverage (#548) (a27c31e)
  • ci: pin markdownlint-cli2 once, clear GHSA-253c, unify file selection (#527) (e712685)
  • ci: unblock unrelated PRs from the bash32 required-check deadlock (#513) (187aa57)
  • install: keep curl | sh stdin intact and tap msb formula first (#462) (c808d74)
  • install: trust the microsandbox-acq dependency before brew install (#534) (ffac0fa)
  • kits: land collapsed kit stack implementation (#549) (bcd5b9c)
  • msb: allow Playwright browser downloads (#477) (0c399c5)
  • msb: block unsafe 0.7 migration versions (#510) (3634046)
  • msb: carry every origin URL, keep the scratch private, fail closed on a copy miss (#488) (babcd49)
  • msb: carry the source checkout's git identity into the --clone scratch (#443) (320d784)
  • msb: follow the host resolvers and disable DNS rebind protection in the guest (#444) (d2f4bdc)
  • msb: point the --clone scratch's origin at the source checkout's remote (#455) (7f48b94)
  • msb: refresh ssh authorization for port publish (#446) (72a6bd5)
  • msb: session parity for exec/attach/shell (cwd, terminal identity, login shell) (#427) (6261eda)
  • msb: skip the recursive home chown when the image baked the agent user (#432) (d8f66a4)
  • msb: thread the merged kit env onto kit lifecycle commands (#519) (2248a92)
  • msb: translate kit wildcard network rules (#451) (e22bbc3)
  • msb: verify post-hoc port forward listener (#530) (8ca50e1)
  • msb: warn on broadened kit wildcard rules (#460) (6ded3ce)
  • msb: warn when ssh-agent route is missing (#448) (3a767a4)
  • sbx: emit valid setup.install shape for the git-identity mixin (#492) (8e6160c)
  • sbx: raise the version floor to 0.39.0, where sbx create --env first exists (#491) (30f9ecf)
  • sbx: wait for startup barrier before attach (#512) (33c83c5)
  • secret: reject multiline test secret values (#447) (f2da950)
  • secrets: propagate rotation across backends (#509) (9641958)

This PR was generated with Release Please. See documentation.

@github-actions
github-actions Bot requested a review from a team as a code owner September 2, 2026 15:48
@github-actions
github-actions Bot force-pushed the release-please--branches--main branch 9 times, most recently from f1d1fc2 to 5923159 Compare September 10, 2026 15:59
@github-actions
github-actions Bot force-pushed the release-please--branches--main branch 3 times, most recently from 7a4259d to 373c337 Compare September 11, 2026 16:38
@github-actions github-actions Bot changed the title chore(main): release 3.1.1 chore(main): release 3.2.0 Sep 11, 2026
@github-actions
github-actions Bot force-pushed the release-please--branches--main branch 3 times, most recently from a4ff459 to 3059b84 Compare September 16, 2026 19:25
@github-actions
github-actions Bot force-pushed the release-please--branches--main branch 6 times, most recently from cef828f to f140bce Compare September 24, 2026 19:54
@wz-gsa

wz-gsa commented Sep 28, 2026

Copy link
Copy Markdown
Contributor

AI-assisted review (OpenCode), advisory. Reviewed the release-please output against what actually merged, which is the only check worth doing on a release PR. The version bump and 21 of the 25 entries are right. Two are missing, and the reason is a repo setting rather than anything in this PR.

What's missing

Diffed the PR numbers in the changelog against git log v3.1.0..main:

merged since v3.1.0:  25
in the 3.2.0 changelog: 21
missing: #449  #452  #471  #489

Two of those four are correctly omitted — release-please hides these types by default and they're not user-facing:

  • #449 — chore(ci): bump the actions group…
  • #489 — test(clone): make the negative assertions…

The other two are silently dropped, not hidden:

PR PR title (conventional ✅) Squash commit subject (not conventional ❌)
#471 feat(network): Add workshop.cloud.gov to the balanced hosts (feat) Add workshop.cloud.gov to the balanced hosts
#452 fix(msb): this seems to break a copy paste with error on the # this seems to break a copy paste with error on the #

#471 is a real user-visible feature — it adds a host to acq.backends/msb-balanced-hosts.txt, so anyone who needs workshop.cloud.gov reachable from a sandbox gets it in 3.2.0 and won't find it in the release notes. #452 is a README fix, lower stakes but the same mechanism.

Root cause: the PR-title gate and release-please read different things

pr-lint.yml enforces Conventional Commits on the PR title, and both PRs passed it — their titles are properly prefixed. But release-please reads commit messages, and the repo's squash setting is:

$ gh api repos/GSA-TTS/agentic-coding-quickstart --jq '{squash_merge_commit_title}'
{"squash_merge_commit_title": "COMMIT_OR_PR_TITLE"}

With COMMIT_OR_PR_TITLE, a PR containing a single commit gets that commit's subject as the squash subject — the PR title is only used when there are multiple commits. Both of these were single-commit PRs with non-conventional commit subjects, so the gate passed and the changelog dropped them. Nothing warns; the entry just isn't there.

The fix is one repo setting, not a code change:

squash_merge_commit_title: PR_TITLE

That makes the squash subject always equal the title the gate already validated, which closes the gap by construction rather than by reviewer vigilance. Worth applying to agentic-coding-patterns and agentic-coding-playbook too — I checked, both are on COMMIT_OR_PR_TITLE. Neither currently has a non-conventional commit in its last 20, so they've been lucky rather than protected.

On this PR specifically

I wouldn't hold 3.2.0 for it — the two missing entries are a README tweak and one allowlist addition, and re-cutting the changelog by hand risks more than it fixes. But the workshop.cloud.gov host is worth a line somewhere, and the setting change is worth making before the next release so this doesn't recur.

Everything else checks out: .release-please-manifest.json → 3.2.0 matches the heading, the compare link is v3.1.0...v3.2.0, and every commit SHA I spot-checked resolves to the claimed PR.

Method: git log v3.1.0..origin/main vs the PR numbers in the diff, then git show on each of the four gaps to read the actual commit subject, plus gh api for the squash setting on all three repos. No code executed.

@github-actions
github-actions Bot force-pushed the release-please--branches--main branch 5 times, most recently from 5dbc2b7 to 30fc2e8 Compare October 2, 2026 07:42
@github-actions
github-actions Bot force-pushed the release-please--branches--main branch from 30fc2e8 to dc25978 Compare October 2, 2026 16:36

@tau-gov tau-gov left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two user-facing changes merged after v3.1.0 are absent from the generated 3.2.0 notes. The repository now uses PR_TITLE for squash commits, which should prevent recurrence, but these existing omissions still need to be restored in this release.

Comment thread CHANGELOG.md
Comment thread CHANGELOG.md
@github-actions
github-actions Bot force-pushed the release-please--branches--main branch 6 times, most recently from 7b2cc62 to 098d886 Compare October 5, 2026 21:37
@github-actions github-actions Bot changed the title chore(main): release 3.2.0 chore(main): release 4.0.0 Oct 6, 2026
@github-actions
github-actions Bot force-pushed the release-please--branches--main branch from 098d886 to 1b21b71 Compare October 6, 2026 00:20
@mogul

mogul commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

Hold this release PR until #549 lands. #474's squash commit/release notes describe the full collapsed kit stack (patterns v1.12.0, OCI opt-in, no native OpenCode fallback), but the final merged code only included the lower #474 layer. #549 lands the missing implementation so release notes and shipped behavior match.

@mogul

mogul commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Addressed the two durable release-note omissions at the source metadata level rather than hand-editing generated CHANGELOG output. Added release-please commit override blocks to the merged PR bodies:

These should be picked up the next time release-please regenerates this PR, so the edits won’t be blown away. I could not manually dispatch the Release workflow from this token (workflow_dispatch returned 403), but the next main push (e.g. after #549 lands) should regenerate the release PR from the updated metadata.

@github-actions
github-actions Bot force-pushed the release-please--branches--main branch from 1b21b71 to 6af97b9 Compare October 6, 2026 00:33
Add the two OpenCode/OCI breaking-change notes announced in #474's merge
commit but dropped by the generated changelog, plus the #471 network
feature and #452 README fix whose non-conventional squash subjects hid
them from release-please.
@mogul
mogul enabled auto-merge (squash) October 6, 2026 00:43
@mogul
mogul disabled auto-merge October 6, 2026 00:43
@mogul
mogul merged commit af9814d into main Oct 6, 2026
7 checks passed
@mogul
mogul deleted the release-please--branches--main branch October 6, 2026 00:43
@github-actions

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown
Contributor Author

🤖 Created releases:

🌻

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants