@noodleseed/one 0.53.0 → 0.54.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/node_modules/@noodle-borg/service/dist/billing/active-commercial-entitlement.d.ts +25 -0
  2. package/node_modules/@noodle-borg/service/dist/billing/active-commercial-entitlement.d.ts.map +1 -0
  3. package/node_modules/@noodle-borg/service/dist/billing/active-commercial-entitlement.js +94 -0
  4. package/node_modules/@noodle-borg/service/dist/billing/active-commercial-entitlement.js.map +1 -0
  5. package/node_modules/@noodle-borg/service/dist/billing/integration.d.ts.map +1 -1
  6. package/node_modules/@noodle-borg/service/dist/billing/integration.js +0 -3
  7. package/node_modules/@noodle-borg/service/dist/billing/integration.js.map +1 -1
  8. package/node_modules/@noodle-borg/service/dist/billing/paid-plan-catalog.d.ts +1 -0
  9. package/node_modules/@noodle-borg/service/dist/billing/paid-plan-catalog.d.ts.map +1 -1
  10. package/node_modules/@noodle-borg/service/dist/billing/paid-plan-catalog.js +7 -0
  11. package/node_modules/@noodle-borg/service/dist/billing/paid-plan-catalog.js.map +1 -1
  12. package/node_modules/@noodle-borg/service/dist/billing/postgres-authoritative-authority.d.ts +4 -1
  13. package/node_modules/@noodle-borg/service/dist/billing/postgres-authoritative-authority.d.ts.map +1 -1
  14. package/node_modules/@noodle-borg/service/dist/billing/postgres-authoritative-authority.js +21 -7
  15. package/node_modules/@noodle-borg/service/dist/billing/postgres-authoritative-authority.js.map +1 -1
  16. package/node_modules/@noodle-borg/service/dist/billing/postgres-commercial-enforcement-counters.js +4 -5
  17. package/node_modules/@noodle-borg/service/dist/billing/postgres-commercial-enforcement-counters.js.map +1 -1
  18. package/node_modules/@noodle-borg/service/dist/billing/postgres-commercial-enforcement-projection.d.ts +0 -1
  19. package/node_modules/@noodle-borg/service/dist/billing/postgres-commercial-enforcement-projection.d.ts.map +1 -1
  20. package/node_modules/@noodle-borg/service/dist/billing/postgres-commercial-enforcement-projection.js +92 -27
  21. package/node_modules/@noodle-borg/service/dist/billing/postgres-commercial-enforcement-projection.js.map +1 -1
  22. package/node_modules/@noodle-borg/service/dist/billing/postgres-meter-admission.d.ts +0 -1
  23. package/node_modules/@noodle-borg/service/dist/billing/postgres-meter-admission.d.ts.map +1 -1
  24. package/node_modules/@noodle-borg/service/dist/billing/postgres-meter-admission.js +72 -27
  25. package/node_modules/@noodle-borg/service/dist/billing/postgres-meter-admission.js.map +1 -1
  26. package/node_modules/@noodle-borg/service/dist/billing/postgres-production-app-admission.d.ts.map +1 -1
  27. package/node_modules/@noodle-borg/service/dist/billing/postgres-production-app-admission.js +56 -26
  28. package/node_modules/@noodle-borg/service/dist/billing/postgres-production-app-admission.js.map +1 -1
  29. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-authority.d.ts +5 -0
  30. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-authority.d.ts.map +1 -0
  31. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-authority.js +97 -0
  32. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-authority.js.map +1 -0
  33. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-persistence.d.ts +50 -0
  34. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-persistence.d.ts.map +1 -0
  35. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-persistence.js +221 -0
  36. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-persistence.js.map +1 -0
  37. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-support.d.ts +8 -0
  38. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-support.d.ts.map +1 -0
  39. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-support.js +42 -0
  40. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation-support.js.map +1 -0
  41. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation.d.ts +15 -0
  42. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation.d.ts.map +1 -0
  43. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation.js +123 -0
  44. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-reconciliation.js.map +1 -0
  45. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-schema.js +100 -0
  46. package/node_modules/@noodle-borg/service/dist/billing/postgres-subscription-schema.js.map +1 -1
  47. package/node_modules/@noodle-borg/service/dist/billing/subscription-model.d.ts.map +1 -1
  48. package/node_modules/@noodle-borg/service/dist/billing/subscription-model.js +9 -1
  49. package/node_modules/@noodle-borg/service/dist/billing/subscription-model.js.map +1 -1
  50. package/node_modules/@noodle-borg/service/dist/billing/subscription-reconciliation.d.ts +45 -0
  51. package/node_modules/@noodle-borg/service/dist/billing/subscription-reconciliation.d.ts.map +1 -0
  52. package/node_modules/@noodle-borg/service/dist/billing/subscription-reconciliation.js +165 -0
  53. package/node_modules/@noodle-borg/service/dist/billing/subscription-reconciliation.js.map +1 -0
  54. package/node_modules/@noodle-borg/service/dist/billing-public.d.ts +2 -0
  55. package/node_modules/@noodle-borg/service/dist/billing-public.d.ts.map +1 -1
  56. package/node_modules/@noodle-borg/service/dist/billing-public.js +2 -0
  57. package/node_modules/@noodle-borg/service/dist/billing-public.js.map +1 -1
  58. package/package.json +1 -1
@@ -1,6 +1,5 @@
1
1
  import { validateSlug } from '../store/validate.js';
2
- import { BillingCommercialEntitlementError, parseBillingCommercialFreeV1Entitlements, } from './commercial-entitlements.js';
3
- import { BILLING_AUTHORITATIVE_ADMISSION_CONTRACT_VERSION } from './enforcement-activation.js';
2
+ import { BillingActiveCommercialEntitlementInconsistentError, resolveActiveBillingCommercialEntitlement, } from './active-commercial-entitlement.js';
4
3
  import { billingContentChecksum, validateBillingAccountId } from './model.js';
5
4
  import { BillingAuthoritativeAuthorityInconsistentError, readBillingAuthoritativeAuthorityTx, } from './postgres-authoritative-authority.js';
6
5
  import { readBillingCommercialProductionAppCountsTx } from './postgres-commercial-enforcement-apps.js';
@@ -22,13 +21,11 @@ class ProjectionCorruptionError extends Error {
22
21
  export class PostgresBillingCommercialEnforcementProjectionStore {
23
22
  #pool;
24
23
  #keyGeneration;
25
- #admissionContractVersion;
26
24
  #lockTimeoutMs;
27
25
  #statementTimeoutMs;
28
26
  constructor(pool, options) {
29
27
  this.#pool = pool;
30
28
  this.#keyGeneration = validateFingerprint(options.keyGeneration);
31
- this.#admissionContractVersion = validateAdmissionContractVersion(options.admissionContractVersion ?? BILLING_AUTHORITATIVE_ADMISSION_CONTRACT_VERSION);
32
29
  this.#lockTimeoutMs = boundedTimeout('billing commercial projection lock timeout', options.lockTimeoutMs ?? DEFAULT_LOCK_TIMEOUT_MS);
33
30
  this.#statementTimeoutMs = boundedTimeout('billing commercial projection statement timeout', options.statementTimeoutMs ?? DEFAULT_STATEMENT_TIMEOUT_MS);
34
31
  }
@@ -41,7 +38,6 @@ export class PostgresBillingCommercialEnforcementProjectionStore {
41
38
  }, async (client) => {
42
39
  const authority = await readBillingAuthoritativeAuthorityTx(client, {
43
40
  keyGeneration: this.#keyGeneration,
44
- admissionContractVersion: this.#admissionContractVersion,
45
41
  });
46
42
  if (authority.state === 'unconfigured')
47
43
  return { state: 'unconfigured', scope };
@@ -49,7 +45,7 @@ export class PostgresBillingCommercialEnforcementProjectionStore {
49
45
  return { state: 'inactive', reason: authority.reason, scope };
50
46
  }
51
47
  const recordedAt = await readBillingMeterTransactionTime(client);
52
- const resolved = validateResolution(await readResolution(client, scope), expectedSnapshotBinding);
48
+ const resolved = validateResolution(await readResolution(client, scope), expectedSnapshotBinding, authority.admissionContractVersion, recordedAt);
53
49
  if (resolved.profileMode === 'legacy_internal_exempt') {
54
50
  return { state: 'exempt', reason: 'legacy_internal_exempt', scope };
55
51
  }
@@ -132,7 +128,17 @@ async function readResolution(client, scope) {
132
128
  snapshot.effective_from AS snapshot_effective_from,
133
129
  snapshot.monthly_usage_anchor AS snapshot_monthly_usage_anchor,
134
130
  snapshot.entitlements AS snapshot_entitlements,
135
- snapshot.content_checksum AS snapshot_content_checksum
131
+ snapshot.content_checksum AS snapshot_content_checksum,
132
+ snapshot.schema_version, snapshot.source_kind, snapshot.generation_reason,
133
+ snapshot.effective_until, snapshot.source_subscription_id,
134
+ snapshot.source_subscription_version,
135
+ snapshot.verified_at AS snapshot_verified_at,
136
+ snapshot.created_at AS snapshot_created_at,
137
+ plan.plan_code, plan.version AS plan_version,
138
+ plan.effective_from AS plan_effective_from,
139
+ plan.entitlements AS plan_entitlements,
140
+ plan.content_checksum AS plan_content_checksum,
141
+ plan.created_at AS plan_created_at
136
142
  ${targetJoin}
137
143
  LEFT JOIN billing_account_active_enforcement_profiles AS active_profile
138
144
  ON active_profile.billing_account_id = account.id
@@ -144,13 +150,14 @@ async function readResolution(client, scope) {
144
150
  LEFT JOIN billing_entitlement_snapshots AS snapshot
145
151
  ON snapshot.billing_account_id = active_snapshot.billing_account_id
146
152
  AND snapshot.id = active_snapshot.snapshot_id
153
+ LEFT JOIN billing_plan_versions AS plan ON plan.id = snapshot.plan_version_id
147
154
  LEFT JOIN billing_enforcement_cohort_seals AS seal ON seal.singleton = true`, [value]);
148
155
  const row = rows[0];
149
156
  if (row === undefined)
150
157
  throw corrupt('profile_inconsistent');
151
158
  return row;
152
159
  }
153
- function validateResolution(row, expectedSnapshotBinding) {
160
+ function validateResolution(row, expectedSnapshotBinding, admissionContractVersion, databaseTime) {
154
161
  const profileEffectiveFrom = projectionInstant(row.profile_effective_from, 'profile_inconsistent');
155
162
  const cohortSealedAt = projectionInstant(row.cohort_sealed_at, 'profile_inconsistent');
156
163
  const validLegacyProfile = row.profile_mode === 'legacy_internal_exempt' &&
@@ -174,23 +181,34 @@ function validateResolution(row, expectedSnapshotBinding) {
174
181
  row.snapshot_verification_status !== 'verified' ||
175
182
  row.snapshot_effective_from === null ||
176
183
  row.snapshot_monthly_usage_anchor === null ||
177
- row.snapshot_content_checksum === null) {
184
+ row.snapshot_content_checksum === null ||
185
+ row.schema_version === null ||
186
+ row.source_kind === null ||
187
+ row.generation_reason === null ||
188
+ row.snapshot_verified_at === null ||
189
+ row.snapshot_created_at === null ||
190
+ row.plan_code === null ||
191
+ row.plan_version === null ||
192
+ row.plan_effective_from === null ||
193
+ row.plan_content_checksum === null ||
194
+ row.plan_created_at === null) {
178
195
  throw corrupt('snapshot_inconsistent');
179
196
  }
180
197
  const effectiveFrom = projectionInstant(row.snapshot_effective_from, 'snapshot_inconsistent');
181
198
  const monthlyUsageAnchor = projectionInstant(row.snapshot_monthly_usage_anchor, 'snapshot_inconsistent');
182
- const expectedChecksum = billingContentChecksum({
183
- billingAccountId: row.account_id,
184
- version: row.snapshot_version,
185
- planVersionId: row.snapshot_plan_version_id,
186
- effectiveFrom,
187
- monthlyUsageAnchor,
188
- entitlements: row.snapshot_entitlements,
189
- });
190
- if (row.snapshot_content_checksum !== expectedChecksum)
191
- throw corrupt('snapshot_inconsistent');
192
199
  const billingAccountId = validateBillingAccountId(row.account_id);
193
200
  if (row.profile_mode === 'legacy_internal_exempt') {
201
+ const expectedChecksum = billingContentChecksum({
202
+ billingAccountId: row.account_id,
203
+ version: row.snapshot_version,
204
+ planVersionId: row.snapshot_plan_version_id,
205
+ effectiveFrom,
206
+ monthlyUsageAnchor,
207
+ entitlements: row.snapshot_entitlements,
208
+ });
209
+ if (row.snapshot_content_checksum !== expectedChecksum) {
210
+ throw corrupt('snapshot_inconsistent');
211
+ }
194
212
  return { billingAccountId, profileMode: row.profile_mode };
195
213
  }
196
214
  const snapshotBinding = {
@@ -204,10 +222,13 @@ function validateResolution(row, expectedSnapshotBinding) {
204
222
  }
205
223
  let entitlements;
206
224
  try {
207
- entitlements = parseBillingCommercialFreeV1Entitlements(row.snapshot_entitlements);
225
+ entitlements = resolveActiveBillingCommercialEntitlement(activeEntitlementRow(row), {
226
+ admissionContractVersion,
227
+ databaseTime,
228
+ }).entitlements;
208
229
  }
209
230
  catch (error) {
210
- if (error instanceof BillingCommercialEntitlementError) {
231
+ if (error instanceof BillingActiveCommercialEntitlementInconsistentError) {
211
232
  throw corrupt('snapshot_inconsistent');
212
233
  }
213
234
  throw error;
@@ -220,6 +241,53 @@ function validateResolution(row, expectedSnapshotBinding) {
220
241
  snapshotBinding,
221
242
  };
222
243
  }
244
+ function activeEntitlementRow(row) {
245
+ if (row.account_id === null ||
246
+ row.snapshot_id === null ||
247
+ row.snapshot_version === null ||
248
+ row.snapshot_plan_version_id === null ||
249
+ row.snapshot_verification_status === null ||
250
+ row.snapshot_effective_from === null ||
251
+ row.snapshot_monthly_usage_anchor === null ||
252
+ row.snapshot_content_checksum === null ||
253
+ row.schema_version === null ||
254
+ row.source_kind === null ||
255
+ row.generation_reason === null ||
256
+ row.snapshot_verified_at === null ||
257
+ row.snapshot_created_at === null ||
258
+ row.plan_code === null ||
259
+ row.plan_version === null ||
260
+ row.plan_effective_from === null ||
261
+ row.plan_content_checksum === null ||
262
+ row.plan_created_at === null) {
263
+ throw corrupt('snapshot_inconsistent');
264
+ }
265
+ return {
266
+ id: row.snapshot_id,
267
+ billing_account_id: row.account_id,
268
+ version: row.snapshot_version,
269
+ plan_version_id: row.snapshot_plan_version_id,
270
+ plan_code: row.plan_code,
271
+ plan_version: row.plan_version,
272
+ plan_effective_from: row.plan_effective_from,
273
+ plan_entitlements: row.plan_entitlements,
274
+ plan_content_checksum: row.plan_content_checksum,
275
+ plan_created_at: row.plan_created_at,
276
+ schema_version: row.schema_version,
277
+ source_kind: row.source_kind,
278
+ generation_reason: row.generation_reason,
279
+ verification_status: row.snapshot_verification_status,
280
+ effective_from: row.snapshot_effective_from,
281
+ effective_until: row.effective_until,
282
+ monthly_usage_anchor: row.snapshot_monthly_usage_anchor,
283
+ entitlements: row.snapshot_entitlements,
284
+ content_checksum: row.snapshot_content_checksum,
285
+ source_subscription_id: row.source_subscription_id,
286
+ source_subscription_version: row.source_subscription_version,
287
+ verified_at: row.snapshot_verified_at,
288
+ created_at: row.snapshot_created_at,
289
+ };
290
+ }
223
291
  function sameSnapshotBinding(current, expected) {
224
292
  return (current.snapshotId === expected.snapshotId &&
225
293
  current.version === expected.version &&
@@ -240,6 +308,9 @@ function unavailableReason(error) {
240
308
  if (error instanceof BillingAuthoritativeAuthorityInconsistentError) {
241
309
  return 'authority_inconsistent';
242
310
  }
311
+ if (error instanceof BillingActiveCommercialEntitlementInconsistentError) {
312
+ return 'snapshot_inconsistent';
313
+ }
243
314
  if (error instanceof BillingCommercialCounterProjectionError)
244
315
  return error.reason;
245
316
  if (error instanceof ProjectionCorruptionError)
@@ -260,12 +331,6 @@ function validateFingerprint(value) {
260
331
  }
261
332
  return value;
262
333
  }
263
- function validateAdmissionContractVersion(value) {
264
- if (value !== BILLING_AUTHORITATIVE_ADMISSION_CONTRACT_VERSION) {
265
- throw new Error('billing commercial projection admission contract version is unsupported');
266
- }
267
- return value;
268
- }
269
334
  function boundedTimeout(label, value) {
270
335
  if (!Number.isSafeInteger(value) || value < 1 || value > 5_000) {
271
336
  throw new Error(`${label} must be between 1 and 5000 milliseconds`);
@@ -1 +1 @@
1
- {"version":3,"file":"postgres-commercial-enforcement-projection.js","sourceRoot":"","sources":["../../src/billing/postgres-commercial-enforcement-projection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"postgres-commercial-enforcement-projection.js","sourceRoot":"","sources":["../../src/billing/postgres-commercial-enforcement-projection.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@ import { type BillingAuthoritativeAdmissionInput, type BillingAuthoritativeAdmis
3
3
  export interface PostgresBillingAuthoritativeAdmissionStoreOptions {
4
4
  /** One-way key-generation marker; never the raw HMAC key. */
5
5
  readonly keyGeneration: string;
6
- readonly admissionContractVersion?: number;
7
6
  /** Bounded test/operations override. Default: 1000ms. */
8
7
  readonly lockTimeoutMs?: number;
9
8
  /** Bounded test/operations override. Default: 2000ms. */
@@ -1 +1 @@
1
- {"version":3,"file":"postgres-meter-admission.d.ts","sourceRoot":"","sources":["../../src/billing/postgres-meter-admission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,IAAI,CAAC;AAE3C,OAAO,EACL,KAAK,kCAAkC,EACvC,KAAK,mCAAmC,EACxC,KAAK,kCAAkC,EAGxC,MAAM,8BAA8B,CAAC;AAsBtC,MAAM,WAAW,iDAAiD;IAChE,6DAA6D;IAC7D,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,yDAAyD;IACzD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,yDAAyD;IACzD,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC;AAmCD,yEAAyE;AACzE,qBAAa,0CACX,YAAW,kCAAkC;;gBAQjC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,iDAAiD;IAmB5E,KAAK,CACT,QAAQ,EAAE,kCAAkC,GAC3C,OAAO,CAAC,mCAAmC,CAAC;CAqIhD"}
1
+ {"version":3,"file":"postgres-meter-admission.d.ts","sourceRoot":"","sources":["../../src/billing/postgres-meter-admission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,IAAI,CAAC;AAQ3C,OAAO,EACL,KAAK,kCAAkC,EACvC,KAAK,mCAAmC,EACxC,KAAK,kCAAkC,EAGxC,MAAM,8BAA8B,CAAC;AAiBtC,MAAM,WAAW,iDAAiD;IAChE,6DAA6D;IAC7D,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,yDAAyD;IACzD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,yDAAyD;IACzD,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC;AAmCD,yEAAyE;AACzE,qBAAa,0CACX,YAAW,kCAAkC;;gBAOjC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,iDAAiD;IAgB5E,KAAK,CACT,QAAQ,EAAE,kCAAkC,GAC3C,OAAO,CAAC,mCAAmC,CAAC;CA+IhD"}
@@ -1,7 +1,6 @@
1
1
  import { DEPLOYMENT_ID_PATTERN, validateSlug } from '../store/validate.js';
2
+ import { BillingActiveCommercialEntitlementInconsistentError, resolveActiveBillingCommercialEntitlement, } from './active-commercial-entitlement.js';
2
3
  import { BillingAuthoritativeAdmissionUnavailableError, BillingAuthoritativeIdempotencyConflictError, } from './authoritative-admission.js';
3
- import { BillingCommercialEntitlementError, parseBillingCommercialFreeV1Entitlements, } from './commercial-entitlements.js';
4
- import { BILLING_AUTHORITATIVE_ADMISSION_CONTRACT_VERSION } from './enforcement-activation.js';
5
4
  import { billingContentChecksum } from './model.js';
6
5
  import { BillingAuthoritativeAuthorityInconsistentError, readBillingAuthoritativeAuthorityTx, } from './postgres-authoritative-authority.js';
7
6
  import { findAuthoritativeDuplicate, lockAuthoritativeDedupeIdentity, readAuthoritativeIncludedCalls, recordAuthoritativeAdmission, } from './postgres-meter-admission-ledger.js';
@@ -14,13 +13,11 @@ const DEFAULT_STATEMENT_TIMEOUT_MS = 2_000;
14
13
  export class PostgresBillingAuthoritativeAdmissionStore {
15
14
  #pool;
16
15
  #keyGeneration;
17
- #admissionContractVersion;
18
16
  #lockTimeoutMs;
19
17
  #statementTimeoutMs;
20
18
  constructor(pool, options) {
21
19
  this.#pool = pool;
22
20
  this.#keyGeneration = validateFingerprint('billing meter key generation', options.keyGeneration);
23
- this.#admissionContractVersion = validateAdmissionContractVersion(options.admissionContractVersion ?? BILLING_AUTHORITATIVE_ADMISSION_CONTRACT_VERSION);
24
21
  this.#lockTimeoutMs = boundedTimeout('billing authoritative admission lock timeout', options.lockTimeoutMs ?? DEFAULT_LOCK_TIMEOUT_MS);
25
22
  this.#statementTimeoutMs = boundedTimeout('billing authoritative admission statement timeout', options.statementTimeoutMs ?? DEFAULT_STATEMENT_TIMEOUT_MS);
26
23
  }
@@ -38,7 +35,6 @@ export class PostgresBillingAuthoritativeAdmissionStore {
38
35
  try {
39
36
  authority = await readBillingAuthoritativeAuthorityTx(client, {
40
37
  keyGeneration: this.#keyGeneration,
41
- admissionContractVersion: this.#admissionContractVersion,
42
38
  });
43
39
  }
44
40
  catch (error) {
@@ -61,35 +57,37 @@ export class PostgresBillingAuthoritativeAdmissionStore {
61
57
  const initialAttribution = await readAttribution(client, input.org, false);
62
58
  if (initialAttribution === undefined)
63
59
  throw unavailable();
64
- validateAttribution(initialAttribution);
65
- const initialWindow = resolveUtcMonthlyUsageWindow(toIso(initialAttribution.monthly_usage_anchor), recordedAt);
66
60
  if (initialAttribution.profile_mode === 'legacy_internal_exempt') {
61
+ validateLegacyAttribution(initialAttribution);
67
62
  const lockedExemption = await readAttribution(client, input.org, true);
68
63
  if (lockedExemption === undefined ||
69
- !validAttribution(lockedExemption) ||
64
+ !validLegacyAttribution(lockedExemption) ||
70
65
  !sameAttribution(initialAttribution, lockedExemption)) {
71
66
  throw unavailable();
72
67
  }
73
68
  await client.query('COMMIT');
74
69
  return { outcome: 'bypass', reason: 'legacy_internal_exempt' };
75
70
  }
71
+ const initialEntitlement = resolveEnforcedAttribution(initialAttribution, authority.admissionContractVersion, recordedAt);
72
+ const initialWindow = resolveUtcMonthlyUsageWindow(initialEntitlement.monthlyUsageAnchor, recordedAt);
76
73
  await lockAuthoritativeDedupeIdentity(client, authority.epochId, input);
77
74
  await client.query('SELECT pg_advisory_xact_lock(hashtextextended($1, 0))', [
78
75
  accountWindowLockKey(authority.epochId, initialAttribution.billing_account_id, initialWindow.start),
79
76
  ]);
80
77
  const attribution = await readAttribution(client, input.org, true);
81
- if (attribution === undefined ||
82
- !validAttribution(attribution) ||
83
- !sameAttribution(initialAttribution, attribution)) {
78
+ if (attribution === undefined || !sameAttribution(initialAttribution, attribution)) {
84
79
  throw unavailable();
85
80
  }
86
81
  if (attribution.profile_mode === 'legacy_internal_exempt') {
87
82
  await client.query('COMMIT');
88
83
  return { outcome: 'bypass', reason: 'legacy_internal_exempt' };
89
84
  }
90
- if (attribution.profile_mode !== 'enforced')
85
+ const resolvedEntitlement = resolveEnforcedAttribution(attribution, authority.admissionContractVersion, recordedAt);
86
+ if (resolvedEntitlement.snapshotId !== initialEntitlement.snapshotId ||
87
+ resolvedEntitlement.snapshotVersion !== initialEntitlement.snapshotVersion) {
91
88
  throw unavailable();
92
- const entitlements = parseBillingCommercialFreeV1Entitlements(attribution.entitlements);
89
+ }
90
+ const entitlements = resolvedEntitlement.entitlements;
93
91
  const duplicate = await findAuthoritativeDuplicate(client, {
94
92
  epochId: authority.epochId,
95
93
  input,
@@ -148,11 +146,13 @@ async function proveLegacyExemption(client, org) {
148
146
  const initial = await readAttribution(client, org, false);
149
147
  if (initial === undefined)
150
148
  return false;
151
- validateAttribution(initial);
152
149
  if (initial.profile_mode !== 'legacy_internal_exempt')
153
150
  return false;
151
+ validateLegacyAttribution(initial);
154
152
  const locked = await readAttribution(client, org, true);
155
- if (locked === undefined || !validAttribution(locked) || !sameAttribution(initial, locked)) {
153
+ if (locked === undefined ||
154
+ !validLegacyAttribution(locked) ||
155
+ !sameAttribution(initial, locked)) {
156
156
  throw unavailable();
157
157
  }
158
158
  return true;
@@ -160,6 +160,16 @@ async function proveLegacyExemption(client, org) {
160
160
  async function readAttribution(client, org, lock) {
161
161
  const { rows } = await client.query(`SELECT link.billing_account_id, link.version AS link_version,
162
162
  account.state AS account_state, account.created_at AS account_created_at,
163
+ snapshot.id, snapshot.version, snapshot.plan_version_id,
164
+ plan.plan_code, plan.version AS plan_version,
165
+ plan.effective_from AS plan_effective_from,
166
+ plan.entitlements AS plan_entitlements,
167
+ plan.content_checksum AS plan_content_checksum,
168
+ plan.created_at AS plan_created_at,
169
+ snapshot.schema_version, snapshot.source_kind, snapshot.generation_reason,
170
+ snapshot.verification_status, snapshot.effective_from, snapshot.effective_until,
171
+ snapshot.source_subscription_id, snapshot.source_subscription_version,
172
+ snapshot.verified_at, snapshot.created_at, snapshot.content_checksum,
163
173
  snapshot.id AS snapshot_id, snapshot.version AS snapshot_version,
164
174
  snapshot.plan_version_id AS snapshot_plan_version_id,
165
175
  snapshot.verification_status AS snapshot_verification_status,
@@ -178,6 +188,7 @@ async function readAttribution(client, org, lock) {
178
188
  JOIN billing_entitlement_snapshots AS snapshot
179
189
  ON snapshot.billing_account_id = active_snapshot.billing_account_id
180
190
  AND snapshot.id = active_snapshot.snapshot_id
191
+ JOIN billing_plan_versions AS plan ON plan.id = snapshot.plan_version_id
181
192
  JOIN billing_account_active_enforcement_profiles AS active_profile
182
193
  ON active_profile.billing_account_id = link.billing_account_id
183
194
  JOIN billing_account_enforcement_profiles AS profile
@@ -185,7 +196,9 @@ async function readAttribution(client, org, lock) {
185
196
  AND profile.version = active_profile.profile_version
186
197
  JOIN billing_enforcement_cohort_seals AS seal ON seal.singleton = true
187
198
  WHERE link.org_slug = $1 AND link.active
188
- ${lock ? 'FOR SHARE OF link, account, active_snapshot, snapshot, active_profile, profile, seal' : ''}`, [org]);
199
+ ${lock
200
+ ? 'FOR SHARE OF link, account, active_snapshot, snapshot, plan, active_profile, profile, seal'
201
+ : ''}`, [org]);
189
202
  return rows[0];
190
203
  }
191
204
  function sameAttribution(initial, locked) {
@@ -200,6 +213,19 @@ function sameAttribution(initial, locked) {
200
213
  toIso(initial.snapshot_effective_from) === toIso(locked.snapshot_effective_from) &&
201
214
  initial.snapshot_content_checksum === locked.snapshot_content_checksum &&
202
215
  toIso(initial.monthly_usage_anchor) === toIso(locked.monthly_usage_anchor) &&
216
+ initial.schema_version === locked.schema_version &&
217
+ initial.source_kind === locked.source_kind &&
218
+ initial.generation_reason === locked.generation_reason &&
219
+ toOptionalIso(initial.effective_until) === toOptionalIso(locked.effective_until) &&
220
+ initial.source_subscription_id === locked.source_subscription_id &&
221
+ initial.source_subscription_version === locked.source_subscription_version &&
222
+ toIso(initial.verified_at) === toIso(locked.verified_at) &&
223
+ toIso(initial.created_at) === toIso(locked.created_at) &&
224
+ initial.plan_code === locked.plan_code &&
225
+ initial.plan_version === locked.plan_version &&
226
+ toIso(initial.plan_effective_from) === toIso(locked.plan_effective_from) &&
227
+ initial.plan_content_checksum === locked.plan_content_checksum &&
228
+ toIso(initial.plan_created_at) === toIso(locked.plan_created_at) &&
203
229
  initial.profile_version === locked.profile_version &&
204
230
  initial.profile_mode === locked.profile_mode &&
205
231
  initial.profile_source === locked.profile_source &&
@@ -208,7 +234,7 @@ function sameAttribution(initial, locked) {
208
234
  initial.cohort_seal_id === locked.cohort_seal_id &&
209
235
  toIso(initial.cohort_sealed_at) === toIso(locked.cohort_sealed_at));
210
236
  }
211
- function validateAttribution(row) {
237
+ function validateAttributionProfile(row) {
212
238
  const profileEffectiveFrom = toIso(row.profile_effective_from);
213
239
  const cohortSealedAt = toIso(row.cohort_sealed_at);
214
240
  const validLegacyProfile = row.profile_mode === 'legacy_internal_exempt' &&
@@ -219,7 +245,13 @@ function validateAttribution(row) {
219
245
  profileEffectiveFrom >= cohortSealedAt;
220
246
  if (row.account_state !== 'active' ||
221
247
  row.profile_cohort_seal_id !== row.cohort_seal_id ||
222
- (!validLegacyProfile && !validEnforcedProfile) ||
248
+ (!validLegacyProfile && !validEnforcedProfile)) {
249
+ throw unavailable();
250
+ }
251
+ }
252
+ function validateLegacyAttribution(row) {
253
+ validateAttributionProfile(row);
254
+ if (row.profile_mode !== 'legacy_internal_exempt' ||
223
255
  row.snapshot_verification_status !== 'verified' ||
224
256
  !Number.isSafeInteger(row.snapshot_version) ||
225
257
  row.snapshot_version < 1) {
@@ -238,9 +270,9 @@ function validateAttribution(row) {
238
270
  if (row.snapshot_content_checksum !== expectedChecksum)
239
271
  throw unavailable();
240
272
  }
241
- function validAttribution(row) {
273
+ function validLegacyAttribution(row) {
242
274
  try {
243
- validateAttribution(row);
275
+ validateLegacyAttribution(row);
244
276
  return true;
245
277
  }
246
278
  catch (error) {
@@ -249,6 +281,22 @@ function validAttribution(row) {
249
281
  throw error;
250
282
  }
251
283
  }
284
+ function resolveEnforcedAttribution(row, admissionContractVersion, databaseTime) {
285
+ validateAttributionProfile(row);
286
+ if (row.profile_mode !== 'enforced')
287
+ throw unavailable();
288
+ try {
289
+ return resolveActiveBillingCommercialEntitlement(row, {
290
+ admissionContractVersion,
291
+ databaseTime,
292
+ });
293
+ }
294
+ catch (error) {
295
+ if (error instanceof BillingActiveCommercialEntitlementInconsistentError)
296
+ throw unavailable();
297
+ throw error;
298
+ }
299
+ }
252
300
  function normalizeInput(input) {
253
301
  const deploymentId = input.deploymentId.trim();
254
302
  if (deploymentId.length === 0 ||
@@ -280,12 +328,6 @@ function validateFingerprint(label, value) {
280
328
  throw new Error(`${label} must be a SHA-256 digest`);
281
329
  return value;
282
330
  }
283
- function validateAdmissionContractVersion(value) {
284
- if (value !== BILLING_AUTHORITATIVE_ADMISSION_CONTRACT_VERSION) {
285
- throw new Error('billing authoritative admission contract version is unsupported');
286
- }
287
- return value;
288
- }
289
331
  function boundedTimeout(label, value) {
290
332
  if (!Number.isSafeInteger(value) || value < 1 || value > 5_000) {
291
333
  throw new Error(`${label} must be between 1 and 5000 milliseconds`);
@@ -295,7 +337,7 @@ function boundedTimeout(label, value) {
295
337
  function translateAdmissionError(error) {
296
338
  if (error instanceof BillingAuthoritativeAuthorityInconsistentError)
297
339
  return unavailable();
298
- if (error instanceof BillingCommercialEntitlementError)
340
+ if (error instanceof BillingActiveCommercialEntitlementInconsistentError)
299
341
  return unavailable();
300
342
  if (error instanceof BillingAuthoritativeAdmissionUnavailableError ||
301
343
  error instanceof BillingAuthoritativeIdempotencyConflictError) {
@@ -312,6 +354,9 @@ function toIso(value) {
312
354
  throw unavailable();
313
355
  return date.toISOString();
314
356
  }
357
+ function toOptionalIso(value) {
358
+ return value === null ? null : toIso(value);
359
+ }
315
360
  function unavailable() {
316
361
  return new BillingAuthoritativeAdmissionUnavailableError();
317
362
  }
@@ -1 +1 @@
1
- {"version":3,"file":"postgres-meter-admission.js","sourceRoot":"","sources":["../../src/billing/postgres-meter-admission.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAIL,6CAA6C,EAC7C,4CAA4C,GAC7C,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,iCAAiC,EACjC,wCAAwC,GACzC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,gDAAgD,EAAE,MAAM,6BAA6B,CAAC;AAC/F,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAEL,8CAA8C,EAC9C,mCAAmC,GACpC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,iDAAiD,EAAE,MAAM,4BAA4B,CAAC;AAC/F,OAAO,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AAYjE,MAAM,uBAAuB,GAAG,KAAK,CAAC;AACtC,MAAM,4BAA4B,GAAG,KAAK,CAAC;AAgC3C,yEAAyE;AACzE,MAAM,OAAO,0CAA0C;IAG5C,KAAK,CAAO;IACZ,cAAc,CAAS;IACvB,yBAAyB,CAAS;IAClC,cAAc,CAAS;IACvB,mBAAmB,CAAS;IAErC,YAAY,IAAU,EAAE,OAA0D;QAChF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,cAAc,GAAG,mBAAmB,CACvC,8BAA8B,EAC9B,OAAO,CAAC,aAAa,CACtB,CAAC;QACF,IAAI,CAAC,yBAAyB,GAAG,gCAAgC,CAC/D,OAAO,CAAC,wBAAwB,IAAI,gDAAgD,CACrF,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,cAAc,CAClC,8CAA8C,EAC9C,OAAO,CAAC,aAAa,IAAI,uBAAuB,CACjD,CAAC;QACF,IAAI,CAAC,mBAAmB,GAAG,cAAc,CACvC,mDAAmD,EACnD,OAAO,CAAC,kBAAkB,IAAI,4BAA4B,CAC3D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CACT,QAA4C;QAE5C,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC3D,MAAM,MAAM,CAAC,KAAK,CAChB;0DACkD,EAClD,CAAC,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,GAAG,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAC9D,CAAC;YACF,MAAM,MAAM,CAAC,KAAK,CAAC,8DAA8D,EAAE;gBACjF,iDAAiD;aAClD,CAAC,CAAC;YACH,IAAI,SAAgD,CAAC;YACrD,IAAI,CAAC;gBACH,SAAS,GAAG,MAAM,mCAAmC,CAAC,MAAM,EAAE;oBAC5D,aAAa,EAAE,IAAI,CAAC,cAAc;oBAClC,wBAAwB,EAAE,IAAI,CAAC,yBAAyB;iBACzD,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IACE,KAAK,YAAY,8CAA8C;oBAC/D,CAAC,MAAM,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAC/C,CAAC;oBACD,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAC7B,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;gBACjE,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;YACD,IAAI,SAAS,CAAC,KAAK,KAAK,cAAc,EAAE,CAAC;gBACvC,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC7B,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;YAC1D,CAAC;YACD,IAAI,SAAS,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gBACnC,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC7B,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC;YACzD,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,+BAA+B,CAAC,MAAM,CAAC,CAAC;YACjE,MAAM,kBAAkB,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAC3E,IAAI,kBAAkB,KAAK,SAAS;gBAAE,MAAM,WAAW,EAAE,CAAC;YAC1D,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;YACxC,MAAM,aAAa,GAAG,4BAA4B,CAChD,KAAK,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,EAC9C,UAAU,CACX,CAAC;YACF,IAAI,kBAAkB,CAAC,YAAY,KAAK,wBAAwB,EAAE,CAAC;gBACjE,MAAM,eAAe,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACvE,IACE,eAAe,KAAK,SAAS;oBAC7B,CAAC,gBAAgB,CAAC,eAAe,CAAC;oBAClC,CAAC,eAAe,CAAC,kBAAkB,EAAE,eAAe,CAAC,EACrD,CAAC;oBACD,MAAM,WAAW,EAAE,CAAC;gBACtB,CAAC;gBACD,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC7B,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;YACjE,CAAC;YACD,MAAM,+BAA+B,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACxE,MAAM,MAAM,CAAC,KAAK,CAAC,uDAAuD,EAAE;gBAC1E,oBAAoB,CAClB,SAAS,CAAC,OAAO,EACjB,kBAAkB,CAAC,kBAAkB,EACrC,aAAa,CAAC,KAAK,CACpB;aACF,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACnE,IACE,WAAW,KAAK,SAAS;gBACzB,CAAC,gBAAgB,CAAC,WAAW,CAAC;gBAC9B,CAAC,eAAe,CAAC,kBAAkB,EAAE,WAAW,CAAC,EACjD,CAAC;gBACD,MAAM,WAAW,EAAE,CAAC;YACtB,CAAC;YACD,IAAI,WAAW,CAAC,YAAY,KAAK,wBAAwB,EAAE,CAAC;gBAC1D,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC7B,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;YACjE,CAAC;YACD,IAAI,WAAW,CAAC,YAAY,KAAK,UAAU;gBAAE,MAAM,WAAW,EAAE,CAAC;YACjE,MAAM,YAAY,GAAG,wCAAwC,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAExF,MAAM,SAAS,GAAG,MAAM,0BAA0B,CAAC,MAAM,EAAE;gBACzD,OAAO,EAAE,SAAS,CAAC,OAAO;gBAC1B,KAAK;aACN,CAAC,CAAC;YACH,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC7B,OAAO;oBACL,OAAO,EAAE,UAAU;oBACnB,cAAc,EAAE,WAAW;oBAC3B,cAAc,EAAE,SAAS,CAAC,cAAc;oBACxC,OAAO,EAAE,SAAS,CAAC,OAAO;iBAC3B,CAAC;YACJ,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,8BAA8B,CAAC,MAAM,EAAE;gBACjE,OAAO,EAAE,SAAS,CAAC,OAAO;gBAC1B,gBAAgB,EAAE,WAAW,CAAC,kBAAkB;gBAChD,WAAW,EAAE,aAAa,CAAC,KAAK;gBAChC,SAAS,EAAE,aAAa,CAAC,GAAG;aAC7B,CAAC,CAAC;YACH,IAAI,aAAa,IAAI,YAAY,CAAC,aAAa,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC;gBAChF,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC7B,OAAO;oBACL,OAAO,EAAE,QAAQ;oBACjB,MAAM,EAAE,8BAA8B;oBACtC,OAAO,EAAE,aAAa,CAAC,GAAG;iBAC3B,CAAC;YACJ,CAAC;YACD,MAAM,cAAc,GAAG,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3F,MAAM,4BAA4B,CAAC,MAAM,EAAE;gBACzC,OAAO,EAAE,SAAS,CAAC,OAAO;gBAC1B,KAAK;gBACL,WAAW;gBACX,cAAc;gBACd,UAAU;gBACV,WAAW,EAAE,aAAa,CAAC,KAAK;gBAChC,SAAS,EAAE,aAAa,CAAC,GAAG;aAC7B,CAAC,CAAC;YACH,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC7B,OAAO;gBACL,OAAO,EAAE,UAAU;gBACnB,cAAc,EAAE,UAAU;gBAC1B,cAAc;gBACd,OAAO,EAAE,aAAa,CAAC,GAAG;aAC3B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;YAC9B,MAAM,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CACF;AAED,KAAK,UAAU,oBAAoB,CAAC,MAAkB,EAAE,GAAW;IACjE,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC1D,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxC,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,IAAI,OAAO,CAAC,YAAY,KAAK,wBAAwB;QAAE,OAAO,KAAK,CAAC;IACpE,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACxD,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;QAC3F,MAAM,WAAW,EAAE,CAAC;IACtB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,MAAkB,EAClB,GAAW,EACX,IAAa;IAEb,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CACjC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG,IAAI,CAAC,CAAC,CAAC,sFAAsF,CAAC,CAAC,CAAC,EAAE,EAAE,EACvG,CAAC,GAAG,CAAC,CACN,CAAC;IACF,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,SAAS,eAAe,CAAC,OAAuB,EAAE,MAAsB;IACtE,OAAO,CACL,OAAO,CAAC,kBAAkB,KAAK,MAAM,CAAC,kBAAkB;QACxD,OAAO,CAAC,YAAY,KAAK,MAAM,CAAC,YAAY;QAC5C,OAAO,CAAC,aAAa,KAAK,MAAM,CAAC,aAAa;QAC9C,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC;QACtE,OAAO,CAAC,WAAW,KAAK,MAAM,CAAC,WAAW;QAC1C,OAAO,CAAC,gBAAgB,KAAK,MAAM,CAAC,gBAAgB;QACpD,OAAO,CAAC,wBAAwB,KAAK,MAAM,CAAC,wBAAwB;QACpE,OAAO,CAAC,4BAA4B,KAAK,MAAM,CAAC,4BAA4B;QAC5E,KAAK,CAAC,OAAO,CAAC,uBAAuB,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC;QAChF,OAAO,CAAC,yBAAyB,KAAK,MAAM,CAAC,yBAAyB;QACtE,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAC1E,OAAO,CAAC,eAAe,KAAK,MAAM,CAAC,eAAe;QAClD,OAAO,CAAC,YAAY,KAAK,MAAM,CAAC,YAAY;QAC5C,OAAO,CAAC,cAAc,KAAK,MAAM,CAAC,cAAc;QAChD,OAAO,CAAC,sBAAsB,KAAK,MAAM,CAAC,sBAAsB;QAChE,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC;QAC9E,OAAO,CAAC,cAAc,KAAK,MAAM,CAAC,cAAc;QAChD,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,CACnE,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAmB;IAC9C,MAAM,oBAAoB,GAAG,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACnD,MAAM,kBAAkB,GACtB,GAAG,CAAC,YAAY,KAAK,wBAAwB;QAC7C,GAAG,CAAC,cAAc,KAAK,oBAAoB;QAC3C,oBAAoB,KAAK,cAAc,CAAC;IAC1C,MAAM,oBAAoB,GACxB,GAAG,CAAC,YAAY,KAAK,UAAU;QAC/B,GAAG,CAAC,cAAc,KAAK,mBAAmB;QAC1C,oBAAoB,IAAI,cAAc,CAAC;IACzC,IACE,GAAG,CAAC,aAAa,KAAK,QAAQ;QAC9B,GAAG,CAAC,sBAAsB,KAAK,GAAG,CAAC,cAAc;QACjD,CAAC,CAAC,kBAAkB,IAAI,CAAC,oBAAoB,CAAC;QAC9C,GAAG,CAAC,4BAA4B,KAAK,UAAU;QAC/C,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAC3C,GAAG,CAAC,gBAAgB,GAAG,CAAC,EACxB,CAAC;QACD,MAAM,WAAW,EAAE,CAAC;IACtB,CAAC;IACD,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACzD,MAAM,kBAAkB,GAAG,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC3D,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;QAC9C,gBAAgB,EAAE,GAAG,CAAC,kBAAkB;QACxC,OAAO,EAAE,GAAG,CAAC,gBAAgB;QAC7B,aAAa,EAAE,GAAG,CAAC,wBAAwB;QAC3C,aAAa;QACb,kBAAkB;QAClB,YAAY,EAAE,GAAG,CAAC,YAAY;KAC/B,CAAC,CAAC;IACH,IAAI,GAAG,CAAC,yBAAyB,KAAK,gBAAgB;QAAE,MAAM,WAAW,EAAE,CAAC;AAC9E,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAmB;IAC3C,IAAI,CAAC;QACH,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,6CAA6C;YAAE,OAAO,KAAK,CAAC;QACjF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAyC;IAC/D,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC/C,IACE,YAAY,CAAC,MAAM,KAAK,CAAC;QACzB,YAAY,CAAC,MAAM,GAAG,GAAG;QACzB,CAAC,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC,EACzC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO;QACL,GAAG,EAAE,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC;QACnC,GAAG,EAAE,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC;QACnC,WAAW,EAAE,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC;QACnD,YAAY;QACZ,QAAQ,EAAE;YACR,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,qBAAqB,KAAK,SAAS;gBACpD,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE,qBAAqB,EAAE,mBAAmB,CACxC,oCAAoC,EACpC,KAAK,CAAC,QAAQ,CAAC,qBAAqB,CACrC;iBACF,CAAC;YACN,mBAAmB,EAAE,mBAAmB,CACtC,sBAAsB,EACtB,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CACnC;YACD,mBAAmB,EAAE,mBAAmB,CACtC,sBAAsB,EACtB,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CACnC;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAe,EAAE,SAAiB,EAAE,WAAmB;IACnF,OAAO,2CAA2C,OAAO,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;AAC1F,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa,EAAE,KAAa;IACvD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,2BAA2B,CAAC,CAAC;IACxF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gCAAgC,CAAC,KAAa;IACrD,IAAI,KAAK,KAAK,gDAAgD,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CAAC,KAAa,EAAE,KAAa;IAClD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,0CAA0C,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc;IAC7C,IAAI,KAAK,YAAY,8CAA8C;QAAE,OAAO,WAAW,EAAE,CAAC;IAC1F,IAAI,KAAK,YAAY,iCAAiC;QAAE,OAAO,WAAW,EAAE,CAAC;IAC7E,IACE,KAAK,YAAY,6CAA6C;QAC9D,KAAK,YAAY,4CAA4C,EAC7D,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GACR,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK;QAC5D,CAAC,CAAC,MAAM,CAAE,KAAoC,CAAC,IAAI,CAAC;QACpD,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AACtE,CAAC;AAED,SAAS,KAAK,CAAC,KAAoB;IACjC,MAAM,IAAI,GAAG,KAAK,YAAY,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAAE,MAAM,WAAW,EAAE,CAAC;IAC1D,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,WAAW;IAClB,OAAO,IAAI,6CAA6C,EAAE,CAAC;AAC7D,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,MAAkB;IAC/C,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,8CAA8C;IAChD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"postgres-meter-admission.js","sourceRoot":"","sources":["../../src/billing/postgres-meter-admission.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"postgres-production-app-admission.d.ts","sourceRoot":"","sources":["../../src/billing/postgres-production-app-admission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAkB,MAAM,IAAI,CAAC;AAIrD;;;GAGG;AACH,eAAO,MAAM,sCAAsC,gDAAgD,CAAC;AAIpG,MAAM,MAAM,sCAAsC,GAC9C,+BAA+B,GAC/B,iCAAiC,CAAC;AAEtC,qBAAa,kCAAmC,SAAQ,KAAK;IAC3D,QAAQ,CAAC,IAAI,EAAE,sCAAsC,CAAC;gBAE1C,IAAI,EAAE,sCAAsC;CASzD;AAED,MAAM,MAAM,oCAAoC,GAC5C;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IACE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,CAAC;AA8CN,kGAAkG;AAClG,wBAAsB,uCAAuC,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAI/F;AAED;;;GAGG;AACH,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACpD,OAAO,CAAC,oCAAoC,CAAC,CAgB/C;AAiED,+FAA+F;AAC/F,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,oCAAoC,GAC5C,OAAO,CAAC,IAAI,CAAC,CA6Bf"}
1
+ {"version":3,"file":"postgres-production-app-admission.d.ts","sourceRoot":"","sources":["../../src/billing/postgres-production-app-admission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAkB,MAAM,IAAI,CAAC;AASrD;;;GAGG;AACH,eAAO,MAAM,sCAAsC,gDAAgD,CAAC;AAEpG,MAAM,MAAM,sCAAsC,GAC9C,+BAA+B,GAC/B,iCAAiC,CAAC;AAEtC,qBAAa,kCAAmC,SAAQ,KAAK;IAC3D,QAAQ,CAAC,IAAI,EAAE,sCAAsC,CAAC;gBAE1C,IAAI,EAAE,sCAAsC;CASzD;AAED,MAAM,MAAM,oCAAoC,GAC5C;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IACE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,CAAC;AA8CN,kGAAkG;AAClG,wBAAsB,uCAAuC,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAI/F;AAED;;;GAGG;AACH,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACpD,OAAO,CAAC,oCAAoC,CAAC,CAkB/C;AA4FD,+FAA+F;AAC/F,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,oCAAoC,GAC5C,OAAO,CAAC,IAAI,CAAC,CA6Bf"}