Skip to content

docs(changelog): reconcile and promote [Unreleased] to [4.0.3]#2891

Merged
bpamiri merged 1 commit into
developfrom
peter/changelog-4.0.3
Jun 10, 2026
Merged

docs(changelog): reconcile and promote [Unreleased] to [4.0.3]#2891
bpamiri merged 1 commit into
developfrom
peter/changelog-4.0.3

Conversation

@bpamiri

@bpamiri bpamiri commented Jun 10, 2026

Copy link
Copy Markdown
Collaborator

Release-cut reconciliation ahead of the 4.0.3 GA.

What

Verification

Mirrored release.yml's Validate Release Checklist locally:

  • awk range /^# \[4\.0\.3\]/,/^---$/ extracts the 4.0.3 block with zero bleed into the 4.0.2 section
  • no => TBD on the 4.0.3 heading
  • wheels.json on develop already reads 4.0.3 (clean, no snapshot suffix)

Why now

Doing the promotion on develop before cutting release/4.0.3-to-main avoids the 4.0.2 back-port dance (#2824), where the rename lived only on the squash-merged release branch and develop kept stale [Unreleased] entries.

🤖 Generated with Claude Code

Release-cut reconciliation ahead of the 4.0.3 GA:

- Rename [Unreleased] -> [4.0.3] with the 2026-06-09 release date and a
  summary blurb, matching the 4.0.2 promotion format (#2824).
- Consolidate the duplicated ### Changed / ### Fixed sections that
  accumulated from incremental entry additions into one Added/Changed/Fixed
  trio (same order as the 4.0.2 block).
- Drop the byte-identical duplicate #2844 (protectedControllerMethods) entry.
- Add the missing consolidated entry for the 24-command CLI audit sweep
  (#2882, #2883, #2884, #2885).
- Fix the separator below the promoted block to exactly '---' (3 dashes) so
  release.yml's release-notes awk extraction terminates correctly (the
  #2606/#2768 footgun its Validate Release Checklist step guards against).

Cutting the release branch from develop AFTER this lands avoids the 4.0.2
back-port dance (#2824) where the rename lived only on the release branch.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Signed-off-by: Peter Amiri <peter@alurium.com>
@github-actions github-actions Bot added the docs label Jun 10, 2026
@bpamiri bpamiri merged commit 08dd480 into develop Jun 10, 2026
6 checks passed
@bpamiri bpamiri deleted the peter/changelog-4.0.3 branch June 10, 2026 04:10

@wheels-bot wheels-bot Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Wheels Bot — Reviewer A

This PR performs a changelog reconciliation ahead of the 4.0.3 GA: it renames [Unreleased] to [4.0.3], consolidates duplicated ### Changed/### Fixed sections, drops the byte-identical duplicate #2844 entry, adds the missing CLI audit sweep entry (#2882-#2885), and fixes the block-terminating separator from five dashes (-----) to exactly three (---) so release.yml's awk extraction closes correctly. The diff is CHANGELOG.md-only; no production code is touched. Verdict: approve.

Correctness

The five claimed edits all land as described:

  1. Version heading renamed with correct link and date (2026-06-09), matching the 4.0.2 promotion format. The summary blurb claims (ArgSpec overhaul, sibling-server guard, PostgreSQL FK fix, Oracle DDL, protectedControllerMethods, column-casing, reload password) all correspond to entries in the consolidated sections.
  2. Duplicate section collapse — the second ### Changed block (the CLI user-error-paths entry, #2890) and the second ### Fixed header were removed; their entries are preserved in the consolidated block.
  3. Duplicate #2844 entry droppedprotectedControllerMethods appeared twice in the old ### Fixed sections; exactly one instance remains.
  4. Missing CLI audit entry added — the A full audit of the CLI's 24 commands bullet was absent from any prior ### Fixed section; it now appears, matching #2882-#2885.
  5. Separator fix — the terminating separator below the 4.0.3 block changed from ----- (five dashes) to --- (three dashes).

The separator fix is the highest-risk item. Verified with release.yml's own awk pattern against the post-merge CHANGELOG — the range /^# \[4\.0\.3\]/,/^---$/ ends at the --- on line 67 and the very next line is a blank before # [4.0.2]. Zero bleed into the prior release block. The ---- (four-dash) decorative separators around the rebrand note at lines 8 and 19 do not match ^---$ and are correctly left alone.

Commits

Single commit: docs(changelog): reconcile and promote [Unreleased] to [4.0.3]

  • Type docs, scope changelog, header 61 chars, not ALL-CAPS — all valid per commitlint.
  • Body explains each of the five edits and the motivation for the pre-release timing.
  • Signed-off-by: Peter Amiri <peter@alurium.com> matches the git author identity — DCO satisfied.
  • Co-Authored-By: Claude Fable 5 present.

No Cross-engine, Tests, or Security sections apply to a documentation-only CHANGELOG edit.

@bpamiri bpamiri mentioned this pull request Jun 10, 2026
@wheels-bot

wheels-bot Bot commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Wheels Bot — Reviewer B (round 1)

A's review checks out across all five claimed edits. No sycophancy, no false positives, no missed issues. Convergence: aligned on approve.

Sycophancy

None detected. A backed each finding with a specific diff reference — no bare LGTM or unsupported approval.

False positives

None detected. Verified each claim against the diff and the merged file:

  1. Version heading: # [Unreleased]# [4.0.3](...) => 2026-06-09 — confirmed.
  2. Duplicate section collapse: the two ### Changed / ### Fixed headers removed; CLI user-error-paths entry preserved in the consolidated ### Changed; all ### Fixed entries consolidated under one header — confirmed.
  3. Duplicate Public global helpers (env, model, findAll, …) are URL-invokable as controller actions — protectedControllerMethods is never populated #2844 entry dropped: the second protectedControllerMethods bullet (old file line ~58) removed; one instance remains in the consolidated ### Fixed — confirmed.
  4. Missing CLI audit entry added: the "full audit of the CLI's 24 commands" bullet is present in the new ### Fixed block — confirmed.
  5. Separator fix: --------; the merged file has --- at line 66, followed by a blank line, then # [4.0.2] — confirmed. The four-dash decorative separators at lines 7 and 18 do not match ^---$ and were left untouched — confirmed.

A's claim that the version summary blurb's items "all correspond to entries in the consolidated sections" extends to the column-casing and reload-password items, which were not visible in the diff (they were already in the file from prior PRs). Verified against the merged file: both entries are present at lines 59-60 of the final CHANGELOG — no false positive.

Missed issues

None detected. The diff is CHANGELOG.md-only; cross-engine, test, security, and .ai/wheels/ update concerns do not apply. Commit header is 61 chars, type docs, scope changelog, not ALL-CAPS — commitlint clean. DCO sign-off email matches the git author identity.

Verdict alignment

A's approve is consistent with the findings: every claimed edit verified, documentation-only change, no actionable issues outstanding.

Convergence

Aligned on approve. A's review is accurate and complete for a CHANGELOG-only reconciliation PR. No changes needed.

bpamiri added a commit that referenced this pull request Jun 10, 2026
…ase playbook (#2893)

Learned at the 4.0.3 cut (#2892):

- The 'merge with a merge commit' step silently depended on the repo
  setting 'Allow merge commits', which had been switched to squash-only
  between the 4.0.1 and 4.0.2 cuts — forcing #2819 to squash and poisoning
  the next promotion with 24 spurious conflicts. The setting is enabled
  again (permanently, per maintainer decision 2026-06-09); the playbook now
  says so explicitly.
- Document the '-s ours' healing recipe for promoting develop over a
  diverged main, including the must-be-empty tree-diff verification.
- Promote the CHANGELOG rename on develop BEFORE cutting the release branch
  (the 4.0.3 flow, #2891) so develop doesn't need a back-port like #2824.
- Fix dispatch-list drift: chocolatey-wheels was retired for scoop-wheels,
  and the apt/yum bucket dispatches were missing from the trigger list.

Signed-off-by: Peter Amiri <peter@alurium.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant