1{2 "$comment": "TEMPLATE / EXAMPLE for migrations/<project>/source-schema.json when platform=shopify (private data, read through the Shopify CLI). A shape to follow, NOT a strict schema to validate against. Keep the agnostic core identical to every other platform; push Shopify quirks into the open `sourceMeta` blobs. Synthesize it from data/shopify-discovery/entities/*.json. All values below are invented.",3 "platform": "shopify",4 "capturedAt": "2026-10-15T00:00:00.000Z",5 "rawDiscovery": "data/shopify-discovery/",6 "$comment_failedReads": "An entity whose read failed (for example discounts) is NOT synthesized as an empty entity: it is already a `shopify:<entity>` capture-failed row in source-coverage.json. Omit it from `entities`.",7 "sourceMeta": {8
127 "$comment": "Read nested under products; there is no separate variant count at discovery.",
128 "nestedIn": "products"
129 }
130 },
131 "orders": {
132 "rawFile": "entities/orders.json",
133 "recordCount": 7,
134 "inUse": true,
135 "sourceIdField": "id",
136 "fields": {
137 "id": {
138 "type": "string",
139 "required": true,
140 "example": "gid://shopify/Order/4001"
141 },
142 "name": {
143 "type": "string",
144 "required": true,
145 "example": "#1001"
146 },
147 "createdAt": {
148 "type": "datetime",
149 "required": true,
150 "example": "2026-09-20T12:00:00Z"
151 },
152 "displayFinancialStatus": {
153 "type": "enum",
154 "example": "PAID"
155 },
156 "displayFulfillmentStatus": {
157 "type": "enum",
158 "example": "FULFILLED"
159 },
160 "totalPriceSet.shopMoney": {
161 "type": "money",
162 "example": {
163 "amount": "32.00",
164 "currencyCode": "USD"
165 }
166 }
167 },
168 "sourceMeta": {
169 "$comment": "recordCount is what the CLI can see (its order-history window), not the store's lifetime total.",
170 "countScope": "cli-window"
171 }
172 },
173 "customers": {
174 "$comment": "Example of a lower-bound count: Shopify answered precision AT_LEAST (countExact false), so recordCount is null and the bound is recordCountAtLeast. An exact count would be recordCount: 12.",