build(deps): migrate all JavaScript tooling to Bun - #1545
Conversation
|
Important Review skippedToo many files! This PR contains 120 files, which is 20 over the limit of 100. To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch. Upgrade to a paid plan to raise the limit. This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry. ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (2)
📒 Files selected for processing (120)
You can disable this status message by setting the Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
cb9be64 to
aefb59c
Compare
📚 Documentation Preview
|
aefb59c to
f0621ae
Compare
f0621ae to
f06c26d
Compare
f06c26d to
e9b10a0
Compare
9d892c6 to
942c6b8
Compare
5c6d098 to
319e7df
Compare
319e7df to
2a6152c
Compare
Description
Migrate all repository-owned JavaScript and TypeScript tooling from the split pnpm/Node/Bun setup to Bun 1.4.0. Bun now manages dependencies and runs Vite, Vitest, Storybook, Playwright, Docusaurus, release tooling, CI scripts, and Docker builds; shipped application behavior and operator configuration are unchanged.
This migration keeps the repository's existing reproducibility and supply-chain guarantees:
package.json#packageManageris the authoritative Bun version, consumed by CI and checked against both Dockerfiles;bun.lockto change;bunxat deploy time;Compatibility work is intentionally narrow: custom Oxlint rules are tested through the real native CLI and registered repository plugin. Small patches keep Zod compatible with the tracked Vitest/Bun ESM interoperability issue, normalize Storybook file URLs for Bun, and update gray-matter to js-yaml’s current API. The decision, trade-offs, and rollback procedure are documented in ADR 0033.
GitHub's pinned JavaScript actions still run on GitHub's action host. That control-plane runtime is outside the repository-owned runtime boundary.
Fixes #1469
How to test
Validated locally on Linux x64:
bun.lockbyte-identical.CI also passed Linux x64 and arm64 determinism qualification, all application and browser test jobs, security scans, CodeQL, documentation builds, and the application, webapp, and agent Docker builds. The initially failed server verification retry was caused by a transient Maven Central HTTP 429 while downloading Maven; the retry passed without a code change.
Checklist
.changeset/README.md**Operators:** …) andMIGRATION.mdis updatedThe changeset is intentionally empty because this changes contributor and build infrastructure only. No operator action or migration entry is required.