Skip to content

Add Paddle to QEntitlementSource - #336

Merged
SpertsyanKM merged 2 commits into
mainfrom
kamo/dev-1876-sdks-map-entitlement-source-paddle-to-unknown-add-paddle-to
Sep 23, 2026
Merged

SpertsyanKM merged 2 commits into
mainfrom
kamo/dev-1876-sdks-map-entitlement-source-paddle-to-unknown-add-paddle-to

Conversation

@SpertsyanKM

@SpertsyanKM SpertsyanKM commented Sep 23, 2026 •

Copy link
Copy Markdown
Contributor

Summary

api-gateway returns source = "paddle" for entitlements activated via Paddle. The wrapper had no such value in EntitlementSource, so it mapped it to UNKNOWN. This PR adds PADDLE and its mapping from the sandwich bridge value "Paddle".

Merge order

Includes the QonversionSandwich bump to 7.14.0 (qonversion/sandwich-sdk#364, built on iOS 6.18.0 / Android 9.8.0), so the bridge now delivers "Paddle". Consumer CI jobs may need a rerun while the CocoaPods CDN / Maven Central indexes catch up.

Linear: DEV-1876

🤖 Generated with Claude Code

https://claude.ai/code/session_01YaUMJ69EtSs3HuFCs2zHL7

Summary by CodeRabbit

  • New Features
    • Added Paddle as a recognized source of entitlements.

api-gateway returns source = "paddle" for entitlements activated via Paddle
purchases; the SDK enum had no such value, so it degraded to Unknown.

Linear: DEV-1876

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YaUMJ69EtSs3HuFCs2zHL7
@coderabbitai

coderabbitai Bot commented Sep 23, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: qonversion/coderabbit/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Advanced

Run ID: afad90f0-5419-4103-a74a-ae993faf5f39

📥 Commits

Reviewing files that changed from the base of the PR and between f83ea12 and 73c3ae3.

📒 Files selected for processing (1)
  • Runtime/Scripts/Dto/Entitlement.cs
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • qonversion/go-micro (manual)

Included review availability: 0 reviews are currently available. Your included PR review attempts over the past 7 days set your current allowance at 1 review per hour.


📝 Walkthrough

Walkthrough

QEntitlementSource now includes Paddle after Manual.

Changes

Entitlement source

Layer / File(s) Summary
Add Paddle source
Runtime/Scripts/Dto/Entitlement.cs
QEntitlementSource adds the Paddle enum member after Manual.

Estimated code review effort: 1 (Trivial) | ~3 minutes

Merge Risk: ⚪ Minimal · up to 73c3a

The new Paddle source is recognized without changing existing entitlement-source behavior. No actionable merge-blocking risk is evident.


Caution

Pre-merge checks failed

Please resolve all errors before merging. Addressing warnings is optional.

  • Ignore (reviewers only)

❌ Failed checks (1 error)

Check name Status Explanation Resolution
Behavior And Regression Safety ❌ Error The Paddle path is not regression-tested. Entitlement reads source at line 66, calls FormatEntitlementSource, and relies on Enum.TryParse to convert the bridge value "Paddle". The diff only … Add a focused regression test that constructs an Entitlement with source = "Paddle" and asserts Source == QEntitlementSource.Paddle. Also verify that the pre-support value "Unknown" still maps to QEntitlementSource.Unknown.
✅ Passed checks (7 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Security And Tenant Isolation ✅ Passed PASS. The pull request changes only Runtime/Scripts/Dto/Entitlement.cs and adds the public QEntitlementSource.Paddle enum member. The existing parser still uses Enum.TryParse and returns `Unknow…
Contract And Data Compatibility ✅ Passed PASS. The PR changes only QEntitlementSource by appending Paddle; existing enum values remain unchanged (Unknown through Manual stay 0–4, and Paddle is 5). Entitlement already parses bridg…
Rollout And Recovery Evidence ✅ Passed PASS. The PR changes one source file and only adds QEntitlementSource.Paddle after the existing members. It changes no configuration, infrastructure, migration, dependency, release, or deployment fi…
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title identifies the affected system area, QEntitlementSource, and states the behavioral change: adding Paddle support.
Full details: Behavior And Regression Safety

Explanation

The Paddle path is not regression-tested. Entitlement reads source at line 66, calls FormatEntitlementSource, and relies on Enum.TryParse to convert the bridge value "Paddle". The diff only adds the enum member and adds no test files. The claimed failure that Paddle was mapped to Unknown therefore remains unverified.

  • Fix all pre-merge checks with AI
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pre-merge checks failed. Please resolve the failing checks before merging.

Brings EntitlementSource.Paddle from the native SDKs (iOS 6.18.0 / Android 9.8.0) through the bridge.

Linear: DEV-1876

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YaUMJ69EtSs3HuFCs2zHL7
@SpertsyanKM
SpertsyanKM merged commit 051b722 into main Sep 23, 2026
2 checks passed
@SpertsyanKM
SpertsyanKM deleted the kamo/dev-1876-sdks-map-entitlement-source-paddle-to-unknown-add-paddle-to branch September 23, 2026 18:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant