@substrat-run/contracts 0.154.0 → 0.155.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.
@@ -0,0 +1,59 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Connection landings (#2316): how a poll-only connector's data enters a vertical's scope, declared
4
+ * by the vertical that receives it.
5
+ *
6
+ * A poll-only connector (Fortnox, Planima) has nothing inside a scope to start its work, so it
7
+ * needs a BINDING: "sweep this connection into that scope, through this operation, holding this
8
+ * key". Before this declaration a binding came only from a person running `substrat connection
9
+ * bind`, and the key it needs from a vertical's own credential relay. A connection a company
10
+ * approved through a connect link or the dashboard's door held no key and had no binding, so
11
+ * nothing landed and nothing said so.
12
+ *
13
+ * The shape of the mechanism, so the pieces below read in place:
14
+ *
15
+ * - **The vertical declares the landing** — `connections` in its module manifest
16
+ * (`connectionLandingSpec`): the provider, the operation the connector invokes, and the key that
17
+ * operation checks. It is lifted into the permission registry, so it is rendered in the
18
+ * vertical's PERMISSIONS.md and hashed into its permission digest: the key a connection is
19
+ * given is a reviewed permission diff, and a version that widens it cannot be promoted
20
+ * unacknowledged.
21
+ * - **The platform seats and binds from the running version.** On each connector pass, every
22
+ * live connection of a declared provider in a tenant where the vertical is installed is granted
23
+ * the declared key on each primary, active install, and bound to it. Both steps happen only when
24
+ * missing or different, so a pass that finds them in place writes nothing. The bind is the
25
+ * connector's own, and it still refuses a connection that does not hold the key.
26
+ * - **Revocation is the connection's.** Revoking a connection tombstones its grants and deletes
27
+ * its bindings, and a revoked connection is never seated again.
28
+ */
29
+ /** The most option keys one landing may carry. */
30
+ export declare const CONNECTION_LANDING_OPTIONS_MAX = 16;
31
+ /**
32
+ * Provider-specific binding options (Planima's `organizationId`, `currency`, `window`,
33
+ * `horizonYears`), as JSON. Not typed per provider here: the contracts package names no connector,
34
+ * and the platform validates them with the provider's own schema before it binds. A declaration a
35
+ * provider refuses is reported on that connection's sweep row, never bound with a guess.
36
+ */
37
+ export declare const connectionLandingOptions: z.ZodRecord<z.ZodString, z.ZodUnknown>;
38
+ export type ConnectionLandingOptions = z.infer<typeof connectionLandingOptions>;
39
+ /**
40
+ * One declared landing — "a `provider` connection of this tenant lands through `operation`,
41
+ * holding `permission`" — as a module manifest's `connections` entry.
42
+ *
43
+ * `operation` is the full `module/operation` name the connector invokes. It is not checked against
44
+ * the module's own operations here: a vertical may land through an operation of an engine it
45
+ * composes, and the host's registry is what knows every name. `lint:permissions` reports an
46
+ * unknown one, and an unknown name lands nothing (the sweep reports the refusal).
47
+ *
48
+ * `permission` is what the connection is granted, and it must be a key some module declares and
49
+ * that is not reserved to a system principal: a connection acts for the external provider holding
50
+ * its token. The registry builder refuses both.
51
+ */
52
+ export declare const connectionLandingSpec: z.ZodObject<{
53
+ provider: z.ZodString;
54
+ operation: z.ZodString;
55
+ permission: z.core.$ZodBranded<z.ZodString, "PermissionKey", "out">;
56
+ options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
57
+ }, z.core.$strict>;
58
+ export type ConnectionLandingSpec = z.infer<typeof connectionLandingSpec>;
59
+ //# sourceMappingURL=connection-landing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-landing.d.ts","sourceRoot":"","sources":["../src/connection-landing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,kDAAkD;AAClD,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAEjD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,wCAIjC,CAAC;AACL,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAEhF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,qBAAqB;;;;;kBAOvB,CAAC;AACZ,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -0,0 +1,65 @@
1
+ import { z } from 'zod';
2
+ import { permissionKey } from './ids.js';
3
+ import { connectionProvider } from './connections.js';
4
+ /**
5
+ * Connection landings (#2316): how a poll-only connector's data enters a vertical's scope, declared
6
+ * by the vertical that receives it.
7
+ *
8
+ * A poll-only connector (Fortnox, Planima) has nothing inside a scope to start its work, so it
9
+ * needs a BINDING: "sweep this connection into that scope, through this operation, holding this
10
+ * key". Before this declaration a binding came only from a person running `substrat connection
11
+ * bind`, and the key it needs from a vertical's own credential relay. A connection a company
12
+ * approved through a connect link or the dashboard's door held no key and had no binding, so
13
+ * nothing landed and nothing said so.
14
+ *
15
+ * The shape of the mechanism, so the pieces below read in place:
16
+ *
17
+ * - **The vertical declares the landing** — `connections` in its module manifest
18
+ * (`connectionLandingSpec`): the provider, the operation the connector invokes, and the key that
19
+ * operation checks. It is lifted into the permission registry, so it is rendered in the
20
+ * vertical's PERMISSIONS.md and hashed into its permission digest: the key a connection is
21
+ * given is a reviewed permission diff, and a version that widens it cannot be promoted
22
+ * unacknowledged.
23
+ * - **The platform seats and binds from the running version.** On each connector pass, every
24
+ * live connection of a declared provider in a tenant where the vertical is installed is granted
25
+ * the declared key on each primary, active install, and bound to it. Both steps happen only when
26
+ * missing or different, so a pass that finds them in place writes nothing. The bind is the
27
+ * connector's own, and it still refuses a connection that does not hold the key.
28
+ * - **Revocation is the connection's.** Revoking a connection tombstones its grants and deletes
29
+ * its bindings, and a revoked connection is never seated again.
30
+ */
31
+ /** The most option keys one landing may carry. */
32
+ export const CONNECTION_LANDING_OPTIONS_MAX = 16;
33
+ /**
34
+ * Provider-specific binding options (Planima's `organizationId`, `currency`, `window`,
35
+ * `horizonYears`), as JSON. Not typed per provider here: the contracts package names no connector,
36
+ * and the platform validates them with the provider's own schema before it binds. A declaration a
37
+ * provider refuses is reported on that connection's sweep row, never bound with a guess.
38
+ */
39
+ export const connectionLandingOptions = z
40
+ .record(z.string().min(1), z.unknown())
41
+ .refine((o) => Object.keys(o).length <= CONNECTION_LANDING_OPTIONS_MAX, {
42
+ message: `a landing carries at most ${CONNECTION_LANDING_OPTIONS_MAX} options`,
43
+ });
44
+ /**
45
+ * One declared landing — "a `provider` connection of this tenant lands through `operation`,
46
+ * holding `permission`" — as a module manifest's `connections` entry.
47
+ *
48
+ * `operation` is the full `module/operation` name the connector invokes. It is not checked against
49
+ * the module's own operations here: a vertical may land through an operation of an engine it
50
+ * composes, and the host's registry is what knows every name. `lint:permissions` reports an
51
+ * unknown one, and an unknown name lands nothing (the sweep reports the refusal).
52
+ *
53
+ * `permission` is what the connection is granted, and it must be a key some module declares and
54
+ * that is not reserved to a system principal: a connection acts for the external provider holding
55
+ * its token. The registry builder refuses both.
56
+ */
57
+ export const connectionLandingSpec = z
58
+ .object({
59
+ provider: connectionProvider,
60
+ operation: z.string().regex(/^[a-zA-Z0-9_-]+\/[a-zA-Z0-9_-]+$/, 'operation is `module/operation`'),
61
+ permission: permissionKey,
62
+ options: connectionLandingOptions.optional(),
63
+ })
64
+ .strict();
65
+ //# sourceMappingURL=connection-landing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-landing.js","sourceRoot":"","sources":["../src/connection-landing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,kDAAkD;AAClD,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;KACtC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,8BAA8B,EAAE;IACtE,OAAO,EAAE,6BAA6B,8BAA8B,UAAU;CAC/E,CAAC,CAAC;AAGL;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACnC,MAAM,CAAC;IACN,QAAQ,EAAE,kBAAkB;IAC5B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,kCAAkC,EAAE,iCAAiC,CAAC;IAClG,UAAU,EAAE,aAAa;IACzB,OAAO,EAAE,wBAAwB,CAAC,QAAQ,EAAE;CAC7C,CAAC;KACD,MAAM,EAAE,CAAC"}
package/dist/deploy.d.ts CHANGED
@@ -721,6 +721,24 @@ export type ManifestExports = {
721
721
  reason: string;
722
722
  };
723
723
  export declare function exportsOfManifestJson(manifestJson: string | null | undefined): ManifestExports;
724
+ /**
725
+ * What a STORED manifest says about connection landings (#2316), in `importsOfManifestJson`'s three
726
+ * answers. The connector pass reads it for the version each install runs: a `landings` row is what
727
+ * the platform grants a connection of that provider and binds it with.
728
+ *
729
+ * `unreadable` is never acted on — a pass grants nothing from a declaration it cannot read — and
730
+ * it is reported on the connection's sweep row, so a broken manifest is not silent.
731
+ */
732
+ export type ManifestConnectionLandings = {
733
+ kind: 'none';
734
+ } | {
735
+ kind: 'landings';
736
+ rows: Omit<PermissionRegistryConnection, 'declaredBy'>[];
737
+ } | {
738
+ kind: 'unreadable';
739
+ reason: string;
740
+ };
741
+ export declare function connectionLandingsOfManifestJson(manifestJson: string | null | undefined): ManifestConnectionLandings;
724
742
  /**
725
743
  * #2178: the binding-shape gate over two STORED manifests — the version that runs now and the one
726
744
  * that would run instead — refused `precondition_failed` with {@link bindingShapeRefusal} when the
@@ -896,6 +914,20 @@ export declare const permissionRegistryImport: z.ZodObject<{
896
914
  declaredBy: z.ZodArray<z.core.$ZodBranded<z.ZodString, "ModuleId", "out">>;
897
915
  }, z.core.$strip>;
898
916
  export type PermissionRegistryImport = z.infer<typeof permissionRegistryImport>;
917
+ /**
918
+ * One provider whose connections land in this vertical (#2316): the operation the connector
919
+ * invokes and the key a connection is granted for it. A row here is authority handed to whoever
920
+ * holds the provider token, so it belongs in the same artifact, and the same digest, as the keys a
921
+ * person is given.
922
+ */
923
+ export declare const permissionRegistryConnection: z.ZodObject<{
924
+ provider: z.ZodString;
925
+ operation: z.ZodString;
926
+ permission: z.core.$ZodBranded<z.ZodString, "PermissionKey", "out">;
927
+ options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
928
+ declaredBy: z.ZodArray<z.core.$ZodBranded<z.ZodString, "ModuleId", "out">>;
929
+ }, z.core.$strip>;
930
+ export type PermissionRegistryConnection = z.infer<typeof permissionRegistryConnection>;
899
931
  export declare const permissionRegistry: z.ZodObject<{
900
932
  permissions: z.ZodArray<z.ZodObject<{
901
933
  key: z.core.$ZodBranded<z.ZodString, "PermissionKey", "out">;
@@ -938,6 +970,13 @@ export declare const permissionRegistry: z.ZodObject<{
938
970
  schemaVersion: z.ZodNumber;
939
971
  declaredBy: z.ZodArray<z.core.$ZodBranded<z.ZodString, "ModuleId", "out">>;
940
972
  }, z.core.$strip>>>;
973
+ connections: z.ZodOptional<z.ZodArray<z.ZodObject<{
974
+ provider: z.ZodString;
975
+ operation: z.ZodString;
976
+ permission: z.core.$ZodBranded<z.ZodString, "PermissionKey", "out">;
977
+ options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
978
+ declaredBy: z.ZodArray<z.core.$ZodBranded<z.ZodString, "ModuleId", "out">>;
979
+ }, z.core.$strip>>>;
941
980
  }, z.core.$strip>;
942
981
  export type PermissionRegistry = z.infer<typeof permissionRegistry>;
943
982
  /**
@@ -974,6 +1013,13 @@ export declare const pushedPermissionRegistry: z.ZodObject<{
974
1013
  schemaVersion: z.ZodNumber;
975
1014
  declaredBy: z.ZodArray<z.core.$ZodBranded<z.ZodString, "ModuleId", "out">>;
976
1015
  }, z.core.$strip>>>;
1016
+ connections: z.ZodOptional<z.ZodArray<z.ZodObject<{
1017
+ provider: z.ZodString;
1018
+ operation: z.ZodString;
1019
+ permission: z.core.$ZodBranded<z.ZodString, "PermissionKey", "out">;
1020
+ options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1021
+ declaredBy: z.ZodArray<z.core.$ZodBranded<z.ZodString, "ModuleId", "out">>;
1022
+ }, z.core.$strip>>>;
977
1023
  entityGrants: z.ZodDefault<z.ZodArray<z.ZodObject<{
978
1024
  permissions: z.ZodArray<z.core.$ZodBranded<z.ZodString, "PermissionKey", "out">>;
979
1025
  bootstrap: z.ZodOptional<z.ZodLiteral<true>>;
@@ -1478,6 +1524,13 @@ export declare const deployManifest: z.ZodObject<{
1478
1524
  schemaVersion: z.ZodNumber;
1479
1525
  declaredBy: z.ZodArray<z.core.$ZodBranded<z.ZodString, "ModuleId", "out">>;
1480
1526
  }, z.core.$strip>>>;
1527
+ connections: z.ZodOptional<z.ZodArray<z.ZodObject<{
1528
+ provider: z.ZodString;
1529
+ operation: z.ZodString;
1530
+ permission: z.core.$ZodBranded<z.ZodString, "PermissionKey", "out">;
1531
+ options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1532
+ declaredBy: z.ZodArray<z.core.$ZodBranded<z.ZodString, "ModuleId", "out">>;
1533
+ }, z.core.$strip>>>;
1481
1534
  entityGrants: z.ZodDefault<z.ZodArray<z.ZodObject<{
1482
1535
  permissions: z.ZodArray<z.core.$ZodBranded<z.ZodString, "PermissionKey", "out">>;
1483
1536
  bootstrap: z.ZodOptional<z.ZodLiteral<true>>;
@@ -1709,6 +1762,13 @@ export declare const storedDeployManifest: z.ZodObject<{
1709
1762
  schemaVersion: z.ZodNumber;
1710
1763
  declaredBy: z.ZodArray<z.core.$ZodBranded<z.ZodString, "ModuleId", "out">>;
1711
1764
  }, z.core.$strip>>>;
1765
+ connections: z.ZodOptional<z.ZodArray<z.ZodObject<{
1766
+ provider: z.ZodString;
1767
+ operation: z.ZodString;
1768
+ permission: z.core.$ZodBranded<z.ZodString, "PermissionKey", "out">;
1769
+ options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1770
+ declaredBy: z.ZodArray<z.core.$ZodBranded<z.ZodString, "ModuleId", "out">>;
1771
+ }, z.core.$strip>>>;
1712
1772
  }, z.core.$strip>>;
1713
1773
  platformSweeper: z.ZodOptional<z.ZodBoolean>;
1714
1774
  migrations: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"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"}
package/dist/deploy.js CHANGED
@@ -11,6 +11,8 @@ import { substratError } from './errors.js';
11
11
  import { blankReason } from './review-text.js';
12
12
  import { SCOPE_STORE_CANARY, STORE_DRIVER_ID } from './script-names.js';
13
13
  import { bindingShapeBreaks, bindingShapeRefusal } from './registry-diff.js';
14
+ import { connectionLandingOptions } from './connection-landing.js';
15
+ import { connectionProvider } from './connections.js';
14
16
  import { ownerGrantSets, reservedKeyLine, reservedKeyOffences, reservedKeysOf, } from './reserved-keys.js';
15
17
  // The deploy manifest is the JSON part a `substrat push` sends alongside the
16
18
  // module files (self-serve-deploy.md). It lives here — not in the transport
@@ -908,6 +910,17 @@ export function exportsOfManifestJson(manifestJson) {
908
910
  return { kind: 'unreadable', reason: read.unreadable };
909
911
  return { kind: 'exports', rows: read.rows.map((r) => ({ type: r.type, schemaVersion: r.schemaVersion })) };
910
912
  }
913
+ export function connectionLandingsOfManifestJson(manifestJson) {
914
+ const read = registryRowsOfManifestJson(manifestJson, 'connections', permissionRegistryConnection);
915
+ if (read === null)
916
+ return { kind: 'none' };
917
+ if ('unreadable' in read)
918
+ return { kind: 'unreadable', reason: read.unreadable };
919
+ return {
920
+ kind: 'landings',
921
+ rows: read.rows.map((r) => ({ provider: r.provider, operation: r.operation, permission: r.permission, ...(r.options ? { options: r.options } : {}) })),
922
+ };
923
+ }
911
924
  /**
912
925
  * #2178: the binding-shape gate over two STORED manifests — the version that runs now and the one
913
926
  * that would run instead — refused `precondition_failed` with {@link bindingShapeRefusal} when the
@@ -1263,6 +1276,19 @@ export const permissionRegistryImport = z.object({
1263
1276
  schemaVersion: z.number().int().positive(),
1264
1277
  declaredBy: z.array(moduleId).min(1),
1265
1278
  });
1279
+ /**
1280
+ * One provider whose connections land in this vertical (#2316): the operation the connector
1281
+ * invokes and the key a connection is granted for it. A row here is authority handed to whoever
1282
+ * holds the provider token, so it belongs in the same artifact, and the same digest, as the keys a
1283
+ * person is given.
1284
+ */
1285
+ export const permissionRegistryConnection = z.object({
1286
+ provider: connectionProvider,
1287
+ operation: z.string().regex(/^[a-zA-Z0-9_-]+\/[a-zA-Z0-9_-]+$/),
1288
+ permission: permissionKey,
1289
+ options: connectionLandingOptions.optional(),
1290
+ declaredBy: z.array(moduleId).min(1),
1291
+ });
1266
1292
  export const permissionRegistry = z.object({
1267
1293
  permissions: z.array(permissionRegistryEntry),
1268
1294
  roles: z.array(roleDefinition),
@@ -1275,6 +1301,8 @@ export const permissionRegistry = z.object({
1275
1301
  // or what enters it, cannot be promoted unacknowledged.
1276
1302
  exports: z.array(permissionRegistryExport).optional(),
1277
1303
  imports: z.array(permissionRegistryImport).optional(),
1304
+ // #2316: connection landings. Optional and omitted when none, for the digest reason above.
1305
+ connections: z.array(permissionRegistryConnection).optional(),
1278
1306
  });
1279
1307
  /**
1280
1308
  * The registry as a PUSH carries it (#1869): an `entityGrants` shape naming a kernel namespace
@@ -1297,6 +1325,20 @@ export const pushedPermissionRegistry = permissionRegistry
1297
1325
  .superRefine((registry, ctx) => {
1298
1326
  for (const message of registryReservedKeyProblems(registry))
1299
1327
  ctx.addIssue({ code: 'custom', path: [], message });
1328
+ // #2316: a landing's key is one the registry declares and does not reserve, and one landing per provider.
1329
+ const keys = new Map(registry.permissions.map((p) => [p.key, p]));
1330
+ const providers = new Set();
1331
+ for (const l of registry.connections ?? []) {
1332
+ const where = `connections '${l.provider}'`;
1333
+ const key = keys.get(l.permission);
1334
+ if (!key)
1335
+ ctx.addIssue({ code: 'custom', path: ['connections'], message: `${where}: lands holding ${l.permission}, which the registry does not declare` });
1336
+ else if (key.holder === 'system')
1337
+ ctx.addIssue({ code: 'custom', path: ['connections'], message: `${where}: lands holding ${l.permission}, which is reserved to a system principal` });
1338
+ if (providers.has(l.provider))
1339
+ ctx.addIssue({ code: 'custom', path: ['connections'], message: `${where}: declared more than once` });
1340
+ providers.add(l.provider);
1341
+ }
1300
1342
  });
1301
1343
  /**
1302
1344
  * #2430: a registry's reserved-key offences, one line each — a person's role, grant shape or
@@ -1458,14 +1500,52 @@ export function buildPermissionRegistry(input) {
1458
1500
  }
1459
1501
  const exports = [...exportRows.values()].sort((a, b) => cmp(a.type, b.type));
1460
1502
  const imports = [...importRows.values()].sort((a, b) => cmp(a.from, b.from) || cmp(a.type, b.type));
1503
+ const connections = connectionRowsOf(input.modules, new Set(declaredBy.keys()), reserved);
1461
1504
  return {
1462
1505
  permissions,
1463
1506
  roles,
1464
1507
  entityGrants,
1465
1508
  ...(exports.length ? { exports } : {}),
1466
1509
  ...(imports.length ? { imports } : {}),
1510
+ ...(connections.length ? { connections } : {}),
1467
1511
  };
1468
1512
  }
1513
+ /**
1514
+ * #2316: the modules' connection landings as registry rows, one per provider. Two modules stating
1515
+ * the same landing collapse into one row naming both; two stating DIFFERENT landings for one
1516
+ * provider are refused, since a connection binds one operation per scope and the platform would
1517
+ * otherwise pick one. Refused as well: a key no module declares (the grant could never be
1518
+ * checked) and a key reserved to a system principal (a connection acts for whoever holds the
1519
+ * provider's token, #2430).
1520
+ */
1521
+ function connectionRowsOf(modules, declared, reserved) {
1522
+ const rows = new Map();
1523
+ const problems = [];
1524
+ const same = (a, b) => a.operation === b.operation && a.permission === b.permission && JSON.stringify(a.options ?? {}) === JSON.stringify(b.options ?? {});
1525
+ // `?? []` although parsed manifests carry the field: the CLI imports a vertical's modules as plain JS.
1526
+ for (const m of modules) {
1527
+ for (const l of m.manifest.connections ?? []) {
1528
+ const where = `connections '${l.provider}' (${m.manifest.id})`;
1529
+ if (!declared.has(l.permission))
1530
+ problems.push(`${where}: lands holding ${l.permission}, which no module declares`);
1531
+ if (reserved.has(l.permission))
1532
+ problems.push(`${where}: lands holding ${l.permission}, which is reserved to a system principal`);
1533
+ const row = rows.get(l.provider);
1534
+ if (!row) {
1535
+ rows.set(l.provider, { provider: l.provider, operation: l.operation, permission: l.permission, ...(l.options ? { options: l.options } : {}), declaredBy: [m.manifest.id] });
1536
+ }
1537
+ else if (same(row, l)) {
1538
+ row.declaredBy = [...new Set([...row.declaredBy, m.manifest.id])].sort((a, b) => a.localeCompare(b));
1539
+ }
1540
+ else {
1541
+ problems.push(`${where}: declares a different landing for '${l.provider}' than ${row.declaredBy.join(', ')}`);
1542
+ }
1543
+ }
1544
+ }
1545
+ if (problems.length > 0)
1546
+ throw new Error(`buildPermissionRegistry: ${problems.join('; ')}`);
1547
+ return [...rows.values()].sort((a, b) => a.provider.localeCompare(b.provider));
1548
+ }
1469
1549
  /**
1470
1550
  * One static file in the shipped manifest (#340). The trio Cloudflare's asset store keys
1471
1551
  * on — content-addressed `hash`, `size` — plus the `contentType` the platform attaches at