Skip to content

chore(openfeature): pin mixpanel ^0.22.0 for fallback_reason (SDK-126)#284

Draft
tylerjroach wants to merge 1 commit into
masterfrom
tylerroach-sdk-126-node-openfeature-pin-mixpanel-to-sdk-79-release
Draft

chore(openfeature): pin mixpanel ^0.22.0 for fallback_reason (SDK-126)#284
tylerjroach wants to merge 1 commit into
masterfrom
tylerroach-sdk-126-node-openfeature-pin-mixpanel-to-sdk-79-release

Conversation

@tylerjroach

Copy link
Copy Markdown
Contributor

Summary

Follow-up to SDK-79. packages/openfeature-server-provider/src/MixpanelProvider.ts now dereferences variant.fallback_reason (added by #277). The peerDep mixpanel: ^0.21.0 still allows resolving against the only currently-published mixpanel version (0.21.0), which predates SDK-79 — so the wrapper falls through to its legacy sentinel branch and can never surface the specific fallback reason.

Changes

  • packages/openfeature-server-provider/package.json: bump mixpanel: ^0.21.0^0.22.0 (npm caret on 0.x → >=0.22.0 <0.23.0, excludes 0.21.0)
  • packages/openfeature-server-provider/package.json: bump wrapper version 0.1.00.2.0

Merge sequencing

CI is expected to fail until mixpanel 0.22.0 is published on npm. That failure is the point:

  1. Cut mixpanel 0.22.0 (already prepped in package.json — contains fix(analytics): distinguish fallback reasons + forward backend error message (SDK-79, SDK-83) #277 / SDK-79)
  2. Rebase/rebuild this PR — CI passes
  3. Merge and publish @mixpanel/openfeature-server-provider 0.2.0

Same pattern as mixpanel/mixpanel-ruby#166 and mixpanel/mixpanel-python#185.

Test plan

  • Confirm CI fails now (0.22.0 not on npm — expected)
  • Once mixpanel 0.22.0 is released, verify CI passes
  • Consider removing the legacy-sentinel branch in `MixpanelProvider.ts` in a follow-up (dead code once peerDep excludes pre-SDK-79 mixpanel)

Refs: SDK-126, SDK-79

🤖 Generated with Claude Code

MixpanelProvider now dereferences `variant.fallback_reason` (added by
#277 / SDK-79). The current peerDep `mixpanel: ^0.21.0` resolves to
`>=0.21.0 <0.22.0` — the only published version in that range (0.21.0)
predates SDK-79 and does NOT expose that field, so the wrapper falls
into its legacy sentinel branch and can't surface the specific
fallback reason.

Bump peerDep to `^0.22.0` (`>=0.22.0 <0.23.0`). npm will refuse to
resolve the wrapper against pre-0.22.0 mixpanel installs, matching
what the code actually needs.

CI will remain blocked until mixpanel 0.22.0 is published on npm.
That's intentional — same release-sequencing pattern as
mixpanel/mixpanel-ruby#166.

Also bump wrapper version 0.1.0 -> 0.2.0 (new capability surface).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@linear-code

linear-code Bot commented Jul 21, 2026

Copy link
Copy Markdown

SDK-126

SDK-79

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