* feat: migrate tooling and runtimes to bun
* fix: serialize act installs and adapt backup checks
* fix: finish bun scripts and rootless act setup
* fix: support bun images in runtime benchmarks
* fix: keep a single bun toolchain configuration
* fix: include docs mascot sources in workshop build
* docs: use bun in remaining tool commands
* fix: complete bun sqlite development tooling
* docs: explain sqlite development adapter
* fix: align remaining commands and local ci validation
* fix: use renovate regex fallback with bun
* fix: finalize bun sqlite connections during cleanup
* fix: preserve sqlite foreign key enforcement
* fix: align docker build frontends
* fix: prepare release versions with bun
* Add Bun benchmarks and preserve SQLite connection defaults
* Benchmark Bun installs, conflicts and production workloads
* Force Bun workspace tools and HTTP/1.1 upstream streaming
* Exclude benchmark evidence from Docker contexts
* Expose branch benchmarks through CI
* Verify hydrated widget data in production benchmarks
* Measure image archives and document benchmark protocol
* Audit dependency sharing across every workspace
* Pin pnpm for nested baseline benchmark scripts
* Preserve nested manager pinning on benchmark resume
* Include application and runtime image footprints
* Fail benchmark gates on candidate command errors
* Report complete build overhead and sampled memory bounds
* Validate migration comparisons across pinned revisions
* Record configurable runtime memory budgets
* Retain out-of-memory kills in runtime budget probes
* Reject OOM events consistently across runtime metrics
* Record complete Bun migration benchmarks
* Record memory diagnosis and correct Turbo caching
* Use Bun package management while preserving Node runtimes
* Keep native build fallbacks and exclude development artifacts
* Fix Node ESM metadata and isolate local CI configuration
* Measure development performance and isolate act environment
* Support isolated environment files in rootless act
* Validate the full migration range with act
* Preserve native SQLite binding for bundled migrations
* Use documented dev defaults and report benchmark scope
* Validate dev defaults and isolate restart measurements
* Record package-manager and development benchmarks
* Keep benchmark measurements and link full command artifacts
* Clean up temporary act environment files
* Validate Node runtimes in package-manager comparisons
* Validate every workspace in manual CI runs
* Retain patched nested brace expansion versions
* Complete package-manager and Node performance report
* Normalize archived benchmark logs
* Record final hosted validation
* Cache both Next builds with platform isolation
* Prime cache with write-only mode
* Split Next artifacts below Cloudflare upload limit
* Assemble coherent standalone cache outputs
* Preserve traced middleware entrypoints
* Assemble traced directory links before files
* Separate cached dependencies from assembled output
* Record signed Turbo cache benchmarks
* Remove archived benchmark captures
Full benchmark evidence is preserved at 8f7d3bcd14109bfb13fa664d31710b88d820ad66.
* Remove migration benchmark harness
* fix: correct migration launch and local Act prerequisites
* Consolidate Turbo caches and production artifacts
* Exclude generated files from Docker cache inputs
* fix: address Bun migration review findings
* fix: check restored compiler bundle manifests
* ci: add --affected filtering and fix Turbo cache invalidation
- Remove globalDependencies **/.env which invalidated all caches on any .env change
- Move 40+ env vars from globalEnv to build-specific env (lint/format/typecheck don't need DB_URL etc.)
- Add per-task inputs with test file exclusions so test changes don't trigger build/typecheck
- Enable affectedUsingTaskInputs for task-level --affected detection
- Add --affected to all turbo commands in CI (lint, format, typecheck, build)
- Add fetch-depth: 0 for proper git history comparison
- Add Docker Buildx + GHA layer caching for E2E builds
* ci: add Cloudflare remote cache for Turborepo
Configure turborepo-remote-cache-cloudflare as the remote cache backend.
This commit can be reverted independently to disable remote caching.
* fix(ci): set TURBO_SCM_BASE for --affected to work in PRs
Turbo defaults to comparing against `main`, but PRs target `dev`.
Without explicit base/head refs, --affected falls back to running
all tasks. Use the PR base SHA for pull_requests, the before SHA
for pushes, and HEAD~1 as a last resort.
* perf(typecheck): exclude bundled .cjs/.css from tsc
websocket (835K lines) and tasks (755K lines) had bundled output
files being typechecked due to `include: ["."]` in their tsconfig.
Full typecheck drops from ~70s to ~26s.
* perf(turbo): scope topo task inputs to package.json only
The topo virtual task had no explicit inputs, defaulting to all files.
This caused any source change to cascade cache invalidation through
all dependent packages via ^topo. Since topo is only for dependency
ordering, its hash should only change when dependencies change.
* fix(turbo): disable remote cache signature verification
The cache lives on a private CF worker, signature verification
just adds noise without security benefit.
* fix(turbo): remove runtime env vars from build cache key
These env vars (DB_*, AUTH_*, DOCKER_*, etc.) are all runtime
configuration provided by users when running the Docker container.
They don't influence the build output since Next.js standalone mode
reads process.env at runtime and SKIP_ENV_VALIDATION=true skips
validation during build. Listing them in build.env caused unnecessary
cache busting in local dev.
Also restores coverage report comments per review feedback.
* fix(turbo): include test files in typecheck cache inputs
Test files must be typechecked — excluding them from typecheck inputs
caused changed tests to skip type validation.