Skip to content

release: 8.0.0 - #305

Merged
sebyx07 merged 1 commit into
mainfrom
release/8.0.0
Aug 23, 2026
Merged

release: 8.0.0#305
sebyx07 merged 1 commit into
mainfrom
release/8.0.0

Conversation

@sebyx07

@sebyx07 sebyx07 commented Aug 23, 2026

Copy link
Copy Markdown
Contributor

Cuts 8.0.0 — six breaking changes from deep-dive sweep two, and 87 non-breaking fixes alongside them, across seven merged PRs (#288, #291, #292, #294, #298, #301, #303).

The six breaking changes

# Change Migration
1 @ultimat3/realtime. + ./server a server import changes its specifier; client names unchanged; nothing deleted
2 IdempotencyStore.settle / fail take a reservation id the silent one — see below
3 pwa.installPrompt, auth.afterSignInPath, ai.modelEnv deleted delete the key; there is no replacement, because there was never a behaviour
4 @ultimat3/manifest drops canonical use canonicalJson from @ultimat3/core
5 @ultimat3/render drops matchRoute / RouteMatch @ultimat3/http's trie is the live matcher
6 SQL_CANCEL projects its columns only if you asserted on the constant's text

#2 is the one to read even if nothing else applies. A store implementing the old two-parameter method still compiles — a shorter function is assignable to a longer signature — and silently loses the fence. wiki/Upgrading.md says so in bold.

#1 is the one that was costing users most. The single barrel carried useLive beside openNatsClient, so bun build --target=browser on an entry importing only the hook failed with "Browser build cannot require() Node.js builtin: stream/web". The island wiki/Realtime.md tells you to write could not be bundled at all.

What the stamp did

bun run scripts/release.ts --bump major — 30 workspaces at 8.0.0, [Unreleased] promoted to ## 8.0.0 - 2026-08-23, a fresh empty section opened above it, and the 9 commits since v7.0.0 appended under ### Commits.

Two things it did not do, both caught by checks this release added:

  • bun.lock — 222 recorded facts disagreed with their package.json after the bump. The check that catches this is the one this sweep fixed: it previously matched [a-z-]+ (missing i18n) and anchored on packages/ (skipping every app), and had been green over 72 stale ranges plus 30 stale workspace versions.
  • wiki/_Footer.md still said v7.0.0. It is the one page that is allowed to state the version, and version-stamps.ts names it.

Both are now mechanical rather than remembered.

One thing I did not paper over

wiki/Upgrading.md's table has always had a 1.x → 2.0.0 row pointing at a 2.0.0 section the page has never carried — 2.0.0 is the largest major this project has shipped (33 entries) and the only one with no walkthrough. changelog-check could not see it: it verifies the table row, not that a section with that heading exists.

The row now says so out loud, and #304 carries both halves: write the section, and tighten the check to assert the heading rather than the row.

Gate

Check Result
bun run verify 14 of 19, 5 skipped, exit 0
bun run scripts/reference-app-gate.ts every pin holds
bun run scripts/release.ts --check 8.0.0 30 packages stamped at 8.0.0
bun run scripts/lockfile-pins.ts agrees with every package.json
bun run scripts/version-stamps.ts 30 workspaces at 8.0.0
bun run changelog-check sections well-formed, every count read from its own section

After merge

Annotated git tag -a v8.0.0 (never lightweight — --follow-tags skips those, which is how v4.0.0 was left local and its Release could not be created), push, publish the GitHub Release, approve the npm-publish environment, then confirm with scripts/registry-audit.ts --json that all 30 are on npm at 8.0.0 with attestations.

🤖 Generated with Claude Code

https://claude.ai/code/session_0135KMN4Tfq1xhMwts1FNvis


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Six breaking changes from one whole-repo bug sweep, and 87 non-breaking fixes
alongside them. `wiki/Upgrading.md` gains the `7.x -> 8.0.0` section; every
entry names the manual edit, because no release here has ever shipped a codemod.

The six, in the order the upgrade guide walks them:

  1. @ultimat3/realtime splits into `.` and `./server`. One barrel carried
     `useLive` beside `openNatsClient`, so an entry importing only the hook
     failed to build for the browser — the island this framework tells you to
     write could not be bundled.
  2. IdempotencyStore.settle and fail take the reservation id. THE SILENT ONE:
     a store with the old two-parameter method still compiles and silently
     loses the fence.
  3. pwa.installPrompt, auth.afterSignInPath and ai.modelEnv are deleted. No
     replacement key, because there was never a behaviour.
  4. @ultimat3/manifest drops `canonical` — the third of five copies of one
     serialiser, and the one feeding contract-diff equality.
  5. @ultimat3/render drops matchRoute/RouteMatch — the second of two exported
     matchers, with zero consumers.
  6. SQL_CANCEL projects its columns instead of `returning *`.

Stamped with `scripts/release.ts --bump major`: 30 workspaces at 8.0.0,
[Unreleased] promoted, a fresh empty section opened above it. `bun.lock`
regenerated (222 recorded facts) and `wiki/_Footer.md` restamped — both caught
by the checks this release added, which is the first time either has been
mechanical rather than remembered.

`bun run verify` 14/19, 5 skipped, exit 0. `reference-app-gate` every pin holds.
`scripts/release.ts --check 8.0.0` green.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0135KMN4Tfq1xhMwts1FNvis
@coderabbitai

coderabbitai Bot commented Aug 23, 2026

Copy link
Copy Markdown

Warning

Review limit reached

You’ve reached a temporary PR review limit under our Fair Usage Limits Policy.

Your current included review allowance is based on your included PR review attempts over the past 7 days.

Next review available in: 14 minutes

Limit details: You’ve used the included review currently available. Your 73 included PR review attempts over the past 7 days set your current allowance at 1 review per hour.

You’re in a promotional period — use the checkbox below to run this review for free:

  • Run review for free

On-demand reviews are free for the next 29 days. After that, they cost $0.25 per reviewed file.

How can I continue?

Run this review now using the option above, or comment @coderabbitai review --use-credits.

You can also wait for the limit to reset, then comment @coderabbitai review or push new commits to the PR.

An organization admin can change what happens after included review limits in Billing.

How do review limits work?

CodeRabbit enforces per-developer PR review limits within each organization.

For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 969569eb-9fb1-47f2-9e4e-662939c40117

📥 Commits

Reviewing files that changed from the base of the PR and between c0e530f and 459ee5a.

⛔ Files ignored due to path filters (1)
  • bun.lock is excluded by !**/*.lock, !**/bun.lock
📒 Files selected for processing (46)
  • CHANGELOG.md
  • docker/helm/Chart.yaml
  • dummy/social-media-clone/package.json
  • dummy/social-media-clone/packages/i18n/package.json
  • examples/dummy/apps/admin/package.json
  • examples/dummy/apps/web/package.json
  • examples/dummy/package.json
  • examples/dummy/packages/core/package.json
  • examples/dummy/packages/db/package.json
  • examples/dummy/packages/domain/package.json
  • examples/dummy/packages/i18n/package.json
  • examples/dummy/packages/mcp/package.json
  • examples/dummy/packages/ui/package.json
  • framework.manifest.json
  • packages/action/package.json
  • packages/admin/package.json
  • packages/ai/package.json
  • packages/auth/package.json
  • packages/cache/package.json
  • packages/cli/package.json
  • packages/core/package.json
  • packages/create-ultimate/package.json
  • packages/db/package.json
  • packages/entity/package.json
  • packages/flags/package.json
  • packages/http/package.json
  • packages/i18n/package.json
  • packages/jobs/package.json
  • packages/mail/package.json
  • packages/manifest/package.json
  • packages/mcp/package.json
  • packages/money/package.json
  • packages/policy/package.json
  • packages/pwa/package.json
  • packages/query/package.json
  • packages/realtime/package.json
  • packages/render/package.json
  • packages/schema/package.json
  • packages/scraping/package.json
  • packages/seo/package.json
  • packages/storage/package.json
  • packages/testing/package.json
  • packages/time/package.json
  • packages/ui/package.json
  • wiki/Upgrading.md
  • wiki/_Footer.md

Comment @coderabbitai help to get the list of available commands.

@sebyx07
sebyx07 merged commit b75d477 into main Aug 23, 2026
37 checks passed
@sebyx07
sebyx07 deleted the release/8.0.0 branch August 23, 2026 00:44
sebyx07 added a commit that referenced this pull request Aug 23, 2026
…published (#306)

Every slice complete across 7 PRs (#288, #291, #292, #294, #298, #301, #303) plus
the release (#305). 8.0.0 is on npm, 30/30 attested.

Ten findings escaped their slice rather than being absorbed into it, and each is
an issue rather than a line in a report: #289, #290, #293, #295, #296, #297,
#299, #300, #302, #304.


Claude-Session: https://claude.ai/code/session_0135KMN4Tfq1xhMwts1FNvis

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant