Commit aeb671a815

aeb671a8152c51c710f82d07cddc8f50c49f39d2

parent: 4da7adabc6

Unsigned

cmc <hello@cleberg.net> · 2026-07-20 20:44 UTC

chore: adopt synced StoreKit configuration

Xcode synced DomainDig.storekit against App Store Connect, replacing the
hand-authored placeholders with real values: the app's internal ID
(6760368004), the real subscription group ID (22051301), a synchronized
timestamp, and group localizations.

Also registers the file in the project so Xcode can find and re-sync it,
but without target membership. Xcode's default added it to the Resources
build phase of all three targets, which would ship the test configuration
inside the app, widget, and share extension bundles. The scheme
references it by path for the Run action; it does not need bundling.

Layout: unified · split

DomainDig.storekit +113 −47
@@ -9,7 +9,7 @@
99 }
1010 ]
1111 },
12 "identifier" : "A1B2C3D4",
12 "identifier" : "6118B84A",
1313 "nonRenewingSubscriptions" : [
1414
1515 ],
@@ -17,14 +17,14 @@
1717
1818 ],
1919 "settings" : {
20 "_applicationInternalID" : "",
20 "_applicationInternalID" : "6760368004",
2121 "_askToBuyEnabled" : false,
2222 "_billingGracePeriodEnabled" : false,
2323 "_billingIssuesEnabled" : false,
2424 "_developerTeamID" : "ZCNAX3VL9D",
2525 "_disableDialogs" : false,
2626 "_failTransactionsEnabled" : false,
27 "_lastSynchronizedDate" : 0,
27 "_lastSynchronizedDate" : 806272934.47084999,
2828 "_locale" : "en_US",
2929 "_renewalBillingIssuesEnabled" : false,
3030 "_storefront" : "USA",
@@ -33,119 +33,185 @@
3333 ],
3434 "_timeRate" : 0
3535 },
36 "subscriptionBundleGroups" : [
37
38 ],
3639 "subscriptionGroups" : [
3740 {
38 "id" : "20250720",
41 "id" : "22051301",
3942 "localizations" : [
40
43 {
44 "description" : "",
45 "displayName" : "DomainDig Pro",
46 "locale" : "en_US"
47 }
4148 ],
4249 "name" : "DomainDig Pro",
4350 "subscriptions" : [
4451 {
4552 "adHocOffers" : [
4653
54 ],
55 "billingPlans" : [
56 {
57 "billingPlanType" : "BILLED_UPFRONT",
58 "commitmentDisplayPrice" : "59.99",
59 "displayPrice" : "59.99",
60 "internalID" : "6763609513_BILLED_UPFRONT",
61 "isEnabled" : true
62 }
4763 ],
4864 "codeOffers" : [
4965
5066 ],
51 "displayPrice" : "49.99",
67 "displayPrice" : "59.99",
5268 "familyShareable" : true,
53 "groupNumber" : 1,
54 "internalID" : "6763610682",
55 "introductoryOffer" : null,
69 "groupNumber" : 2,
70 "internalID" : "6763609513",
71 "introductoryOffers" : [
72
73 ],
5674 "localizations" : [
5775 {
58 "description" : "Everything in Pro, plus ownership history, DNS history, extended subdomains, domain pricing, and reputation data.",
59 "displayName" : "DomainDig Pro+ (Annually)",
76 "description" : "Monitoring, alerts, workflows, and domain scale",
77 "displayName" : "DomainDig Pro (Annually)",
6078 "locale" : "en_US"
6179 }
6280 ],
63 "productID" : "domaindig.proplus.annually",
81 "productID" : "domaindig.pro.annually",
6482 "recurringSubscriptionPeriod" : "P1Y",
65 "referenceName" : "DomainDig Pro+ (Annually)",
66 "subscriptionGroupID" : "20250720",
67 "type" : "RecurringSubscription"
83 "referenceName" : "DomainDig Pro (Annually)",
84 "subscriptionGroupID" : "22051301",
85 "type" : "RecurringSubscription",
86 "winbackOffers" : [
87
88 ]
6889 },
6990 {
7091 "adHocOffers" : [
7192
93 ],
94 "billingPlans" : [
95 {
96 "billingPlanType" : "BILLED_UPFRONT",
97 "commitmentDisplayPrice" : "7.99",
98 "displayPrice" : "7.99",
99 "internalID" : "6763609831_BILLED_UPFRONT",
100 "isEnabled" : true
101 }
72102 ],
73103 "codeOffers" : [
74104
75105 ],
76 "displayPrice" : "4.99",
106 "displayPrice" : "7.99",
77107 "familyShareable" : true,
78 "groupNumber" : 1,
79 "internalID" : "2000000002",
80 "introductoryOffer" : null,
108 "groupNumber" : 2,
109 "internalID" : "6763609831",
110 "introductoryOffers" : [
111
112 ],
81113 "localizations" : [
82114 {
83 "description" : "Everything in Pro, plus ownership history, DNS history, extended subdomains, domain pricing, and reputation data.",
84 "displayName" : "DomainDig Pro+ (Monthly)",
115 "description" : "Monitoring, alerts, workflows, and domain scale",
116 "displayName" : "DomainDig Pro (Monthly)",
85117 "locale" : "en_US"
86118 }
87119 ],
88 "productID" : "domaindig.proplus.monthly",
120 "productID" : "domaindig.pro.month",
89121 "recurringSubscriptionPeriod" : "P1M",
90 "referenceName" : "DomainDig Pro+ (Monthly)",
91 "subscriptionGroupID" : "20250720",
92 "type" : "RecurringSubscription"
122 "referenceName" : "DomainDig Pro (Monthly)",
123 "subscriptionGroupID" : "22051301",
124 "type" : "RecurringSubscription",
125 "winbackOffers" : [
126
127 ]
93128 },
94129 {
95130 "adHocOffers" : [
96131
132 ],
133 "billingPlans" : [
134 {
135 "billingPlanType" : "BILLED_UPFRONT",
136 "commitmentDisplayPrice" : "119.99",
137 "displayPrice" : "119.99",
138 "internalID" : "6763610682_BILLED_UPFRONT",
139 "isEnabled" : true
140 }
97141 ],
98142 "codeOffers" : [
99143
100144 ],
101 "displayPrice" : "29.99",
145 "displayPrice" : "119.99",
102146 "familyShareable" : true,
103 "groupNumber" : 2,
104 "internalID" : "2000000003",
105 "introductoryOffer" : null,
147 "groupNumber" : 1,
148 "internalID" : "6763610682",
149 "introductoryOffers" : [
150
151 ],
106152 "localizations" : [
107153 {
108 "description" : "Unlimited tracked domains, automated monitoring, local alerts, workflows, and advanced exports.",
109 "displayName" : "DomainDig Pro (Annually)",
154 "description" : "Advanced domain intelligence and history data",
155 "displayName" : "DomainDig Pro+ (Annually)",
110156 "locale" : "en_US"
111157 }
112158 ],
113 "productID" : "domaindig.pro.annually",
159 "productID" : "domaindig.proplus.annually",
114160 "recurringSubscriptionPeriod" : "P1Y",
115 "referenceName" : "DomainDig Pro (Annually)",
116 "subscriptionGroupID" : "20250720",
117 "type" : "RecurringSubscription"
161 "referenceName" : "DomainDig Pro+ (Annually)",
162 "subscriptionGroupID" : "22051301",
163 "type" : "RecurringSubscription",
164 "winbackOffers" : [
165
166 ]
118167 },
119168 {
120169 "adHocOffers" : [
121170
171 ],
172 "billingPlans" : [
173 {
174 "billingPlanType" : "BILLED_UPFRONT",
175 "commitmentDisplayPrice" : "14.99",
176 "displayPrice" : "14.99",
177 "internalID" : "6763610379_BILLED_UPFRONT",
178 "isEnabled" : true
179 }
122180 ],
123181 "codeOffers" : [
124182
125183 ],
126 "displayPrice" : "2.99",
184 "displayPrice" : "14.99",
127185 "familyShareable" : true,
128 "groupNumber" : 2,
129 "internalID" : "2000000004",
130 "introductoryOffer" : null,
186 "groupNumber" : 1,
187 "internalID" : "6763610379",
188 "introductoryOffers" : [
189
190 ],
131191 "localizations" : [
132192 {
133 "description" : "Unlimited tracked domains, automated monitoring, local alerts, workflows, and advanced exports.",
134 "displayName" : "DomainDig Pro (Monthly)",
193 "description" : "Advanced domain intelligence and history data",
194 "displayName" : "DomainDig Pro+ (Monthly)",
135195 "locale" : "en_US"
136196 }
137197 ],
138 "productID" : "domaindig.pro.month",
198 "productID" : "domaindig.proplus.monthly",
139199 "recurringSubscriptionPeriod" : "P1M",
140 "referenceName" : "DomainDig Pro (Monthly)",
141 "subscriptionGroupID" : "20250720",
142 "type" : "RecurringSubscription"
200 "referenceName" : "DomainDig Pro+ (Monthly)",
201 "subscriptionGroupID" : "22051301",
202 "type" : "RecurringSubscription",
203 "winbackOffers" : [
204
205 ]
143206 }
144207 ]
145208 }
209 ],
210 "subscriptionSuiteGroups" : [
211
146212 ],
147213 "version" : {
148 "major" : 5,
149 "minor" : 0
214 "major" : 6,
215 "minor" : 3
150216 }
151217}
DomainDig.xcodeproj/project.pbxproj +2
@@ -51,6 +51,7 @@
5151/* End PBXCopyFilesBuildPhase section */
5252
5353/* Begin PBXFileReference section */
54 8B6472EF300EBFA30018E10A /* DomainDig.storekit */ = {isa = PBXFileReference; lastKnownFileType = text; path = DomainDig.storekit; sourceTree = "<group>"; };
5455 8B7800692F6090E300933221 /* DomainDig.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DomainDig.app; sourceTree = BUILT_PRODUCTS_DIR; };
5556 8BBFEF032F9874AE00E8E144 /* DomainInspectionService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomainInspectionService.swift; sourceTree = "<group>"; };
5657 8BBFEF042F9874AE00E8E144 /* DomainReportBuilder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DomainReportBuilder.swift; sourceTree = "<group>"; };
@@ -149,6 +150,7 @@
149150 8B7800602F6090E300933221 = {
150151 isa = PBXGroup;
151152 children = (
153 8B6472EF300EBFA30018E10A /* DomainDig.storekit */,
152154 8B78006B2F6090E300933221 /* DomainDig */,
153155 8BDA0001000000000000000D /* Shared */,
154156 8BDA0001000000000000000E /* DomainDigWidget */,