Repository navigation
Mixer packs in the app: buy a pack or the upgrade, behind PackAvailability (#705) - #772
Merged
Merged
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Skeyelab
force-pushed
the
packs-app-705
branch
from
October 16, 2026 05:37
a954fd9 to
e41a22f
Compare
Skeyelab
force-pushed
the
packs-license-705
branch
from
October 16, 2026 05:37
0916071 to
a1006f8
Compare
…ility (#705) Debug builds only (PackAvailability). ProStore loads the X Air and X32 packs and the upgrade, buys any product, reads Family Sharing from the transaction's ownershipType, and passes the Armed input's family into license(), so a pack counts as Pro at record press; planLicense() is the family-free plan for Settings. Settings › Pro and the paywall offer the Armed family's pack first ("Pro for your XR18"), Pro, or only the upgrade, with "Launch price". Restore says "Restored: X Air pack". The local StoreKit file has Pro 4.99, the packs 2.99 and the upgrade 1.99. Release builds look as before. Claude-Session: https://claude.ai/code/session_01K4ihr1i6m1uuUswAENvJKJ Assisted-by: Claude Code:claude-opus-5-5
Skeyelab
force-pushed
the
packs-app-705
branch
from
October 16, 2026 05:50
e41a22f to
60b89d9
Compare
Skeyelab
enabled auto-merge (squash)
October 16, 2026 05:50
auto-merge was automatically disabled
October 16, 2026 05:52
Pull request was closed
Skeyelab
enabled auto-merge (squash)
October 16, 2026 05:52
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
#705, slices 3 and 4 in the app. Stacked on #771 → #770. Auto-merge stays off until it's retargeted to
main. Device-only: checked by builds and tests, not yet on a device.Debug builds only (
PackAvailability). TestFlight and App Store builds load no pack products and show no pack rows and no "Launch price" line, so Release looks as before. One exception, already the case in App Store Connect: Pro's price there is now $4.99.What changes in a Debug build
ProStore:upgrade.pro;buy(_ product:)buys any of them, with the same notes;isFamilySharedcomes fromtransaction.ownershipType == .familyShared;armedFamilyis set by the record screen model, solicense()counts a pack on the Armed family as Pro at record press;planLicense()is the plan without the family, for Settings;PackOffer.restoreNote("Restored: X Air pack").PackOffer.planTitle("X Air pack").PackOffer.items:ShowRecorder.storekit(local testing only): Pro 4.99, as in App Store Connect now. The X Air and X32 packs are 2.99 and the upgrade is 1.99, all with Family Sharing on. The descriptions are drafts.Device test. The local StoreKit file only applies when launched through Xcode's Run.
devicectland TestFlight get the sandbox App Store, where these products don't exist.xcodegen generate, openShowRecorder.xcodeproj, choose the ShowRecorder scheme in Debug on the iPhone, and press ⌘R.Family Sharing can't be simulated locally; it's covered by Kit tests.
Tests: the rules are in the Kit, test-first (#766, #768, #769, #770, #771). This PR is wiring and views, checked by building for macOS and the iOS Simulator.
Reviewed: a code-review agent found two things, both fixed:
Accepted for now (Debug only): during a Trial, with the pack's family Armed, the days-left chip hides on that input.
Checked: full
./scripts/verify.shpasses (package tests, the macOS build with AppTests, the iOS Simulator build).