Skip to content

feat!: require pg_eventstore v3 (2.0.0) - #33

Closed
aroeczek wants to merge 1 commit into
mainfrom
B2BY-4684-pg-upgrade-v3
Closed

feat!: require pg_eventstore v3 (2.0.0)#33
aroeczek wants to merge 1 commit into
mainfrom
B2BY-4684-pg-upgrade-v3

Conversation

@aroeczek

@aroeczek aroeczek commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Superseded by #34.

yes-core moves to pg_eventstore ~> 3.0, whose schema is incompatible with v1, so
this is a major bump for all four gems.

2.0.0 rather than 1.5.0 is deliberate. Consumers (company_manager,
application_management_system) declare these gems at `~> 1.3` from the git source,
and main is already at 1.4.0 -- so 1.5.0 would satisfy the existing constraint and
could be pulled in by an unrelated `bundle update`, putting v3 code against the
still-v1 shared eventstore. 2.0.0 makes that structurally impossible; adoption now
requires an explicit Gemfile edit, which is what we want it to require.

The v3 code change itself is two OTel span attributes. pg_eventstore migration 13
drops events.link_id in favour of the bigint link_global_position, so Event#link_id
raises NoMethodError:

  * Commands::Stateless::Handler
  * CommandHandling::EventPublisher

This mirrors yousty-eventsourcing 16.0.0, which made the identical change in its
projections builder and command handler. Dashboards or trace queries keyed on
`event.link_id` need updating to `event.link_global_position`.

yes-auth pinned `yes-core ~> 1.0`, which would have made the monorepo unresolvable
the moment yes-core went to 2.0.0 -- bumped to ~> 2.0. Verified by resolving the
full set: pg_eventstore 3.0.0, all four gems at 2.0.0, no conflicts.

NOT verified locally: rubocop and rspec both need Ruby 3.4.5 per the Gemfile and
this machine has 3.4.1. CI runs both on 3.4.5 with Postgres 16 + Redis, and its
"Set up EventStore DB" step will exercise pg_eventstore 3.0's migrations for the
first time -- watch that step in particular.

⚠️ Do NOT merge/adopt until the shared eventstore is migrated to v3.

Refs B2BY-4684

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XsyuaXrAmXd8cnSVoWVvsN
@aroeczek

Copy link
Copy Markdown
Contributor Author

Superseded by #34 — reopened from a branch without the internal ticket reference in its name.

@aroeczek aroeczek closed this Jul 28, 2026
@aroeczek
aroeczek deleted the B2BY-4684-pg-upgrade-v3 branch July 28, 2026 09:08
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