v2.12.1
Forge v2.12.1
CLI/TUI and desktop release v2.12.1; mobile remains on its compatible native version.
- CLI / TUI — binaries below (
*.tar.gz/*.zip) orbrew upgrade forge - Desktop (macOS · Windows · Linux) — app bundles below + in-app auto-update
- Mobile (iOS) — production OTA by default; native/TestFlight builds are manual when required
Changed
- Main-branch governance now strictly requires the aggregate
CI,mobile checks, and
security checksresults from the current branch, with no bypass actors
(CONTRIBUTING.mdand repository ruleset 17796318).
Fixed
- Persistent CI and release-runner storage is bounded after every relevant job: aggregate Cargo
targets are capped at 24 GiB, mobilenode_modulesat 4 GiB, and the exact allowlisted release
Docker volumes at 24 GiB, with dry-run and destructive-behavior regression coverage
(scripts/ci/trim-runner-cache.shand workflow wiring). - Forge Anywhere prunes acknowledged superseded local revisions and terminal remote staging rows
after successful sync while retaining pending uploads, newest anchors, conflicts, cursors, and
materialized data (crates/forge-store/src/sync_journal.rs). - The mobile production graph pins patched
brace-expansionand now fails the required mobile gate
on high-severity production advisories; its lockfile is compatible with CI's npm 10 resolver
(mobile/package.json,mobile/package-lock.json, andmobile-typecheck.yml). - crates.io publication now covers all 16 publishable Forge crates in dependency order, including
forge-agent-anywhere-protocol, and publishes the exact vendored provider fork as
forge-agent-genai@0.6.5-forge.1instead of silently falling back to unpatched upstream source
(docs/RELEASING-crates.mdandscripts/ci/test-crates-release-order.sh).
What's Changed
- chore(dist): update package manifests to v2.12.0 by @github-actions[bot] in #936
- fix: bound storage growth and close release gaps by @florisvoskamp in #937
- chore: prepare v2.12.1 release by @florisvoskamp in #938
Full Changelog: v2.12.0...v2.12.1