ReviewOS

stacks/postline

Upgrade to the Stacks release that includes the socials merge, then drop the vendored driver override

#25
Closed glennmichael123 opened this 10 days ago ·
10 days ago

Context

The Bluesky driver enhancements (rich-text facets, image upload, thread reply-chaining, engagement metrics) currently live as local edits inside the vendored storage/framework/core/socials/src/drivers/bluesky.ts. They were contributed upstream and merged into stacksjs/stacks main as commit fccd14a25 (PR stacksjs/stacks#2072, merged 2026-07-22).

Postline is still on vendored stacks@0.70.45 (stacks: "workspace:*"), so the enhancements are safe today. But they are not in a published release yet — the latest tag v0.70.161 predates the merge. Upgrading to 0.70.161 (or --stable) would overwrite our vendored socials and lose the work; only --canary (main) or a future release ≥ the merge includes it.

Do this once a Stacks release containing fccd14a25 publishes

  • Confirm the target release includes the socials merge: git tag --contains fccd14a25 upstream, or check the published @stacksjs/socials dist for postMetrics / detectFacetCandidates
  • On a branch: ./buddy upgrade --version <that release> --dry-run, then the real run
  • Post-upgrade: ./buddy migrate → ./buddy doctor → ./buddy test
  • Reconcile the breaking changes in the framework upgrade-guide.md for the 0.70.45 → target span — notably:
    • #1949: useApi models (Post/PostTarget/BlogPost) now get auth middleware on write routes by default
    • #1952: unique indexes now enforced on SQLite
    • the users 2FA columns drift (already patched once via migration 0000000032)
  • Drop the vendored driver override: since the enhancements now ship in published @stacksjs/socials, the app can consume the upstream driver. Verify app/Services/Social/Drivers/BlueskyDriver.ts still re-exports cleanly and the enhanced methods resolve from the package.
  • Verify end-to-end in the browser (not just SSR-200): compose → thread → image → facets, queue/calendar, analytics
  • Optionally, adopt the published framework properly (the correct, folder-left-on-disk version bump) so future updates are trivial — see the notes on stacksjs/postline#14

Reference

Sign in to comment on this issue.