@noodleseed/one 0.49.1 → 0.51.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 (27) hide show
  1. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  2. package/node_modules/@noodle-borg/service/dist/billing/enforcement-release-config.d.ts +13 -0
  3. package/node_modules/@noodle-borg/service/dist/billing/enforcement-release-config.d.ts.map +1 -0
  4. package/node_modules/@noodle-borg/service/dist/billing/enforcement-release-config.js +31 -0
  5. package/node_modules/@noodle-borg/service/dist/billing/enforcement-release-config.js.map +1 -0
  6. package/node_modules/@noodle-borg/service/dist/billing/integration.d.ts +7 -0
  7. package/node_modules/@noodle-borg/service/dist/billing/integration.d.ts.map +1 -1
  8. package/node_modules/@noodle-borg/service/dist/billing/integration.js +9 -0
  9. package/node_modules/@noodle-borg/service/dist/billing/integration.js.map +1 -1
  10. package/node_modules/@noodle-borg/service/dist/billing/postgres-enforcement-release-activation.d.ts +27 -0
  11. package/node_modules/@noodle-borg/service/dist/billing/postgres-enforcement-release-activation.d.ts.map +1 -0
  12. package/node_modules/@noodle-borg/service/dist/billing/postgres-enforcement-release-activation.js +198 -0
  13. package/node_modules/@noodle-borg/service/dist/billing/postgres-enforcement-release-activation.js.map +1 -0
  14. package/node_modules/@noodle-borg/service/dist/billing/service-enforcement-release.d.ts +9 -0
  15. package/node_modules/@noodle-borg/service/dist/billing/service-enforcement-release.d.ts.map +1 -0
  16. package/node_modules/@noodle-borg/service/dist/billing/service-enforcement-release.js +38 -0
  17. package/node_modules/@noodle-borg/service/dist/billing/service-enforcement-release.js.map +1 -0
  18. package/node_modules/@noodle-borg/service/dist/main.js +3 -0
  19. package/node_modules/@noodle-borg/service/dist/main.js.map +1 -1
  20. package/node_modules/@noodle-borg/service/dist/routes/billing-enforcement-activation.js +12 -0
  21. package/node_modules/@noodle-borg/service/dist/routes/billing-enforcement-activation.js.map +1 -1
  22. package/node_modules/@noodle-borg/service/dist/serve-options.d.ts +3 -0
  23. package/node_modules/@noodle-borg/service/dist/serve-options.d.ts.map +1 -1
  24. package/node_modules/@noodle-borg/service/dist/serve.d.ts.map +1 -1
  25. package/node_modules/@noodle-borg/service/dist/serve.js +3 -0
  26. package/node_modules/@noodle-borg/service/dist/serve.js.map +1 -1
  27. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@noodle-borg/agent-kit",
3
- "version": "0.30.0",
3
+ "version": "0.30.1",
4
4
  "private": true,
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -0,0 +1,13 @@
1
+ export declare const BILLING_ENFORCEMENT_PRODUCTION_ORIGIN: "https://cloud.noodleseed.dev";
2
+ export type BillingEnforcementMode = 'free_v1';
3
+ /** Parse the production release switch strictly; absence is the only dormant configuration. */
4
+ export declare function resolveBillingEnforcementMode(env: NodeJS.ProcessEnv): BillingEnforcementMode | undefined;
5
+ export declare function assertReleaseManagedBillingEnvironment(input: {
6
+ readonly mode: BillingEnforcementMode;
7
+ readonly postgresConfigured: boolean;
8
+ readonly serviceOrigin: string | undefined;
9
+ readonly releaseSha: string;
10
+ readonly systemReleaseId: string | undefined;
11
+ readonly manifestChecksum: string | undefined;
12
+ }): void;
13
+ //# sourceMappingURL=enforcement-release-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enforcement-release-config.d.ts","sourceRoot":"","sources":["../../src/billing/enforcement-release-config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qCAAqC,EAAG,8BAAuC,CAAC;AAE7F,MAAM,MAAM,sBAAsB,GAAG,SAAS,CAAC;AAE/C,+FAA+F;AAC/F,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,sBAAsB,GAAG,SAAS,CAKpC;AAED,wBAAgB,sCAAsC,CAAC,KAAK,EAAE;IAC5D,QAAQ,CAAC,IAAI,EAAE,sBAAsB,CAAC;IACtC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/C,GAAG,IAAI,CAuBP"}
@@ -0,0 +1,31 @@
1
+ export const BILLING_ENFORCEMENT_PRODUCTION_ORIGIN = 'https://cloud.noodleseed.dev';
2
+ /** Parse the production release switch strictly; absence is the only dormant configuration. */
3
+ export function resolveBillingEnforcementMode(env) {
4
+ const value = env.NOODLE_BILLING_ENFORCEMENT_MODE;
5
+ if (value === undefined)
6
+ return undefined;
7
+ if (value === 'free_v1')
8
+ return value;
9
+ throw new Error('NOODLE_BILLING_ENFORCEMENT_MODE must be exactly free_v1 when configured');
10
+ }
11
+ export function assertReleaseManagedBillingEnvironment(input) {
12
+ if (input.mode !== 'free_v1') {
13
+ throw new Error('release-managed billing supports only Free-v1 enforcement');
14
+ }
15
+ if (!input.postgresConfigured) {
16
+ throw new Error('production release-managed billing requires PostgreSQL persistence');
17
+ }
18
+ if (input.serviceOrigin !== BILLING_ENFORCEMENT_PRODUCTION_ORIGIN) {
19
+ throw new Error(`production release-managed billing requires ${BILLING_ENFORCEMENT_PRODUCTION_ORIGIN}`);
20
+ }
21
+ if (!/^[0-9a-f]{40}$/.test(input.releaseSha)) {
22
+ throw new Error('production release-managed billing requires a full lowercase release SHA');
23
+ }
24
+ if (!/^r[1-9][0-9]*$/.test(input.systemReleaseId ?? '')) {
25
+ throw new Error('production release-managed billing requires a protected rN System Release');
26
+ }
27
+ if (!/^sha256:[0-9a-f]{64}$/.test(input.manifestChecksum ?? '')) {
28
+ throw new Error('production release-managed billing requires the System Release manifest checksum');
29
+ }
30
+ }
31
+ //# sourceMappingURL=enforcement-release-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enforcement-release-config.js","sourceRoot":"","sources":["../../src/billing/enforcement-release-config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qCAAqC,GAAG,8BAAuC,CAAC;AAI7F,+FAA+F;AAC/F,MAAM,UAAU,6BAA6B,CAC3C,GAAsB;IAEtB,MAAM,KAAK,GAAG,GAAG,CAAC,+BAA+B,CAAC;IAClD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;AAC7F,CAAC;AAED,MAAM,UAAU,sCAAsC,CAAC,KAOtD;IACC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,KAAK,qCAAqC,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CACb,+CAA+C,qCAAqC,EAAE,CACvF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,IAAI,EAAE,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -33,6 +33,13 @@ export declare function createPostgresBillingEnforcementActivationStore(pool: Po
33
33
  }): Promise<import("./postgres-enforcement-activation.js").PostgresBillingEnforcementActivationStore>;
34
34
  /** Construct the mandatory durable request gate selected by every Postgres-hosted service. */
35
35
  export declare function createPostgresBillingAuthoritativeAdmissionStore(pool: Pool, hmacKey: string): Promise<BillingAuthoritativeAdmissionStore>;
36
+ /** Authorize the one-time generation-zero transition only from a protected production System Release. */
37
+ export declare function ensurePostgresReleaseManagedBillingActivation(pool: Pool, hmacKey: string, options: {
38
+ readonly serviceOrigin: string;
39
+ readonly releaseSha: string;
40
+ readonly systemReleaseId: string;
41
+ readonly manifestChecksum: string;
42
+ }): Promise<import("./postgres-enforcement-release-activation.js").ReleaseManagedFreeV1ActivationResult>;
36
43
  /** Construct the read projection from the same retry-identity generation as admission. */
37
44
  export declare function createPostgresBillingCommercialEnforcementProjectionStore(pool: Pool, hmacKey: string): Promise<import("./postgres-commercial-enforcement-projection.js").PostgresBillingCommercialEnforcementProjectionStore>;
38
45
  /** Keep the Postgres-only validation lifecycle out of the lightweight in-memory service path. */
@@ -1 +1 @@
1
- {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../src/billing/integration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../src/billing/integration.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,15 @@ export async function createPostgresBillingAuthoritativeAdmissionStore(pool, hma
79
79
  admissionContractVersion: BILLING_AUTHORITATIVE_ADMISSION_CONTRACT_VERSION,
80
80
  });
81
81
  }
82
+ /** Authorize the one-time generation-zero transition only from a protected production System Release. */
83
+ export async function ensurePostgresReleaseManagedBillingActivation(pool, hmacKey, options) {
84
+ parseBillingUsageHmacKey(hmacKey);
85
+ const { ensurePostgresReleaseManagedFreeV1Activation } = await import('./postgres-enforcement-release-activation.js');
86
+ return ensurePostgresReleaseManagedFreeV1Activation(pool, {
87
+ ...options,
88
+ keyGeneration: deriveBillingMeterKeyGeneration(hmacKey),
89
+ });
90
+ }
82
91
  /** Construct the read projection from the same retry-identity generation as admission. */
83
92
  export async function createPostgresBillingCommercialEnforcementProjectionStore(pool, hmacKey) {
84
93
  parseBillingUsageHmacKey(hmacKey);
@@ -1 +1 @@
1
- {"version":3,"file":"integration.js","sourceRoot":"","sources":["../../src/billing/integration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integration.js","sourceRoot":"","sources":["../../src/billing/integration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { Pool } from 'pg';
2
+ import { type BillingEnforcementActivationSignals } from './enforcement-activation.js';
3
+ export declare const RELEASE_MANAGED_FREE_V1_ACTIVATION_BLOCKERS: readonly ["cohort_not_sealed", "cohort_seal_mismatch", "billing_attribution_incomplete", "unprofiled_billing_accounts", "activation_state_mismatch", "active_epoch_exists", "invalid_enforced_entitlements", "enforced_account_not_free_v1", "enforced_account_over_capacity"];
4
+ type ReleaseManagedFreeV1ActivationBlocker = (typeof RELEASE_MANAGED_FREE_V1_ACTIVATION_BLOCKERS)[number];
5
+ export interface ReleaseManagedFreeV1ActivationResult {
6
+ readonly state: 'active' | 'rolled_back';
7
+ readonly generation: number;
8
+ readonly activeEpochId: string | null;
9
+ readonly activated: boolean;
10
+ }
11
+ export declare function releaseManagedFreeV1ActivationBlockers(signals: BillingEnforcementActivationSignals): readonly ReleaseManagedFreeV1ActivationBlocker[];
12
+ /**
13
+ * Perform the one-time production System Release transition. PostgreSQL remains the sole runtime switch;
14
+ * the release mode only authorizes generation-zero activation before the service starts listening.
15
+ */
16
+ export declare function ensurePostgresReleaseManagedFreeV1Activation(pool: Pool, options: {
17
+ readonly serviceOrigin: string;
18
+ readonly releaseSha: string;
19
+ readonly systemReleaseId: string;
20
+ readonly manifestChecksum: string;
21
+ readonly keyGeneration: string;
22
+ readonly admissionContractVersion?: number;
23
+ readonly lockTimeoutMs?: number;
24
+ readonly id?: () => string;
25
+ }): Promise<ReleaseManagedFreeV1ActivationResult>;
26
+ export {};
27
+ //# sourceMappingURL=postgres-enforcement-release-activation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres-enforcement-release-activation.d.ts","sourceRoot":"","sources":["../../src/billing/postgres-enforcement-release-activation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAkB,MAAM,IAAI,CAAC;AAC/C,OAAO,EAGL,KAAK,mCAAmC,EAEzC,MAAM,6BAA6B,CAAC;AAqBrC,eAAO,MAAM,2CAA2C,gRAU9C,CAAC;AAEX,KAAK,qCAAqC,GACxC,CAAC,OAAO,2CAA2C,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,WAAW,oCAAoC;IACnD,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,aAAa,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAQD,wBAAgB,sCAAsC,CACpD,OAAO,EAAE,mCAAmC,GAC3C,SAAS,qCAAqC,EAAE,CAkBlD;AAED;;;GAGG;AACH,wBAAgB,4CAA4C,CAC1D,IAAI,EAAE,IAAI,EACV,OAAO,EAAE;IACP,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,MAAM,CAAC;CAC5B,GACA,OAAO,CAAC,oCAAoC,CAAC,CA0M/C"}
@@ -0,0 +1,198 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { insertAuditEvent } from '@noodle-borg/module-audit';
3
+ import { BILLING_AUTHORITATIVE_ADMISSION_CONTRACT_VERSION, BillingEnforcementActivationConflictError, normalizeActivationServiceUrl, } from './enforcement-activation.js';
4
+ import { BILLING_ENFORCEMENT_PRODUCTION_ORIGIN } from './enforcement-release-config.js';
5
+ import { BILLING_METER_RETRY_IDENTITY_VERSION } from './meter-readiness.js';
6
+ import { BILLING_METER_VALIDATION_WRITER_CONTRACT_VERSION } from './meter-validation-epoch.js';
7
+ import { billingContentChecksum } from './model.js';
8
+ import { readBillingAuthoritativeAuthorityTx } from './postgres-authoritative-authority.js';
9
+ import { BILLING_ENFORCEMENT_ACTIVATION_LOCK_TIMEOUT_MS, validateActivationLockTimeout, withBillingEnforcementActivationTransaction, } from './postgres-enforcement-activation-locks.js';
10
+ import { readPostgresBillingEnforcementActivationSignalsTx } from './postgres-enforcement-activation-preflight.js';
11
+ import { requireActivationState, requireActiveAuthoritativeEpoch, stateRowToStatus, validateAdmissionContractVersion, validateReleaseSha, } from './postgres-enforcement-activation-support.js';
12
+ import { readBillingMeterTransactionTime } from './postgres-meter-clock.js';
13
+ export const RELEASE_MANAGED_FREE_V1_ACTIVATION_BLOCKERS = [
14
+ 'cohort_not_sealed',
15
+ 'cohort_seal_mismatch',
16
+ 'billing_attribution_incomplete',
17
+ 'unprofiled_billing_accounts',
18
+ 'activation_state_mismatch',
19
+ 'active_epoch_exists',
20
+ 'invalid_enforced_entitlements',
21
+ 'enforced_account_not_free_v1',
22
+ 'enforced_account_over_capacity',
23
+ ];
24
+ export function releaseManagedFreeV1ActivationBlockers(signals) {
25
+ const blockers = [];
26
+ const add = (condition, blocker) => {
27
+ if (condition)
28
+ blockers.push(blocker);
29
+ };
30
+ add(signals.cohortState !== 'sealed', 'cohort_not_sealed');
31
+ add(signals.cohortSealId === null, 'cohort_seal_mismatch');
32
+ add(!signals.billingAttributionComplete, 'billing_attribution_incomplete');
33
+ add(signals.unprofiledAccountCount !== 0, 'unprofiled_billing_accounts');
34
+ add(signals.activationState !== 'not_activated' || signals.activationGeneration !== 0, 'activation_state_mismatch');
35
+ add(signals.activeEpochId !== null, 'active_epoch_exists');
36
+ add(signals.invalidEnforcedEntitlementAccountCount !== 0, 'invalid_enforced_entitlements');
37
+ add(signals.nonFreeEnforcedAccountCount !== 0, 'enforced_account_not_free_v1');
38
+ add(signals.enforcedOverCapacityAccountCount !== 0, 'enforced_account_over_capacity');
39
+ return blockers;
40
+ }
41
+ /**
42
+ * Perform the one-time production System Release transition. PostgreSQL remains the sole runtime switch;
43
+ * the release mode only authorizes generation-zero activation before the service starts listening.
44
+ */
45
+ export function ensurePostgresReleaseManagedFreeV1Activation(pool, options) {
46
+ const serviceOrigin = normalizeActivationServiceUrl(options.serviceOrigin);
47
+ if (serviceOrigin !== BILLING_ENFORCEMENT_PRODUCTION_ORIGIN) {
48
+ throw new Error('release-managed Free-v1 activation requires the canonical production origin');
49
+ }
50
+ const releaseSha = validateReleaseSha(options.releaseSha);
51
+ if (!/^r[1-9][0-9]*$/.test(options.systemReleaseId)) {
52
+ throw new Error('release-managed Free-v1 activation requires an rN System Release id');
53
+ }
54
+ if (!/^sha256:[0-9a-f]{64}$/.test(options.manifestChecksum)) {
55
+ throw new Error('release-managed Free-v1 activation requires a System Release manifest checksum');
56
+ }
57
+ if (!/^[0-9a-f]{64}$/.test(options.keyGeneration)) {
58
+ throw new Error('release-managed Free-v1 activation key generation is invalid');
59
+ }
60
+ const admissionContractVersion = validateAdmissionContractVersion(options.admissionContractVersion ?? BILLING_AUTHORITATIVE_ADMISSION_CONTRACT_VERSION);
61
+ const lockTimeoutMs = validateActivationLockTimeout(options.lockTimeoutMs ?? BILLING_ENFORCEMENT_ACTIVATION_LOCK_TIMEOUT_MS);
62
+ const id = options.id ?? randomUUID;
63
+ return withBillingEnforcementActivationTransaction(pool, lockTimeoutMs, async (client) => {
64
+ const state = await requireActivationState(client, true);
65
+ if (state.state === 'rolled_back') {
66
+ const authority = await readBillingAuthoritativeAuthorityTx(client, {
67
+ keyGeneration: options.keyGeneration,
68
+ admissionContractVersion,
69
+ });
70
+ if (authority.state !== 'inactive' || authority.reason !== 'rolled_back') {
71
+ throw new BillingEnforcementActivationConflictError('activation_configuration_unavailable', 'rolled-back billing enforcement authority is inconsistent');
72
+ }
73
+ const status = stateRowToStatus(state);
74
+ return {
75
+ state: 'rolled_back',
76
+ generation: status.generation,
77
+ activeEpochId: null,
78
+ activated: false,
79
+ };
80
+ }
81
+ if (state.state === 'active') {
82
+ const status = stateRowToStatus(state);
83
+ const authority = await readBillingAuthoritativeAuthorityTx(client, {
84
+ keyGeneration: options.keyGeneration,
85
+ admissionContractVersion,
86
+ });
87
+ if (authority.state !== 'active' || authority.epochId !== status.activeEpochId) {
88
+ throw new BillingEnforcementActivationConflictError('activation_configuration_unavailable', 'active billing enforcement authority is inconsistent');
89
+ }
90
+ const activeEpoch = await requireActiveAuthoritativeEpoch(client, status.activeEpochId);
91
+ if (activeEpoch.writer_contract_version !== BILLING_METER_VALIDATION_WRITER_CONTRACT_VERSION) {
92
+ throw new BillingEnforcementActivationConflictError('activation_configuration_unavailable', 'active billing enforcement is incompatible with this release');
93
+ }
94
+ return {
95
+ state: 'active',
96
+ generation: status.generation,
97
+ activeEpochId: status.activeEpochId,
98
+ activated: false,
99
+ };
100
+ }
101
+ const activatedAt = await readBillingMeterTransactionTime(client);
102
+ const signals = await readPostgresBillingEnforcementActivationSignalsTx(client, activatedAt, {
103
+ serviceOrigin,
104
+ currentReleaseSha: releaseSha,
105
+ supportedAdmissionContractVersion: admissionContractVersion,
106
+ });
107
+ if (signals.cohortSealId !== state.cohort_seal_id) {
108
+ throw new BillingEnforcementActivationConflictError('activation_preflight_blocked', 'release-managed billing activation cohort state is inconsistent');
109
+ }
110
+ const blockers = releaseManagedFreeV1ActivationBlockers(signals);
111
+ if (blockers.length > 0) {
112
+ throw new BillingEnforcementActivationConflictError('activation_preflight_blocked', `release-managed billing activation is blocked: ${blockers.join(',')}`);
113
+ }
114
+ const epochCounts = await client.query(`
115
+ SELECT
116
+ count(*) FILTER (WHERE state = 'active')::text AS active_count,
117
+ count(*) FILTER (WHERE state = 'prepared' AND purpose = 'validation')::text
118
+ AS prepared_validation_count,
119
+ count(*) FILTER (WHERE state = 'prepared' AND purpose <> 'validation')::text
120
+ AS incompatible_prepared_count
121
+ FROM billing_meter_epochs
122
+ `);
123
+ if (epochCounts.rows[0]?.active_count !== '0' ||
124
+ !['0', '1'].includes(epochCounts.rows[0]?.prepared_validation_count ?? '') ||
125
+ epochCounts.rows[0]?.incompatible_prepared_count !== '0') {
126
+ throw new BillingEnforcementActivationConflictError('activation_epoch_conflict', 'release-managed billing activation found a conflicting meter epoch');
127
+ }
128
+ await client.query(`UPDATE billing_meter_epochs
129
+ SET state = 'retired', retired_at = $1
130
+ WHERE purpose = 'validation' AND state = 'prepared'`, [activatedAt]);
131
+ const activeEpochId = `bmea_${id()}`;
132
+ await client.query(`INSERT INTO billing_meter_epochs
133
+ (id, schema_version, purpose, state, key_generation, release_sha,
134
+ retry_identity_version, writer_contract_version, admission_contract_version,
135
+ prepared_at, activated_at)
136
+ VALUES ($1, 1, 'authoritative', 'active', $2, $3, $4, $5, $6, $7, $7)`, [
137
+ activeEpochId,
138
+ options.keyGeneration,
139
+ releaseSha,
140
+ BILLING_METER_RETRY_IDENTITY_VERSION,
141
+ BILLING_METER_VALIDATION_WRITER_CONTRACT_VERSION,
142
+ admissionContractVersion,
143
+ activatedAt,
144
+ ]);
145
+ const approvalChecksum = billingContentChecksum({
146
+ schemaVersion: 1,
147
+ source: 'system_release_boot',
148
+ mode: 'free_v1',
149
+ systemReleaseId: options.systemReleaseId,
150
+ serviceReleaseSha: releaseSha,
151
+ manifestChecksum: options.manifestChecksum,
152
+ serviceOrigin,
153
+ cohortSealId: state.cohort_seal_id,
154
+ keyGeneration: options.keyGeneration,
155
+ admissionContractVersion,
156
+ });
157
+ const generation = 1;
158
+ const updated = await client.query(`UPDATE billing_enforcement_activation_state
159
+ SET state = 'active', generation = $1, active_epoch_id = $2, last_epoch_id = $2,
160
+ activated_at = $3, rolled_back_at = NULL,
161
+ activation_service_release_sha = $4, admission_contract_version = $5,
162
+ approval_checksum = $6, updated_at = $3
163
+ WHERE singleton = true AND state = 'not_activated' AND generation = 0
164
+ AND cohort_seal_id = $7 AND active_epoch_id IS NULL`, [
165
+ generation,
166
+ activeEpochId,
167
+ activatedAt,
168
+ releaseSha,
169
+ admissionContractVersion,
170
+ approvalChecksum,
171
+ state.cohort_seal_id,
172
+ ]);
173
+ if (updated.rowCount !== 1) {
174
+ throw new BillingEnforcementActivationConflictError('activation_state_conflict', 'release-managed billing activation state changed concurrently');
175
+ }
176
+ await insertAuditEvent(client, {
177
+ eventType: 'billing.enforcement.activated',
178
+ org: 'platform',
179
+ actorSubject: 'system:production-release',
180
+ decision: 'allow',
181
+ status: 201,
182
+ details: {
183
+ source: 'system_release_boot',
184
+ state: 'active',
185
+ generation,
186
+ cohortSealId: state.cohort_seal_id,
187
+ activeEpochId,
188
+ systemReleaseId: options.systemReleaseId,
189
+ serviceReleaseSha: releaseSha,
190
+ manifestChecksum: options.manifestChecksum,
191
+ admissionContractVersion,
192
+ approvalChecksum,
193
+ },
194
+ }, { now: () => new Date(activatedAt) });
195
+ return { state: 'active', generation, activeEpochId, activated: true };
196
+ });
197
+ }
198
+ //# sourceMappingURL=postgres-enforcement-release-activation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres-enforcement-release-activation.js","sourceRoot":"","sources":["../../src/billing/postgres-enforcement-release-activation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { Pool } from 'pg';
2
+ import type { BuildInfo } from '../build-info.js';
3
+ import type { ServeServiceOptions } from '../serve-options.js';
4
+ type ReleaseOptions = Pick<ServeServiceOptions, 'billingEnforcementMode' | 'controlPlaneSignupMode' | 'publicBaseUrl' | 'logger'>;
5
+ export declare function assertPublicSignupBillingActivation(signupMode: ServeServiceOptions['controlPlaneSignupMode'], activationState: 'active' | 'rolled_back'): void;
6
+ export declare function assertBillingEnforcementReleaseConfiguration(options: ReleaseOptions, buildInfo: BuildInfo, postgresConfigured: boolean): void;
7
+ export declare function activateBillingEnforcementForRelease(pool: Pool, hmacKey: string, options: ReleaseOptions, buildInfo: BuildInfo): Promise<void>;
8
+ export {};
9
+ //# sourceMappingURL=service-enforcement-release.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-enforcement-release.d.ts","sourceRoot":"","sources":["../../src/billing/service-enforcement-release.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAI/D,KAAK,cAAc,GAAG,IAAI,CACxB,mBAAmB,EACnB,wBAAwB,GAAG,wBAAwB,GAAG,eAAe,GAAG,QAAQ,CACjF,CAAC;AAEF,wBAAgB,mCAAmC,CACjD,UAAU,EAAE,mBAAmB,CAAC,wBAAwB,CAAC,EACzD,eAAe,EAAE,QAAQ,GAAG,aAAa,GACxC,IAAI,CAIN;AAED,wBAAgB,4CAA4C,CAC1D,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,SAAS,EACpB,kBAAkB,EAAE,OAAO,GAC1B,IAAI,CAUN;AAED,wBAAsB,oCAAoC,CACxD,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,IAAI,CAAC,CAef"}
@@ -0,0 +1,38 @@
1
+ import { noopLogger } from '@noodle-borg/transport-http';
2
+ import { assertReleaseManagedBillingEnvironment } from './enforcement-release-config.js';
3
+ import { ensurePostgresReleaseManagedBillingActivation } from './integration.js';
4
+ export function assertPublicSignupBillingActivation(signupMode, activationState) {
5
+ if (signupMode === 'public' && activationState !== 'active') {
6
+ throw new Error('public signup requires active billing enforcement');
7
+ }
8
+ }
9
+ export function assertBillingEnforcementReleaseConfiguration(options, buildInfo, postgresConfigured) {
10
+ if (options.billingEnforcementMode === undefined)
11
+ return;
12
+ assertReleaseManagedBillingEnvironment({
13
+ mode: options.billingEnforcementMode,
14
+ postgresConfigured,
15
+ serviceOrigin: options.publicBaseUrl,
16
+ releaseSha: buildInfo.gitSha,
17
+ systemReleaseId: buildInfo.systemRelease,
18
+ manifestChecksum: buildInfo.manifestChecksum,
19
+ });
20
+ }
21
+ export async function activateBillingEnforcementForRelease(pool, hmacKey, options, buildInfo) {
22
+ if (options.billingEnforcementMode !== 'free_v1')
23
+ return;
24
+ const result = await ensurePostgresReleaseManagedBillingActivation(pool, hmacKey, {
25
+ serviceOrigin: options.publicBaseUrl,
26
+ releaseSha: buildInfo.gitSha,
27
+ systemReleaseId: buildInfo.systemRelease,
28
+ manifestChecksum: buildInfo.manifestChecksum,
29
+ });
30
+ (options.logger ?? noopLogger).info('billing.enforcement.release_activation', {
31
+ state: result.state,
32
+ generation: result.generation,
33
+ activated: result.activated,
34
+ systemReleaseId: buildInfo.systemRelease,
35
+ });
36
+ assertPublicSignupBillingActivation(options.controlPlaneSignupMode, result.state);
37
+ }
38
+ //# sourceMappingURL=service-enforcement-release.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-enforcement-release.js","sourceRoot":"","sources":["../../src/billing/service-enforcement-release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAIzD,OAAO,EAAE,sCAAsC,EAAE,MAAM,iCAAiC,CAAC;AACzF,OAAO,EAAE,6CAA6C,EAAE,MAAM,kBAAkB,CAAC;AAOjF,MAAM,UAAU,mCAAmC,CACjD,UAAyD,EACzD,eAAyC;IAEzC,IAAI,UAAU,KAAK,QAAQ,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,4CAA4C,CAC1D,OAAuB,EACvB,SAAoB,EACpB,kBAA2B;IAE3B,IAAI,OAAO,CAAC,sBAAsB,KAAK,SAAS;QAAE,OAAO;IACzD,sCAAsC,CAAC;QACrC,IAAI,EAAE,OAAO,CAAC,sBAAsB;QACpC,kBAAkB;QAClB,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,UAAU,EAAE,SAAS,CAAC,MAAM;QAC5B,eAAe,EAAE,SAAS,CAAC,aAAa;QACxC,gBAAgB,EAAE,SAAS,CAAC,gBAAgB;KAC7C,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oCAAoC,CACxD,IAAU,EACV,OAAe,EACf,OAAuB,EACvB,SAAoB;IAEpB,IAAI,OAAO,CAAC,sBAAsB,KAAK,SAAS;QAAE,OAAO;IACzD,MAAM,MAAM,GAAG,MAAM,6CAA6C,CAAC,IAAI,EAAE,OAAO,EAAE;QAChF,aAAa,EAAE,OAAO,CAAC,aAAuB;QAC9C,UAAU,EAAE,SAAS,CAAC,MAAM;QAC5B,eAAe,EAAE,SAAS,CAAC,aAAuB;QAClD,gBAAgB,EAAE,SAAS,CAAC,gBAA0B;KACvD,CAAC,CAAC;IACH,CAAC,OAAO,CAAC,MAAM,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,wCAAwC,EAAE;QAC5E,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,eAAe,EAAE,SAAS,CAAC,aAAuB;KACnD,CAAC,CAAC;IACH,mCAAmC,CAAC,OAAO,CAAC,sBAAsB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AACpF,CAAC"}
@@ -10,6 +10,7 @@
10
10
  import { createJwtVerifier, createStaticSigningKeyProvider } from '@noodle-borg/auth';
11
11
  import { normalizePublicBaseDomain } from '@noodle-borg/module';
12
12
  import { createLogger } from '@noodle-borg/transport-http';
13
+ import { resolveBillingEnforcementMode } from './billing/enforcement-release-config.js';
13
14
  import { resolveBillingMeterValidationRuntimeConfig } from './billing/meter-runtime-config.js';
14
15
  import { resolveBuildInfo } from './build-info.js';
15
16
  import { LiveGitHubAppClient } from './github/app-client.js';
@@ -34,6 +35,7 @@ async function main() {
34
35
  const databaseUrl = process.env.DATABASE_URL;
35
36
  const secretMasterKey = process.env.NOODLE_SECRET_MASTER_KEY;
36
37
  const billingUsageHmacKey = process.env.NOODLE_BILLING_USAGE_HMAC_KEY;
38
+ const billingEnforcementMode = resolveBillingEnforcementMode(process.env);
37
39
  const billingMeterValidation = resolveBillingMeterValidationRuntimeConfig(process.env);
38
40
  // KEK custody (ADR 0037): a Cloud KMS cryptoKey resource name. Takes precedence over the static key — the
39
41
  // KEK then never enters the process (KMS wraps a per-record data key).
@@ -143,6 +145,7 @@ async function main() {
143
145
  ...(cloudSql ? { cloudSql } : {}),
144
146
  ...(secretMasterKey ? { secretMasterKey } : {}),
145
147
  ...(billingUsageHmacKey ? { billingUsageHmacKey } : {}),
148
+ ...(billingEnforcementMode ? { billingEnforcementMode } : {}),
146
149
  ...(billingMeterValidation ? { billingMeterValidation } : {}),
147
150
  ...(kmsKeyName ? { kmsKeyName } : {}),
148
151
  ...(warmAll ? { warmAll: true } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
@@ -81,6 +81,18 @@ async function handleMutation(res, deps, identity, action, value) {
81
81
  error: error instanceof Error ? error.message : String(error),
82
82
  });
83
83
  }
84
+ if (action === 'activate' &&
85
+ 'approval' in request &&
86
+ request.approval.expectedState === 'not_activated' &&
87
+ request.approval.expectedGeneration === 0) {
88
+ const code = 'activation_system_release_required';
89
+ await emitDenial(deps.audit, 409, code, action, identity);
90
+ return sendJson(res, 409, {
91
+ ok: false,
92
+ code,
93
+ error: 'generation-zero billing enforcement activation is owned by the protected System Release',
94
+ });
95
+ }
84
96
  try {
85
97
  const service = normalizeActivationServiceUrl(deps.serviceUrl);
86
98
  const rawResult = action === 'activate'
@@ -1 +1 @@
1
- {"version":3,"file":"billing-enforcement-activation.js","sourceRoot":"","sources":["../../src/routes/billing-enforcement-activation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"billing-enforcement-activation.js","sourceRoot":"","sources":["../../src/routes/billing-enforcement-activation.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { SigningKeyProvider } from '@noodle-borg/auth';
2
2
  import type { ControlPlaneSignupMode, GoogleIdTokenVerifier } from './auth/deploy-gate.js';
3
+ import type { BillingEnforcementMode } from './billing/enforcement-release-config.js';
3
4
  import type { ModuleInput } from './modules/loader.js';
4
5
  import type { GoogleAuthenticator } from './oauth/google.js';
5
6
  import type { ServiceOptions } from './options.js';
@@ -35,6 +36,8 @@ export type ServeServiceOptions = ServiceOptions & {
35
36
  * Cloud SQL connector target (GCP, IAM DB auth — ADR 0034/0035). Selects the Postgres backend.
36
37
  */
37
38
  readonly cloudSql?: CloudSqlConfig;
39
+ /** Production System Release authorization for the one-time generation-zero Free-v1 cutover. */
40
+ readonly billingEnforcementMode?: BillingEnforcementMode;
38
41
  /**
39
42
  * Base64-encoded 32-byte master key that encrypts persisted secrets at rest (Slice 26, ADR 0028).
40
43
  * **Required whenever a durable store is enabled** (`dataDir`, `databaseUrl`, or `cloudSql`) unless
@@ -1 +1 @@
1
- {"version":3,"file":"serve-options.d.ts","sourceRoot":"","sources":["../src/serve-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG/D,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG;IACjD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,6FAA6F;IAC7F,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,yBAAyB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvD,+EAA+E;IAC/E,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChD,8FAA8F;IAC9F,QAAQ,CAAC,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;IACzD,mFAAmF;IACnF,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAC;IAChD;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE;QACf,qGAAqG;QACrG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;QACpC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;QACrC,6FAA6F;QAC7F,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;QACrC,8FAA8F;QAC9F,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;QAC3C,sGAAsG;QACtG,QAAQ,CAAC,2BAA2B,CAAC,EAAE,MAAM,CAAC;KAC/C,CAAC;IACF,qFAAqF;IACrF,QAAQ,CAAC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClD,6FAA6F;IAC7F,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnD,sCAAsC;IACtC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjD,uCAAuC;IACvC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClD,wGAAwG;IACxG,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC1C,wGAAwG;IACxG,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,yFAAyF;IACzF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,2FAA2F;IAC3F,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;CACtD,CAAC"}
1
+ {"version":3,"file":"serve-options.d.ts","sourceRoot":"","sources":["../src/serve-options.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,MAAM,EAAuB,MAAM,WAAW,CAAC;AAgDjG,OAAO,EAAE,KAAK,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AA0C9D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,4FAA4F;IAC5F,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC;IACnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,iGAAiG;AACjG,wBAAsB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,cAAc,CAAC,CAujB7F"}
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,MAAM,EAAuB,MAAM,WAAW,CAAC;AAoDjG,OAAO,EAAE,KAAK,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AA0C9D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,4FAA4F;IAC5F,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC;IACnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,iGAAiG;AACjG,wBAAsB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,cAAc,CAAC,CA8jB7F"}
@@ -7,6 +7,7 @@ import { ALERT_EVALUATION_INTERVAL_MS, AlertEvaluator } from './alert-evaluator.
7
7
  import { createAssetStore, resolveAssetConfig } from './asset-config.js';
8
8
  import { CompositeControlPlaneGate, GoogleControlPlaneGate, NoodleOAuthControlPlaneGate, } from './auth/deploy-gate.js';
9
9
  import { createPostgresBillingAuthoritativeAdmissionStore, createPostgresBillingCommercialEnforcementProjectionStore, createPostgresBillingEnforcementActivationStore, startConfiguredShadowBillingObservation, } from './billing/integration.js';
10
+ import { activateBillingEnforcementForRelease, assertBillingEnforcementReleaseConfiguration, } from './billing/service-enforcement-release.js';
10
11
  import { createServicePostgresBillingMeterRuntime } from './billing/service-meter-runtime.js';
11
12
  import { parseBillingUsageHmacKey } from './billing/usage-identity.js';
12
13
  import { resolveBuildInfo } from './build-info.js';
@@ -53,6 +54,7 @@ export async function serveService(options = {}) {
53
54
  options.cloudSql !== undefined;
54
55
  const postgresStoreRequested = options.databaseUrl !== undefined || options.cloudSql !== undefined;
55
56
  assertPostgresStoreOwnership(options, postgresStoreRequested);
57
+ assertBillingEnforcementReleaseConfiguration(options, buildInfo, postgresStoreRequested);
56
58
  // Fail closed: any durable store must have a master-key custodian. Existing deploy records may still
57
59
  // contain encrypted legacy secret envelopes, and managed config secrets are encrypted independently.
58
60
  // KMS (the KEK never enters the process — ADR 0037) takes precedence over a static local key.
@@ -471,6 +473,7 @@ export async function serveService(options = {}) {
471
473
  currentReleaseSha: buildInfo.gitSha,
472
474
  meterReadiness: billingMeterRuntime.readinessStore,
473
475
  });
476
+ await activateBillingEnforcementForRelease(pgPool.pool, postgresBillingUsageHmacKey, options, buildInfo);
474
477
  }
475
478
  }
476
479
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0D,MAAM,WAAW,CAAC;AAEjG,OAAO,EAAE,iBAAiB,EAA2B,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EACL,wBAAwB,EACxB,uBAAuB,GAExB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,UAAU,EAA2B,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,4BAA4B,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAGzE,OAAO,EACL,yBAAyB,EAEzB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,gDAAgD,EAChD,yDAAyD,EACzD,+CAA+C,EAC/C,uCAAuC,GACxC,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,wCAAwC,EAAE,MAAM,oCAAoC,CAAC;AAC9F,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EACL,6BAA6B,EAC7B,mCAAmC,GACpC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,wCAAwC,EAAE,MAAM,8BAA8B,CAAC;AACxF,OAAO,EACL,gCAAgC,EAChC,yBAAyB,GAC1B,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAoB,MAAM,qBAAqB,CAAC;AAGpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,6BAA6B,EAA8B,MAAM,aAAa,CAAC;AACxF,OAAO,EAAsB,cAAc,EAAE,MAAM,eAAe,CAAC;AAEnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAuB,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrF,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAkB,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,sCAAsC,EAAE,MAAM,2CAA2C,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAML,mBAAmB,EACnB,qBAAqB,EACrB,6BAA6B,EAC7B,4BAA4B,EAC5B,kBAAkB,GAInB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAqB7D,iGAAiG;AACjG,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,UAA+B,EAAE;IAClE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,gBAAgB,EAAE,CAAC;IAC1D,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;QACrD,GAAG,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,GAAG,CAAC,OAAO,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChG,CAAC,CAAC;IACH,IAAI,CAAC,mBAAmB,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAExE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC;IACzC,IAAI,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IAE9B,MAAM,qBAAqB,GACzB,OAAO,CAAC,OAAO,KAAK,SAAS;QAC7B,OAAO,CAAC,WAAW,KAAK,SAAS;QACjC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC;IACjC,MAAM,sBAAsB,GAC1B,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC;IACtE,4BAA4B,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAC;IAE9D,qGAAqG;IACrG,qGAAqG;IACrG,8FAA8F;IAC9F,IAAI,SAAgC,CAAC;IACrC,IAAI,qBAAqB,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;YAC/E,SAAS,GAAG,IAAI,SAAS,CAAC,uBAAuB,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACtF,CAAC;aAAM,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACjD,SAAS,GAAG,IAAI,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CACb,oGAAoG,CACrG,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,2BAA+C,CAAC;IACpD,IAAI,sBAAsB,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YAC9C,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF,CAAC;QACJ,CAAC;QACD,wBAAwB,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACtD,2BAA2B,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAC5D,CAAC;IAED,iGAAiG;IACjG,kGAAkG;IAClG,gFAAgF;IAChF,IAAI,KAAgC,CAAC;IACrC,IAAI,iBAAiB,GAAkC,OAAO,CAAC,iBAAiB,CAAC;IACjF,IAAI,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAC1D,IAAI,8BAA8B,GAAG,OAAO,CAAC,8BAA8B,CAAC;IAC5E,IAAI,iCAAiC,GAAG,OAAO,CAAC,iCAAiC,CAAC;IAClF,IAAI,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,CAAC;IACpE,IAAI,gCAAgC,GAAG,OAAO,CAAC,gCAAgC,CAAC;IAChF,IAAI,kCAAkC,GAAG,OAAO,CAAC,kCAAkC,CAAC;IACpF,IAAI,2CAA2C,GAC7C,OAAO,CAAC,2CAA2C,CAAC;IACtD,IAAI,WAAW,GAA4B,OAAO,CAAC,WAAW,CAAC;IAC/D,IAAI,WAAW,GAAsC,OAAO,CAAC,WAAW,CAAC;IACzE,0GAA0G;IAC1G,yGAAyG;IACzG,iGAAiG;IACjG,IAAI,UAAU,GAA0B,OAAO,CAAC,KAAK,CAAC;IACtD,IAAI,iBAAiB,GAAkC,OAAO,CAAC,iBAAiB,CAAC;IACjF,IAAI,cAAc,GAA+B,OAAO,CAAC,cAAc,CAAC;IACxE,IAAI,cAAc,GAA+B,OAAO,CAAC,cAAc,CAAC;IACxE,qGAAqG;IACrG,kGAAkG;IAClG,iGAAiG;IACjG,IAAI,qBAAqB,GAAsC,OAAO,CAAC,qBAAqB,CAAC;IAC7F,IAAI,oBAAoB,GAAqC,OAAO,CAAC,oBAAoB,CAAC;IAC1F,IAAI,8BAA8B,GAChC,OAAO,CAAC,8BAA8B,CAAC;IACzC,IAAI,MAAgC,CAAC;IACrC,IAAI,mBAA4D,CAAC;IACjE,IAAI,yBAAmF,CAAC;IACxF,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACxE,MAAM,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,qBAAqB,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC5E,MAAM,CAAC,0BAA0B,CAAC;YAClC,MAAM,CAAC,qBAAqB,CAAC;SAC9B,CAAC,CAAC;QACH,MAAM,GAAG,MAAM,kBAAkB,CAAC;YAChC,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1E,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACnE,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC9B,IAAI,2BAA2B,KAAK,SAAS,EAAE,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;QAC3F,CAAC;QACD,kCAAkC,GAAG,MAAM,gDAAgD,CACzF,MAAM,CAAC,IAAI,EACX,2BAA2B,CAC5B,CAAC;QACF,2CAA2C;YACzC,MAAM,yDAAyD,CAC7D,MAAM,CAAC,IAAI,EACX,2BAA2B,CAC5B,CAAC;QACJ,KAAK,GAAG,QAAQ,CAAC;QACjB,iBAAiB,GAAG,iBAAiB,IAAI,QAAQ,CAAC;QAClD,qBAAqB,GAAG,qBAAqB,IAAI,QAAQ,CAAC;QAC1D,8BAA8B,GAAG,8BAA8B,IAAI,QAAQ,CAAC;QAC5E,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;QACjC,yBAAyB,GAAG,GAAG,EAAE,CAC/B,wCAAwC,CACtC,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,OAAO,CAAC,MAAM,IAAI,UAAU,CAC7B,CAAC;QACJ,WAAW,GAAG,WAAW,IAAI,QAAQ,CAAC;QACtC,WAAW,GAAG,WAAW,IAAI,QAAQ,CAAC;QACtC,iBAAiB,GAAG,iBAAiB,IAAI,IAAI,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpF,cAAc,GAAG,cAAc,IAAI,IAAI,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3E,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,sBAAsB,GAAG,IAAI,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvE,MAAM,sBAAsB,CAAC,YAAY,EAAE,CAAC;YAC5C,cAAc,GAAG,sBAAsB,CAAC;QAC1C,CAAC;QACD,qBAAqB,GAAG,qBAAqB,IAAI,QAAQ,CAAC;QAC1D,oBAAoB,GAAG,oBAAoB,IAAI,QAAQ,CAAC;QACxD,8BAA8B;YAC5B,8BAA8B,IAAI,IAAI,sCAAsC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9F,CAAC;SAAM,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACzC,KAAK,GAAG,IAAI,qBAAqB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnD,cAAc,GAAG,cAAc,IAAI,IAAI,sBAAsB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC/E,qBAAqB;YACnB,qBAAqB,IAAI,IAAI,6BAA6B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9E,oBAAoB;YAClB,oBAAoB,IAAI,IAAI,4BAA4B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9E,CAAC;IACD,iBAAiB,GAAG,iBAAiB,IAAI,IAAI,yBAAyB,EAAE,CAAC;IACzE,WAAW,GAAG,WAAW,IAAI,IAAI,mBAAmB,EAAE,CAAC;IACvD,IAAI,MAAM,KAAK,SAAS;QAAE,UAAU,GAAG,UAAU,IAAI,IAAI,kBAAkB,EAAE,CAAC;IAC9E,WAAW,GAAG,WAAW,IAAI,IAAI,6BAA6B,EAAE,CAAC;IACjE,iBAAiB,GAAG,iBAAiB,IAAI,IAAI,yBAAyB,EAAE,CAAC;IACzE,cAAc,GAAG,cAAc,IAAI,IAAI,sBAAsB,EAAE,CAAC;IAEhE,uGAAuG;IACvG,+FAA+F;IAC/F,qGAAqG;IACrG,6FAA6F;IAC7F,MAAM,aAAa,GAAG,OAAO,CAAC,yBAAyB,IAAI,EAAE,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;IACzF,CAAC;IACD,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IACrE,IAAI,cAA0C,CAAC;IAC/C,IAAI,iBAAiB,YAAY,yBAAyB,EAAE,CAAC;QAC3D,MAAM,OAAO,GAAG,iBAAiB,CAAC;QAClC,MAAM,KAAK,GAAG,GAAS,EAAE;YACvB,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACxF,oDAAoD;YACtD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QACF,KAAK,EAAE,CAAC;QACR,cAAc,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QACxD,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC;IAC3B,CAAC;IAED,4FAA4F;IAC5F,gGAAgG;IAChG,8FAA8F;IAC9F,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC;QACxC,UAAU,EAAE,cAAc;QAC1B,aAAa,EAAE,iBAAiB;QAChC,qBAAqB,EAAE,OAAO,CAAC,yBAAyB,KAAK,IAAI;QACjE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,UAAU;QACpC,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC,CAAC;IACH,cAAc,CAAC,UAAU,EAAE,CAAC;IAC5B,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,4BAA4B,CAAC,CAAC;IAChG,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC;IAErB,IAAI,iBAA6C,CAAC;IAClD,IAAI,OAAO,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;QAC7C,iBAAiB,GAAG,uBAAuB,CAAC;YAC1C,KAAK,EAAE,iBAAiB;YACxB,MAAM,EAAE,OAAO,CAAC,kBAAkB;YAClC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,UAAU;YACpC,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE,CAAC,CAAC;IACL,CAAC;IAED,IAAI,uBAAmD,CAAC;IACxD,IACE,qBAAqB,KAAK,SAAS;QACnC,oBAAoB,KAAK,SAAS;QAClC,OAAO,CAAC,iBAAiB,KAAK,SAAS;QACvC,OAAO,CAAC,cAAc,KAAK,SAAS;QACpC,OAAO,CAAC,SAAS,EAAE,aAAa,KAAK,SAAS,EAC9C,CAAC;QACD,MAAM,mBAAmB,GAAG,IAAI,yBAAyB,CAAC;YACxD,eAAe,EAAE,qBAAqB;YACtC,QAAQ,EAAE,oBAAoB;YAC9B,QAAQ,EAAE,OAAO,CAAC,iBAAiB;YACnC,aAAa,EAAE,OAAO,CAAC,SAAS,CAAC,aAAa;YAC9C,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,UAAU;YACpC,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,GAAG,CAAC,OAAO,CAAC,4BAA4B,KAAK,SAAS;gBACpD,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,4BAA4B,EAAE;gBACtD,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO,CAAC,kBAAkB,KAAK,SAAS;gBAC1C,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,kBAAkB,EAAE;gBAC9C,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO,CAAC,gCAAgC,KAAK,SAAS;gBACxD,CAAC,CAAC,EAAE,uBAAuB,EAAE,OAAO,CAAC,gCAAgC,EAAE;gBACvE,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QACH,mBAAmB,CAAC,UAAU,EAAE,CAAC;QACjC,uBAAuB,GAAG,WAAW,CACnC,GAAG,EAAE,CAAC,mBAAmB,CAAC,UAAU,EAAE,EACtC,OAAO,CAAC,4BAA4B,IAAI,gCAAgC,CACzE,CAAC;QACF,uBAAuB,CAAC,KAAK,EAAE,EAAE,CAAC;IACpC,CAAC;IAED,mGAAmG;IACnG,qGAAqG;IACrG,oGAAoG;IACpG,+FAA+F;IAC/F,uGAAuG;IACvG,0DAA0D;IAC1D,IAAI,UAAU,GAA2B,OAAO,CAAC,UAAU,CAAC;IAC5D,IAAI,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IACpD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAG,kBAAkB,CAAC;YACxC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,OAAO,EAAE,qBAAqB;YAC9B,GAAG,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3F,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;YAC7B,UAAU,GAAG,gBAAgB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACrD,kBAAkB,GAAG,kBAAkB,IAAI,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;QACjF,CAAC;IACH,CAAC;IAED,IAAI,YAAY,GAAuC,OAAO,CAAC,OAAO,CAAC;IACvE,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,EAAE,YAAY,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QACtF,YAAY,GAAG,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,WAAW,CACrC,YAAY,EACZ;QACE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,UAAU;QACpC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE;QACvB,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjF,EACD;QACE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,UAAU;QACpC,GAAG,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACzF,CACF,CAAC;IACF,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC;QAChC,OAAO,EAAE,aAAa;QACtB,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3D,CAAC,CAAC;IAEH,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,oBAAoB,IAAI,EAAE,EAAE,CAAC;QACxD,MAAM,iBAAiB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,qBAAqB,IAAI,EAAE,EAAE,CAAC;QAC1D,MAAM,iBAAiB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,2GAA2G;IAC3G,4GAA4G;IAC5G,4GAA4G;IAC5G,0GAA0G;IAC1G,IAAI,aAAgF,CAAC;IACrF,IAAI,wBAAwB,GAAmC,OAAO,CAAC,gBAAgB,CAAC;IACxF,IAAI,wBAAwB,GAAuB,OAAO,CAAC,gBAAgB,CAAC;IAC5E,IAAI,QAAoC,CAAC;IACzC,IAAI,UAAkC,CAAC;IACvC,IAAI,iBAA6E,CAAC;IAClF,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,0BAA0B,GAAG,6BAA6B,CAAC;QAC/D,sBAAsB,EAAE,OAAO,CAAC,sCAAsC,KAAK,IAAI;QAC/E,GAAG,CAAC,OAAO,CAAC,4BAA4B,KAAK,SAAS;YACpD,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,4BAA4B,EAAE;YACxD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,+BAA+B,KAAK,SAAS;YACvD,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,+BAA+B,EAAE;YAC9D,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;IACH,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;YACzE,MAAM,aAAa,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC1D,MAAM,aAAa,CAAC,YAAY,EAAE,CAAC;YACnC,UAAU,GAAG,aAAa,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;YAChE,UAAU,GAAG,IAAI,kBAAkB,EAAE,CAAC;QACxC,CAAC;QACD,MAAM,CAAC,EAAE,mBAAmB,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACtE,MAAM,CAAC,qBAAqB,CAAC;YAC7B,MAAM,CAAC,gBAAgB,CAAC;SACzB,CAAC,CAAC;QACH,yGAAyG;QACzG,6FAA6F;QAC7F,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC7D,+FAA+F;QAC/F,2EAA2E;QAC3E,iBAAiB,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC1E,MAAM,QAAQ,GAAG,IAAI,mBAAmB,CAAC;YACvC,MAAM,EAAE,WAAW;YACnB,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;YAC5B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;YAC5B,6BAA6B,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAChD,QAAQ,KAAK,SAAS;gBACpB,CAAC,CAAC,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,CAAC;gBAC9D,CAAC,CAAC,SAAS;YACf,wBAAwB,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CACjD,QAAQ,KAAK,SAAS;gBACpB,CAAC,CAAC,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,iBAAiB,CAAC;gBACvE,CAAC,CAAC,SAAS;YACf,yBAAyB,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC/C,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;gBACrF,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;YACnF,CAAC;YACD,sBAAsB,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,sBAAsB,CAAC,SAAS,EAAE,UAAU,CAAC;YACrF,gBAAgB,EAAE,iBAAiB;YACnC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,UAAU;YACpC,wBAAwB,EAAE,CAAC,MAAM,EAAE,EAAE,CACnC,wCAAwC,CAAC,MAAM,EAAE,WAAW,CAAC;YAC/D,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,KAAK,SAAS;gBAChD,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE;gBAC1D,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,wBAAwB,KAAK,SAAS;gBACtD,CAAC,CAAC,EAAE,wBAAwB,EAAE,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE;gBACtE,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,2BAA2B,KAAK,SAAS;gBACzD,CAAC,CAAC,EAAE,2BAA2B,EAAE,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE;gBAC5E,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QACH,aAAa,GAAG,cAAc,CAAC,QAAQ,EAAE;YACvC,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI;SAC7C,CAAwD,CAAC;QAC1D,wBAAwB,GAAG,wBAAwB,IAAI,WAAW,CAAC;QACnE,iGAAiG;QACjG,0GAA0G;QAC1G,kBAAkB;QAClB,wBAAwB;YACtB,wBAAwB;gBACxB,iBAAiB,CAAC;oBAChB,MAAM,EAAE,WAAW;oBACnB,WAAW,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE;iBACtD,CAAC,CAAC;IACP,CAAC;IAED,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,yGAAyG;QACzG,wGAAwG;QACxG,qGAAqG;QACrG,mGAAmG;QACnG,MAAM,KAAK,GAAqB,EAAE,CAAC;QACnC,IAAI,wBAAwB,KAAK,SAAS,IAAI,wBAAwB,KAAK,SAAS,EAAE,CAAC;YACrF,MAAM,kBAAkB,GACtB,OAAO,CAAC,8BAA8B,IAAI,OAAO,CAAC,KAAK,EAAE,kBAAkB,CAAC;YAC9E,KAAK,CAAC,IAAI,CACR,IAAI,2BAA2B,CAAC;gBAC9B,QAAQ,EAAE,wBAAwB;gBAClC,QAAQ,EAAE,sBAAsB,CAAC,OAAO,CAAC,aAAa,IAAI,wBAAwB,CAAC;gBACnF,MAAM,EAAE,OAAO,CAAC,kBAAkB,IAAI,EAAE;gBACxC,UAAU,EAAE,OAAO,CAAC,sBAAsB,IAAI,YAAY;gBAC1D,gBAAgB,EAAE,iBAAiB;gBACnC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,EAAE;gBACtD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,EAAE;gBACxD,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACpE,CAAC,CACH,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACzC,KAAK,CAAC,IAAI,CACR,IAAI,sBAAsB,CAAC;gBACzB,+FAA+F;gBAC/F,0FAA0F;gBAC1F,QAAQ,EACN,OAAO,CAAC,yBAAyB,IAAI,OAAO,CAAC,yBAAyB,CAAC,MAAM,GAAG,CAAC;oBAC/E,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC;oBAChE,CAAC,CAAC,OAAO,CAAC,cAAc;gBAC5B,MAAM,EAAE,OAAO,CAAC,kBAAkB,IAAI,EAAE;gBACxC,UAAU,EAAE,OAAO,CAAC,sBAAsB,IAAI,YAAY;gBAC1D,gBAAgB,EAAE,iBAAiB;gBACnC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,EAAE;gBACtD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,EAAE;gBACxD,GAAG,CAAC,OAAO,CAAC,8BAA8B,KAAK,SAAS;oBACtD,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,8BAA8B,EAAE;oBAChE,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxE,CAAC,CACH,CAAC;QACJ,CAAC;QACD,IAAI;YACF,KAAK,CAAC,MAAM,KAAK,CAAC;gBAChB,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;oBAClB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBACV,CAAC,CAAC,IAAI,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,uFAAuF;IACvF,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CACb,yCAAyC,IAAI,mCAAmC;YAC9E,2FAA2F,CAC9F,CAAC;IACJ,CAAC;IACD,mFAAmF;IACnF,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,iBAAiB,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,QAAQ,GAAG,IAAI,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE;QAC3D,uBAAuB,EAAE,mCAAmC,CAC1D,0BAA0B,EAC1B,wBAAwB,CACzB;QACD,GAAG,CAAC,UAAU,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,GAAG,CAAC,UAAU,KAAK,SAAS;YAC1B,CAAC,CAAC;gBACE,wBAAwB,EAAE,UAAU;gBACpC,sBAAsB,EAAE,CAAC,UAAkB,EAAE,EAAE,CAC7C,sBAAsB,CAAC,SAAS,EAAE,UAAU,CAAC;gBAC/C,sBAAsB,EAAE,CAAC,UAA0B,EAAE,EAAE,CACrD,sBAAsB,CAAC,SAAS,EAAE,UAAU,CAAC;aAChD;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,MAAM,KAAK,SAAS;YACtB,CAAC,CAAC;gBACE,uBAAuB,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,CACnD,IAAI,wBAAwB,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;aACrE;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;IACH,wGAAwG;IACxG,yGAAyG;IACzG,0GAA0G;IAC1G,MAAM,SAAS,GAAG,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAElF,iGAAiG;IACjG,6CAA6C;IAC7C,MAAM,cAAc,GAA2B,MAAM;QACnD,CAAC,CAAC,KAAK,IAAI,EAAE;YACT,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBACpC,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACH,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC;IACrB,MAAM,cAAc,GAAG,GAAkB,EAAE,CACzC,qBAAqB,CAAC;QACpB,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC;QAC3D,GAAG,CAAC,uBAAuB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,uBAAuB,EAAE,CAAC;QAC7E,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC;QACjE,UAAU;QACV,kBAAkB;QAClB,GAAG,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC;QACrE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;KAC1D,CAAC,CAAC;IACL,IAAI,CAAC;QACH,MAAM,uCAAuC,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QAC1E,IAAI,yBAAyB,KAAK,SAAS,EAAE,CAAC;YAC5C,mBAAmB,GAAG,MAAM,yBAAyB,EAAE,CAAC;YACxD,0BAA0B,GAAG,mBAAmB,CAAC,cAAc,CAAC;YAChE,gCAAgC,GAAG,mBAAmB,CAAC,oBAAoB,CAAC;QAC9E,CAAC;QACD,IACE,MAAM,KAAK,SAAS;YACpB,mBAAmB,KAAK,SAAS;YACjC,OAAO,CAAC,aAAa,KAAK,SAAS;YACnC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EACvC,CAAC;YACD,iCAAiC,GAAG,MAAM,+CAA+C,CACvF,MAAM,CAAC,IAAI,EACX;gBACE,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,iBAAiB,EAAE,SAAS,CAAC,MAAM;gBACnC,cAAc,EAAE,mBAAmB,CAAC,cAAc;aACnD,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,KAAK,CAAC;IACd,CAAC;IACD,MAAM,cAAc,GAAmB;QACrC,GAAG,OAAO;QACV,cAAc;QACd,iBAAiB;QACjB,GAAG,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,8BAA8B,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3F,GAAG,CAAC,iCAAiC,KAAK,SAAS;YACjD,CAAC,CAAC,EAAE,iCAAiC,EAAE;YACvC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,0BAA0B,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,GAAG,CAAC,gCAAgC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gCAAgC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/F,GAAG,CAAC,kCAAkC,KAAK,SAAS;YAClD,CAAC,CAAC,EAAE,kCAAkC,EAAE;YACxC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,2CAA2C,KAAK,SAAS;YAC3D,CAAC,CAAC,EAAE,2CAA2C,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,mBAAmB,EAAE,QAAQ,KAAK,SAAS;YAC7C,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,oBAAoB,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC;QAC3D,WAAW;QACX,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,aAAa;QACb,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,qGAAqG;QACrG,sGAAsG;QACtG,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,IAAI,uBAAuB,EAAE;QACzE,iBAAiB;QACjB,cAAc;QACd,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,mBAAmB,EACjB,OAAO,CAAC,mBAAmB,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC/E,GAAG,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,8BAA8B,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3F,SAAS;QACT,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,GAAG,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS;YACtC,CAAC,CAAC,EAAE,0BAA0B,EAAE,OAAO,CAAC,cAAc,EAAE;YACxD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC;IACF,IAAI,IAAwB,CAAC;IAC7B,IAAI,CAAC;QACH,IAAI,GAAG,YAAY,CAAC,oBAAoB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;QACpE,MAAM,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,CAAC,CAAC;QACzD,mBAAmB,EAAE,KAAK,EAAE,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,IAAI,EAAE,SAAS;YAAE,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACxE,MAAM,cAAc,EAAE,CAAC;QACvB,MAAM,KAAK,CAAC;IACd,CAAC;IACD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,EAAiB,CAAC;IAC/C,OAAO;QACL,IAAI;QACJ,GAAG,EAAE,UAAU,IAAI,IAAI,IAAI,EAAE;QAC7B,IAAI;QACJ,QAAQ;QACR,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,KAAK,EAAE,KAAK,IAAI,EAAE;YAChB,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;YAC5B,MAAM,cAAc,EAAE,CAAC;QACzB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,IAAY;IAClC,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,WAAW,CAAC;AACxE,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,SAAgC,EAChC,UAAkB;IAElB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;IAC1E,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC;AACxD,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,SAAgC,EAChC,QAAwB;IAExB,IAAI,QAAQ,CAAC,GAAG,KAAK,MAAM,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;QACpC,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACxF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,SAAS,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAChG,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,QAAwB,EACxB,QAAgB,EAChB,kBAAqC;IAErC,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IACnE,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC3C,MAAM,MAAM,GACV,MAAM,CAAC,aAAa,KAAK,SAAS;QAChC,CAAC,CAAC,MAAM,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC;QAC1C,CAAC,CAAC,MAAM,QAAQ,CAAC,wBAAwB,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5E,MAAM,IAAI,GAAG,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;IACjD,IAAI,IAAI,EAAE,IAAI,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC9C,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,mBAAmB,CAC9D,UAAU,EACV,kBAAkB,CAAC,MAAM,CAAC,CAC3B,CAAC;IACF,OAAO,gCAAgC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAC3D,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,QAAwB,EACxB,QAAgB,EAChB,IAAY,EACZ,kBAAqC;IAErC,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IACnE,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC3C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,mBAAmB,CAC5D,QAAQ,EACR,kBAAkB,CAAC,MAAM,CAAC,CAC3B,CAAC;IACF,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;AACvB,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAgB,EAChB,kBAAqC;IAErC,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,CACL,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC;QAC5B,CAAC,CAAC,uBAAuB,CAAC,QAAQ,EAAE,kBAAkB,CAAC;QACvD,CAAC,CAAC,SAAS,CAAC,IAAI,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,CACzD,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAuB;IACpD,OAAO,CACL,OAAO,CAAC,gBAAgB,EAAE,kBAAkB;QAC5C,CAAC,OAAO,CAAC,gBAAgB,EAAE,gBAAgB,KAAK,SAAS;YACvD,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;YAC7C,CAAC,CAAC,EAAE,CAAC,CACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../src/serve.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@noodleseed/one",
3
- "version": "0.49.1",
3
+ "version": "0.51.0",
4
4
  "private": false,
5
5
  "description": "Noodle CLI by Noodle Seed — author, run, and deploy declarative MCP servers. Embedding the assistant in your own web app is @noodleseed/assistant.",
6
6
  "license": "Apache-2.0",