@substrat-run/kernel 0.139.0 → 0.141.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 (148) hide show
  1. package/dist/admin-log-ddl.d.ts +21 -0
  2. package/dist/admin-log-ddl.d.ts.map +1 -0
  3. package/dist/admin-log-ddl.js +32 -0
  4. package/dist/admin-log-ddl.js.map +1 -0
  5. package/dist/attachment-extractor.d.ts +12 -1
  6. package/dist/attachment-extractor.d.ts.map +1 -1
  7. package/dist/attachment-extractor.js +10 -5
  8. package/dist/attachment-extractor.js.map +1 -1
  9. package/dist/audit-outcome.d.ts +149 -0
  10. package/dist/audit-outcome.d.ts.map +1 -0
  11. package/dist/audit-outcome.js +233 -0
  12. package/dist/audit-outcome.js.map +1 -0
  13. package/dist/capability.d.ts +5 -2
  14. package/dist/capability.d.ts.map +1 -1
  15. package/dist/capability.js +17 -8
  16. package/dist/capability.js.map +1 -1
  17. package/dist/connect-links.d.ts +91 -0
  18. package/dist/connect-links.d.ts.map +1 -0
  19. package/dist/connect-links.js +189 -0
  20. package/dist/connect-links.js.map +1 -0
  21. package/dist/connect-state.d.ts +12 -3
  22. package/dist/connect-state.d.ts.map +1 -1
  23. package/dist/connect-state.js +8 -3
  24. package/dist/connect-state.js.map +1 -1
  25. package/dist/derived-object.d.ts +14 -0
  26. package/dist/derived-object.d.ts.map +1 -0
  27. package/dist/derived-object.js +2 -0
  28. package/dist/derived-object.js.map +1 -0
  29. package/dist/derived-objects.d.ts +108 -0
  30. package/dist/derived-objects.d.ts.map +1 -0
  31. package/dist/derived-objects.js +199 -0
  32. package/dist/derived-objects.js.map +1 -0
  33. package/dist/email-intent.d.ts +56 -0
  34. package/dist/email-intent.d.ts.map +1 -0
  35. package/dist/email-intent.js +71 -0
  36. package/dist/email-intent.js.map +1 -0
  37. package/dist/entity-edges.d.ts +6 -1
  38. package/dist/entity-edges.d.ts.map +1 -1
  39. package/dist/entity-edges.js +13 -0
  40. package/dist/entity-edges.js.map +1 -1
  41. package/dist/entity-grant-shape.d.ts +94 -0
  42. package/dist/entity-grant-shape.d.ts.map +1 -0
  43. package/dist/entity-grant-shape.js +329 -0
  44. package/dist/entity-grant-shape.js.map +1 -0
  45. package/dist/entity-grant.d.ts +45 -0
  46. package/dist/entity-grant.d.ts.map +1 -0
  47. package/dist/entity-grant.js +71 -0
  48. package/dist/entity-grant.js.map +1 -0
  49. package/dist/entity-state-reads.d.ts +4 -7
  50. package/dist/entity-state-reads.d.ts.map +1 -1
  51. package/dist/entity-state-reads.js +13 -57
  52. package/dist/entity-state-reads.js.map +1 -1
  53. package/dist/entity-state.d.ts +37 -10
  54. package/dist/entity-state.d.ts.map +1 -1
  55. package/dist/entity-state.js +80 -69
  56. package/dist/entity-state.js.map +1 -1
  57. package/dist/entity-trash.d.ts +245 -0
  58. package/dist/entity-trash.d.ts.map +1 -0
  59. package/dist/entity-trash.js +380 -0
  60. package/dist/entity-trash.js.map +1 -0
  61. package/dist/grant-scoped-read.d.ts +41 -0
  62. package/dist/grant-scoped-read.d.ts.map +1 -0
  63. package/dist/grant-scoped-read.js +100 -0
  64. package/dist/grant-scoped-read.js.map +1 -0
  65. package/dist/index.d.ts +35 -8
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +22 -5
  68. package/dist/index.js.map +1 -1
  69. package/dist/kernel-outbox.d.ts +14 -0
  70. package/dist/kernel-outbox.d.ts.map +1 -0
  71. package/dist/kernel-outbox.js +37 -0
  72. package/dist/kernel-outbox.js.map +1 -0
  73. package/dist/list-index.d.ts +11 -2
  74. package/dist/list-index.d.ts.map +1 -1
  75. package/dist/list-index.js +29 -21
  76. package/dist/list-index.js.map +1 -1
  77. package/dist/mail-sender.d.ts +78 -0
  78. package/dist/mail-sender.d.ts.map +1 -0
  79. package/dist/mail-sender.js +2 -0
  80. package/dist/mail-sender.js.map +1 -0
  81. package/dist/membership-executor.d.ts +0 -52
  82. package/dist/membership-executor.d.ts.map +1 -1
  83. package/dist/membership-executor.js +19 -59
  84. package/dist/membership-executor.js.map +1 -1
  85. package/dist/migration-digest.d.ts +161 -0
  86. package/dist/migration-digest.d.ts.map +1 -0
  87. package/dist/migration-digest.js +237 -0
  88. package/dist/migration-digest.js.map +1 -0
  89. package/dist/module-erasure.d.ts +156 -0
  90. package/dist/module-erasure.d.ts.map +1 -0
  91. package/dist/module-erasure.js +440 -0
  92. package/dist/module-erasure.js.map +1 -0
  93. package/dist/peer.d.ts +9 -1
  94. package/dist/peer.d.ts.map +1 -1
  95. package/dist/peer.js +29 -0
  96. package/dist/peer.js.map +1 -1
  97. package/dist/permission-checker.d.ts +6 -0
  98. package/dist/permission-checker.d.ts.map +1 -1
  99. package/dist/permission-checker.js.map +1 -1
  100. package/dist/permission-eval.d.ts +10 -1
  101. package/dist/permission-eval.d.ts.map +1 -1
  102. package/dist/permission-eval.js +51 -2
  103. package/dist/permission-eval.js.map +1 -1
  104. package/dist/platform-sweep.d.ts +1 -1
  105. package/dist/platform-sweep.d.ts.map +1 -1
  106. package/dist/platform-sweep.js +5 -0
  107. package/dist/platform-sweep.js.map +1 -1
  108. package/dist/scope-copy-ledger.d.ts +79 -0
  109. package/dist/scope-copy-ledger.d.ts.map +1 -0
  110. package/dist/scope-copy-ledger.js +82 -0
  111. package/dist/scope-copy-ledger.js.map +1 -0
  112. package/dist/scope-host.d.ts +402 -25
  113. package/dist/scope-host.d.ts.map +1 -1
  114. package/dist/scope-host.js +74 -5
  115. package/dist/scope-host.js.map +1 -1
  116. package/dist/search-index.d.ts +8 -0
  117. package/dist/search-index.d.ts.map +1 -1
  118. package/dist/search-index.js +51 -21
  119. package/dist/search-index.js.map +1 -1
  120. package/dist/spine-guard.d.ts +7 -0
  121. package/dist/spine-guard.d.ts.map +1 -1
  122. package/dist/spine-guard.js +54 -6
  123. package/dist/spine-guard.js.map +1 -1
  124. package/dist/spine-restore.d.ts.map +1 -1
  125. package/dist/spine-restore.js +5 -0
  126. package/dist/spine-restore.js.map +1 -1
  127. package/dist/sql-statements.d.ts +71 -0
  128. package/dist/sql-statements.d.ts.map +1 -0
  129. package/dist/sql-statements.js +191 -0
  130. package/dist/sql-statements.js.map +1 -0
  131. package/dist/subject-redaction.d.ts +9 -1
  132. package/dist/subject-redaction.d.ts.map +1 -1
  133. package/dist/subject-redaction.js.map +1 -1
  134. package/dist/system-switch-record.d.ts +3 -0
  135. package/dist/system-switch-record.d.ts.map +1 -1
  136. package/dist/system-switch-record.js +2 -0
  137. package/dist/system-switch-record.js.map +1 -1
  138. package/dist/table-ownership.d.ts +103 -0
  139. package/dist/table-ownership.d.ts.map +1 -0
  140. package/dist/table-ownership.js +285 -0
  141. package/dist/table-ownership.js.map +1 -0
  142. package/dist/timeline.d.ts +4 -4
  143. package/dist/timeline.js +4 -4
  144. package/dist/visible-continuation.d.ts +38 -0
  145. package/dist/visible-continuation.d.ts.map +1 -0
  146. package/dist/visible-continuation.js +162 -0
  147. package/dist/visible-continuation.js.map +1 -0
  148. package/package.json +4 -4
@@ -44,6 +44,7 @@
44
44
  import { SubstratError } from '@substrat-run/contracts';
45
45
  import type { EntityStateDeclaration, EntityStateName } from '@substrat-run/contracts';
46
46
  import { type StateColumns } from './entity-state.js';
47
+ import type { DerivedObject } from './derived-object.js';
47
48
  import type { SqlMigration } from './scope-host.js';
48
49
  /**
49
50
  * One paged read's kernel-composed half, as the kernel needs it.
@@ -140,6 +141,8 @@ export declare function listIndexColumns(plan: ListIndexPlan): {
140
141
  * old ones. An index is derived data; nothing is lost by dropping it.
141
142
  */
142
143
  export declare function listIndexDdl(plan: ListIndexPlan): string;
144
+ /** The plan's indexes, each with its CREATE statement — what `listIndexDdl` runs. */
145
+ export declare function listIndexObjects(plan: ListIndexPlan): DerivedObject[];
143
146
  /**
144
147
  * The migrations that provision a module's declared list indexes, journaled like
145
148
  * any other so a scope applies them once and a changed declaration re-applies.
@@ -154,6 +157,12 @@ export declare function listIndexDdl(plan: ListIndexPlan): string;
154
157
  * the table exist by the time `CREATE INDEX` names it.
155
158
  */
156
159
  export declare function listIndexMigrations(moduleId: string, lists: readonly ListDeclaration[] | undefined, entityStates?: readonly EntityStateDeclaration[]): SqlMigration[];
160
+ /**
161
+ * One plan's migration version. The views are part of the declaration the DDL depends on
162
+ * (#119): declaring a trash makes every index partial, so the version moves and the indexes
163
+ * are rebuilt.
164
+ */
165
+ export declare const listIndexVersion: (plan: ListIndexPlan) => string;
157
166
  /**
158
167
  * Index the plans by entity type for a whole scope, refusing an ambiguity — the
159
168
  * same refusal `searchPlansByEntityType` makes, because `ctx.page('customer', …)`
@@ -224,6 +233,8 @@ export declare class CursorMismatch extends SubstratError {
224
233
  export declare function cursorOf(row: Record<string, unknown>, sortColumn: string, idColumn: string, order: 'asc' | 'desc',
225
234
  /** The walk's view (#119). `active`, or unset, is left out of the envelope. */
226
235
  view?: EntityStateName): string;
236
+ /** Migration gate for filtered walks: their old input was a plain ctx.page cursor. */
237
+ export declare function isPlainPageCursor(cursor: string): boolean;
227
238
  /**
228
239
  * Compose the page query and its count.
229
240
  *
@@ -235,6 +246,4 @@ view?: EntityStateName): string;
235
246
  * current page.
236
247
  */
237
248
  export declare function listQuery(plan: ListIndexPlan, params: ListQueryParams): ComposedListQuery;
238
- /** The derived list indexes on each stateful table (#119), by table — what `assertEntityStateIntact` checks. */
239
- export declare function stateListIndexNames(plans: Iterable<ListIndexPlan>): Map<string, string[]>;
240
249
  //# sourceMappingURL=list-index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-index.d.ts","sourceRoot":"","sources":["../src/list-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list-index.d.ts","sourceRoot":"","sources":["../src/list-index.ts"],"names":[],"mappings":"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"}
@@ -207,13 +207,18 @@ export function listIndexColumns(plan) {
207
207
  * old ones. An index is derived data; nothing is lost by dropping it.
208
208
  */
209
209
  export function listIndexDdl(plan) {
210
- const lines = [];
211
- for (const idx of listIndexColumns(plan)) {
212
- lines.push(`DROP INDEX IF EXISTS ${idx.name};`);
213
- lines.push(`CREATE INDEX ${idx.name} ON ${plan.table} (${idx.columns.join(', ')})` +
214
- `${idx.where ? ` WHERE ${idx.where}` : ''};`);
215
- }
216
- return lines.join('\n');
210
+ return listIndexObjects(plan)
211
+ .flatMap((idx) => [`DROP INDEX IF EXISTS ${idx.name};`, `${idx.sql};`])
212
+ .join('\n');
213
+ }
214
+ /** The plan's indexes, each with its CREATE statement — what `listIndexDdl` runs. */
215
+ export function listIndexObjects(plan) {
216
+ return listIndexColumns(plan).map((idx) => ({
217
+ name: idx.name,
218
+ type: 'index',
219
+ table: plan.table,
220
+ sql: `CREATE INDEX ${idx.name} ON ${plan.table} (${idx.columns.join(', ')})${idx.where ? ` WHERE ${idx.where}` : ''}`,
221
+ }));
217
222
  }
218
223
  /**
219
224
  * The migrations that provision a module's declared list indexes, journaled like
@@ -230,13 +235,17 @@ export function listIndexDdl(plan) {
230
235
  */
231
236
  export function listIndexMigrations(moduleId, lists, entityStates) {
232
237
  return listIndexPlans(moduleId, lists, entityStates).map((plan) => ({
233
- // The views are part of the declaration the DDL depends on (#119): declaring a trash
234
- // makes every index partial, so the version moves and the indexes are rebuilt.
235
- version: `list/${plan.entityType}:${plan.sortable.join('+')}:${plan.filterable.join('+')}` +
236
- (plan.states ? `:${viewsOf(plan.states).join('+')}` : ''),
238
+ version: listIndexVersion(plan),
237
239
  sql: listIndexDdl(plan),
238
240
  }));
239
241
  }
242
+ /**
243
+ * One plan's migration version. The views are part of the declaration the DDL depends on
244
+ * (#119): declaring a trash makes every index partial, so the version moves and the indexes
245
+ * are rebuilt.
246
+ */
247
+ export const listIndexVersion = (plan) => `list/${plan.entityType}:${plan.sortable.join('+')}:${plan.filterable.join('+')}` +
248
+ (plan.states ? `:${viewsOf(plan.states).join('+')}` : '');
240
249
  /**
241
250
  * Index the plans by entity type for a whole scope, refusing an ambiguity — the
242
251
  * same refusal `searchPlansByEntityType` makes, because `ctx.page('customer', …)`
@@ -339,6 +348,15 @@ function envelopeOf(cursor) {
339
348
  return undefined;
340
349
  }
341
350
  }
351
+ /** Migration gate for filtered walks: their old input was a plain ctx.page cursor. */
352
+ export function isPlainPageCursor(cursor) {
353
+ if (envelopeOf(cursor))
354
+ return true;
355
+ if (ULID_PATTERN.test(cursor))
356
+ return true;
357
+ const at = cursor.lastIndexOf('|');
358
+ return at >= 0 && ULID_PATTERN.test(cursor.slice(at + 1));
359
+ }
342
360
  /**
343
361
  * A pre-#2001 cursor, recognised only by its exact old shape: `<value>|<id>` with the
344
362
  * id a ULID, or — for a walk sorted by the id itself — the bare ULID. Split on the LAST
@@ -487,14 +505,4 @@ export function listQuery(plan, params) {
487
505
  view: params.view ?? 'active',
488
506
  };
489
507
  }
490
- /** The derived list indexes on each stateful table (#119), by table — what `assertEntityStateIntact` checks. */
491
- export function stateListIndexNames(plans) {
492
- const out = new Map();
493
- for (const plan of plans) {
494
- if (!plan.states)
495
- continue;
496
- out.set(plan.table, [...(out.get(plan.table) ?? []), ...listIndexColumns(plan).map((i) => i.name)]);
497
- }
498
- return out;
499
- }
500
508
  //# sourceMappingURL=list-index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-index.js","sourceRoot":"","sources":["../src/list-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list-index.js","sourceRoot":"","sources":["../src/list-index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ import type { Connection } from '@substrat-run/contracts';
2
+ import type { ScopeHost } from './scope-host.js';
3
+ /**
4
+ * A connection that can send mail as an address the tenant owns (#2098) — a tenant's own
5
+ * mailbox behind the platform's email relay.
6
+ *
7
+ * A vertical says what to send and from which address; the platform decides who sends it.
8
+ * With no `from` the relay sends as the platform's own address, as it always has. With one,
9
+ * it looks for a live connection of the tenant's whose sender says it may send as that
10
+ * address, and hands the message to it. So Microsoft 365, Google Workspace or a tenant's own
11
+ * Resend account is a connector implementing this, and a vertical never branches on which.
12
+ *
13
+ * **Shaped like a connection inspector, not a dispatch.** The relay runs top-level on the
14
+ * control plane, not inside a delivery for a scope, so the sender is handed the host and the
15
+ * connection's row and opens its own credential — the same way `probe(host, row)` does —
16
+ * rather than being handed a connection the relay opened for it.
17
+ */
18
+ export interface MailSender {
19
+ /**
20
+ * The addresses this connection may send as. Compared case-insensitively by the relay.
21
+ *
22
+ * Asked on every send that names a `from`, so it should answer from what the connection
23
+ * already holds (its configuration, its secret) rather than a provider round trip.
24
+ */
25
+ senders(host: ScopeHost, connection: Connection): Promise<readonly string[]>;
26
+ /**
27
+ * Send one message as `mail.from.email`, which `senders` has already admitted.
28
+ *
29
+ * A failure should throw an error carrying the provider's numeric `status`, and for a
30
+ * throttle its `Retry-After` in seconds as `retryAfter` (#2102): the platform retries a
31
+ * send whose status is 429 or 5xx (or absent) and refuses one whose status is any other 4xx,
32
+ * reading both structurally, so a sender that rewords an error must keep the two fields.
33
+ */
34
+ send(host: ScopeHost, connection: Connection, mail: OutboundMail): Promise<MailSendResult>;
35
+ }
36
+ /** An address, optionally with a display name. */
37
+ export interface MailAddress {
38
+ email: string;
39
+ name?: string;
40
+ }
41
+ /**
42
+ * One file sent with a message, as bytes. The relay reads it from the scope's attachments by
43
+ * id, as the sending connection, before the sender sees it — so a sender never needs a door
44
+ * into the scope, and reads nothing its connection was not granted.
45
+ */
46
+ export interface OutboundMailAttachment {
47
+ filename: string;
48
+ contentType: string;
49
+ content: Uint8Array;
50
+ }
51
+ /**
52
+ * A message after the relay has validated it: recipients are a list, both parts are
53
+ * present, attachments are bytes. Structurally the email adapter's prepared message plus
54
+ * attachments; declared here because connectors depend on the kernel and not on the adapter.
55
+ */
56
+ export interface OutboundMail {
57
+ from: MailAddress;
58
+ to: MailAddress[];
59
+ replyTo?: MailAddress;
60
+ subject: string;
61
+ html: string;
62
+ text: string;
63
+ headers?: Record<string, string>;
64
+ attachments: OutboundMailAttachment[];
65
+ }
66
+ /**
67
+ * The immediate outcome, per recipient, on the email adapter's neutral names: `delivered`
68
+ * (accepted by the recipient's server), `queued` (accepted, still in flight) and `bounced`
69
+ * (refused for good). A sender that only learns "accepted" reports every recipient `queued`.
70
+ */
71
+ export interface MailSendResult {
72
+ delivered: string[];
73
+ queued: string[];
74
+ bounced: string[];
75
+ /** The provider's id for the message, when it returns one (#2102). Graph's `sendMail` does not. */
76
+ messageId?: string;
77
+ }
78
+ //# sourceMappingURL=mail-sender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mail-sender.d.ts","sourceRoot":"","sources":["../src/mail-sender.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;IAC7E;;;;;;;OAOG;IACH,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC5F;AAED,kDAAkD;AAClD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,UAAU,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,WAAW,CAAC;IAClB,EAAE,EAAE,WAAW,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,WAAW,EAAE,sBAAsB,EAAE,CAAC;CACvC;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,mGAAmG;IACnG,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=mail-sender.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mail-sender.js","sourceRoot":"","sources":["../src/mail-sender.ts"],"names":[],"mappings":""}
@@ -1,57 +1,5 @@
1
1
  import { z, type EntityRef, type PlatformActorId } from '@substrat-run/contracts';
2
2
  import { type ExecutorRetryPolicy, type ScopeHost } from './scope-host.js';
3
- /**
4
- * The membership executor (K-22 §4.2, membership.md §4.2; #1184) — the out-of-band half of
5
- * joining and leaving, written once so a host mounts it instead of hand-rolling the effect.
6
- *
7
- * Module code asks in its own transaction and this effects after commit, through `HostAdmin`:
8
- * an invite engine's accept emits `member.add-requested`; a vertical's removal emits
9
- * `member.remove-requested`. A rolled-back operation leaves no event and nothing to effect.
10
- * Both are driven inline by the emitting call, with the outbox and `_substrat_deliveries` as
11
- * the retry backstop, so the common case completes inside the request.
12
- *
13
- * **What it effects: a tenant-level role, and — opted into — the org.** An add assigns the
14
- * invited role at the tenant node; a removal unassigns it. By default neither joins nor leaves
15
- * the org both payloads name (the invites engine keys its invitations by org). A mount with
16
- * `orgs: 'join'` (#2047) also joins it on an add and takes the person out of it on a removal, in
17
- * the same directory unit as the role, bounded by MEMBERSHIP: the inviter or remover must be a
18
- * live member of that org. A member holds everything the org confers, at every node — its
19
- * grants in each scope's own store included — so that is the exact bound, and no scope store
20
- * is read. A tenant admin who is not a member of the org cannot invite anyone into it, by
21
- * design. A join's membership expires no later than the inviter's own: a temporary member
22
- * cannot confer a permanent one.
23
- *
24
- * **Authority.** Every payload field is module-written, so none of them is authority.
25
- *
26
- * - An ADD is bounded by the inviter: the kernel-stamped `actor` of the invitation's own
27
- * `invites.sent` event, asked through the K-21 set comparison at the tenant node. Asked
28
- * twice: early, to refuse cheaply, and again inside the directory unit that writes the role
29
- * (`applyMembership`), so a demotion, a grant lost or a role widened in between is not
30
- * written past. The joiner is the request's own actor, who must have made the invitation's
31
- * first acceptance, and the request must be the first one naming that invitation: one
32
- * invitation, one join. The most a module can do is make the principal who actually invoked
33
- * it look like the sender — the same delegation bound `ctx.grant` has.
34
- * - A REMOVE is bounded by the remover, the request's own actor (§5.1: removal takes the
35
- * same bound, or a junior admin could strip a role they could not have granted) — asked the
36
- * same two ways, so a remover demoted in between removes nobody.
37
- *
38
- * **Removal wins.** An add is refused when the joiner was removed after it was requested: by a
39
- * later `member.remove-requested` on the same membership (ordered by outbox id), or by any
40
- * tenant-level removal at all — staff's included, and a no-op one — which raises the person's
41
- * removal fence in the directory unit that revokes. The add's own unit reads the fence, and a
42
- * fence at or after `occurredAt - MEMBERSHIP_REMOVAL_SKEW_MS` refuses it.
43
- *
44
- * A refusal is terminal (`refuseDelivery`): journaled with its reason, never retried, listed
45
- * by `executorDeadLetters`, and reported to the emitting call through `onExecutorOutcomes`.
46
- *
47
- * **The trail.** Admin rows are written by `actor`, the platform identity that executed them,
48
- * `onBehalfOf` (#977) the person whose authority bounded them, and with `causedBy` = the event
49
- * id: the correlation id that joins the scope's half of the trail to the directory's. A
50
- * removal that took nothing writes no row (K-21), but still raises the fence.
51
- *
52
- * **Idempotent.** A delivered event never reaches its handler again. A crash between the
53
- * effect and its journal row re-runs the handler, and every write it makes is idempotent.
54
- */
55
3
  /** What the add path consumes, and the version it reads. */
56
4
  export declare const MEMBER_ADD_REQUESTED = "member.add-requested";
57
5
  /** What the remove path consumes, and the version it reads. */
@@ -1 +1 @@
1
- {"version":3,"file":"membership-executor.d.ts","sourceRoot":"","sources":["../src/membership-executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,CAAC,EAED,KAAK,SAAS,EAGd,KAAK,eAAe,EAErB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,KAAK,mBAAmB,EAIxB,KAAK,SAAS,EACf,MAAM,iBAAiB,CAAC;AAEzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,4DAA4D;AAC5D,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAC3D,+DAA+D;AAC/D,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AAEjE,oGAAoG;AACpG,eAAO,MAAM,sBAAsB,eAAe,CAAC;AACnD,wEAAwE;AACxE,eAAO,MAAM,0BAA0B,QAAQ,MAAM,KAA4B,MAAwB,CAAC;AAE1G,+FAA+F;AAC/F,eAAO,MAAM,gBAAgB,cAAe,MAAM,KAAG,SAAgE,CAAC;AAWtH;;;;GAIG;AACH,eAAO,MAAM,4BAA4B;;;;;iBAKvC,CAAC;AACH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAMxF,MAAM,WAAW,yBAAyB;IACxC,8FAA8F;IAC9F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,gFAAgF;IAChF,KAAK,EAAE,eAAe,CAAC;IACvB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,mBAAmB,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,QAAa,CAAC;AAErD,8FAA8F;AAC9F,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,yBAAyB,GAAG,IAAI,CA6DpG"}
1
+ {"version":3,"file":"membership-executor.d.ts","sourceRoot":"","sources":["../src/membership-executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,CAAC,EAED,KAAK,SAAS,EAGd,KAAK,eAAe,EAErB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,KAAK,mBAAmB,EAIxB,KAAK,SAAS,EACf,MAAM,iBAAiB,CAAC;AA2DzB,4DAA4D;AAC5D,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAC3D,+DAA+D;AAC/D,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AAEjE,oGAAoG;AACpG,eAAO,MAAM,sBAAsB,eAAe,CAAC;AACnD,wEAAwE;AACxE,eAAO,MAAM,0BAA0B,QAAQ,MAAM,KAA4B,MAAwB,CAAC;AAE1G,+FAA+F;AAC/F,eAAO,MAAM,gBAAgB,cAAe,MAAM,KAAG,SAAgE,CAAC;AAWtH;;;;GAIG;AACH,eAAO,MAAM,4BAA4B;;;;;iBAKvC,CAAC;AACH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAMxF,MAAM,WAAW,yBAAyB;IACxC,8FAA8F;IAC9F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,gFAAgF;IAChF,KAAK,EAAE,eAAe,CAAC;IACvB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,mBAAmB,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,QAAa,CAAC;AAErD,8FAA8F;AAC9F,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,yBAAyB,GAAG,IAAI,CAsEpG"}
@@ -2,58 +2,6 @@ import { instant, orgId, principalId, z, } from '@substrat-run/contracts';
2
2
  import { isUnknownRoleError } from './permission-checker.js';
3
3
  import { refuseDelivery } from './delivery-refusal.js';
4
4
  import {} from './scope-host.js';
5
- /**
6
- * The membership executor (K-22 §4.2, membership.md §4.2; #1184) — the out-of-band half of
7
- * joining and leaving, written once so a host mounts it instead of hand-rolling the effect.
8
- *
9
- * Module code asks in its own transaction and this effects after commit, through `HostAdmin`:
10
- * an invite engine's accept emits `member.add-requested`; a vertical's removal emits
11
- * `member.remove-requested`. A rolled-back operation leaves no event and nothing to effect.
12
- * Both are driven inline by the emitting call, with the outbox and `_substrat_deliveries` as
13
- * the retry backstop, so the common case completes inside the request.
14
- *
15
- * **What it effects: a tenant-level role, and — opted into — the org.** An add assigns the
16
- * invited role at the tenant node; a removal unassigns it. By default neither joins nor leaves
17
- * the org both payloads name (the invites engine keys its invitations by org). A mount with
18
- * `orgs: 'join'` (#2047) also joins it on an add and takes the person out of it on a removal, in
19
- * the same directory unit as the role, bounded by MEMBERSHIP: the inviter or remover must be a
20
- * live member of that org. A member holds everything the org confers, at every node — its
21
- * grants in each scope's own store included — so that is the exact bound, and no scope store
22
- * is read. A tenant admin who is not a member of the org cannot invite anyone into it, by
23
- * design. A join's membership expires no later than the inviter's own: a temporary member
24
- * cannot confer a permanent one.
25
- *
26
- * **Authority.** Every payload field is module-written, so none of them is authority.
27
- *
28
- * - An ADD is bounded by the inviter: the kernel-stamped `actor` of the invitation's own
29
- * `invites.sent` event, asked through the K-21 set comparison at the tenant node. Asked
30
- * twice: early, to refuse cheaply, and again inside the directory unit that writes the role
31
- * (`applyMembership`), so a demotion, a grant lost or a role widened in between is not
32
- * written past. The joiner is the request's own actor, who must have made the invitation's
33
- * first acceptance, and the request must be the first one naming that invitation: one
34
- * invitation, one join. The most a module can do is make the principal who actually invoked
35
- * it look like the sender — the same delegation bound `ctx.grant` has.
36
- * - A REMOVE is bounded by the remover, the request's own actor (§5.1: removal takes the
37
- * same bound, or a junior admin could strip a role they could not have granted) — asked the
38
- * same two ways, so a remover demoted in between removes nobody.
39
- *
40
- * **Removal wins.** An add is refused when the joiner was removed after it was requested: by a
41
- * later `member.remove-requested` on the same membership (ordered by outbox id), or by any
42
- * tenant-level removal at all — staff's included, and a no-op one — which raises the person's
43
- * removal fence in the directory unit that revokes. The add's own unit reads the fence, and a
44
- * fence at or after `occurredAt - MEMBERSHIP_REMOVAL_SKEW_MS` refuses it.
45
- *
46
- * A refusal is terminal (`refuseDelivery`): journaled with its reason, never retried, listed
47
- * by `executorDeadLetters`, and reported to the emitting call through `onExecutorOutcomes`.
48
- *
49
- * **The trail.** Admin rows are written by `actor`, the platform identity that executed them,
50
- * `onBehalfOf` (#977) the person whose authority bounded them, and with `causedBy` = the event
51
- * id: the correlation id that joins the scope's half of the trail to the directory's. A
52
- * removal that took nothing writes no row (K-21), but still raises the fence.
53
- *
54
- * **Idempotent.** A delivered event never reaches its handler again. A crash between the
55
- * effect and its journal row re-runs the handler, and every write it makes is idempotent.
56
- */
57
5
  /** What the add path consumes, and the version it reads. */
58
6
  export const MEMBER_ADD_REQUESTED = 'member.add-requested';
59
7
  /** What the remove path consumes, and the version it reads. */
@@ -101,13 +49,25 @@ export function registerMembershipExecutor(host, options) {
101
49
  'spans the directory and a scope store. A scope role has assignScopeRoleBounded.');
102
50
  }
103
51
  const id = options.id ?? MEMBERSHIP_EXECUTOR_ID;
52
+ const removeId = membershipRemoveExecutorId(id);
104
53
  // The org a request names rides along only on a mount that joins orgs (#2047).
105
54
  const orgOf = (request) => (options.orgs === 'join' ? { orgId: request.orgId } : {});
106
55
  // Attributed (#977): the person whose authority bounded the write, beside the platform
107
- // actor that executed it. `causedBy` is passed, never stamped by the host (#2055): a view of
108
- // the host is not the `admin` the dispatch handed the handler, so the event goes with it.
109
- // A host without `attributed` writes through that `admin`, which carries the event already.
110
- const adminFor = (admin, who, event) => host.attributed?.({ principal: who, tenantId: event.tenantId }, { causedBy: event.id }).admin ?? admin;
56
+ // actor that executed it — added to the `admin` the dispatch handed the handler, which
57
+ // already carries the event (#2069). A host built before `HostAdmin.attributed` (an adapter
58
+ // at 0.139) hands an admin without it but has the deprecated `host.attributed(…, { causedBy })`,
59
+ // so that form is the fallback, and is why it is kept. A host with neither predates #977 and
60
+ // records no person on any row; that is said aloud rather than lost quietly.
61
+ // `executorId` is the id the calling path is registered under, so a warning names that path.
62
+ const adminFor = (executorId, admin, who, event) => {
63
+ const onBehalfOf = { principal: who, tenantId: event.tenantId };
64
+ if (admin.attributed)
65
+ return admin.attributed(onBehalfOf);
66
+ if (host.attributed)
67
+ return host.attributed(onBehalfOf, { causedBy: event.id }).admin;
68
+ console.warn(`executor:${executorId}: this host cannot attribute an admin to a person; ${event.id}'s rows name no onBehalfOf`);
69
+ return admin;
70
+ };
111
71
  host.registerExecutor(id, MEMBER_ADD_REQUESTED, async (admin, event, scope) => {
112
72
  const decided = await authorizeAdd(event, scope);
113
73
  if ('refused' in decided)
@@ -115,7 +75,7 @@ export function registerMembershipExecutor(host, options) {
115
75
  const { request, inviter } = decided;
116
76
  // One directory unit: the fence, the bound asked again, the role and its audit row. A
117
77
  // removal or a change of authority lands wholly before it or wholly after it.
118
- const applied = await adminFor(admin, inviter, event).applyMembership(options.actor, {
78
+ const applied = await adminFor(id, admin, inviter, event).applyMembership(options.actor, {
119
79
  op: 'add',
120
80
  tenantId: event.tenantId,
121
81
  principal: request.principal,
@@ -126,14 +86,14 @@ export function registerMembershipExecutor(host, options) {
126
86
  });
127
87
  return applied.applied ? undefined : refusalOf(applied, request, 'inviter', inviter);
128
88
  }, options.retry);
129
- host.registerExecutor(membershipRemoveExecutorId(id), MEMBER_REMOVE_REQUESTED, async (admin, event, scope) => {
89
+ host.registerExecutor(removeId, MEMBER_REMOVE_REQUESTED, async (admin, event, scope) => {
130
90
  const decided = await authorizeRemove(event, scope);
131
91
  if ('refused' in decided)
132
92
  return decided.refused;
133
93
  const { request, remover } = decided;
134
94
  // One directory unit: the remover's bound asked again, the revoke, its audit row if it
135
95
  // took anything, and the fence — raised even with nothing held, so a pending add sees it.
136
- const applied = await adminFor(admin, remover, event).applyMembership(options.actor, {
96
+ const applied = await adminFor(removeId, admin, remover, event).applyMembership(options.actor, {
137
97
  op: 'remove',
138
98
  tenantId: event.tenantId,
139
99
  principal: request.principal,
@@ -1 +1 @@
1
- {"version":3,"file":"membership-executor.js","sourceRoot":"","sources":["../src/membership-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"membership-executor.js","sourceRoot":"","sources":["../src/membership-executor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,KAAK,EACL,WAAW,EACX,CAAC,GAOF,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAwB,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAMN,MAAM,iBAAiB,CAAC;AA2DzB,4DAA4D;AAC5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAC3D,+DAA+D;AAC/D,MAAM,CAAC,MAAM,uBAAuB,GAAG,yBAAyB,CAAC;AAEjE,oGAAoG;AACpG,MAAM,CAAC,MAAM,sBAAsB,GAAG,YAAY,CAAC;AACnD,wEAAwE;AACxE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,EAAE,GAAW,sBAAsB,EAAU,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC;AAE1G,+FAA+F;AAC/F,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAAiB,EAAa,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;AAEtH,6EAA6E;AAC7E,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,SAAS,EAAE,WAAW;IACtB,KAAK;IACL,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAChC,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,SAAS,EAAE,WAAW;IACtB,KAAK;IACL,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC3B,CAAC,CAAC;AAGH,iFAAiF;AACjF,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC7E,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAyB1D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,GAAG,MAAM,CAAC;AAErD,8FAA8F;AAC9F,MAAM,UAAU,0BAA0B,CAAC,IAAe,EAAE,OAAkC;IAC5F,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CACb,4DAA4D,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,0BAA0B;YACzG,iFAAiF,CACpF,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,sBAAsB,CAAC;IAChD,MAAM,QAAQ,GAAG,0BAA0B,CAAC,EAAE,CAAC,CAAC;IAChD,+EAA+E;IAC/E,MAAM,KAAK,GAAG,CAAC,OAAyB,EAAqB,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1H,uFAAuF;IACvF,uFAAuF;IACvF,4FAA4F;IAC5F,iGAAiG;IACjG,6FAA6F;IAC7F,6EAA6E;IAC7E,6FAA6F;IAC7F,MAAM,QAAQ,GAAG,CAAC,UAAkB,EAAE,KAAgB,EAAE,GAAgB,EAAE,KAAkB,EAAa,EAAE;QACzG,MAAM,UAAU,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;QAChE,IAAI,KAAK,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC;QACtF,OAAO,CAAC,IAAI,CAAC,YAAY,UAAU,sDAAsD,KAAK,CAAC,EAAE,4BAA4B,CAAC,CAAC;QAC/H,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,IAAI,CAAC,gBAAgB,CACnB,EAAE,EACF,oBAAoB,EACpB,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QAC5B,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACjD,IAAI,SAAS,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC;QACjD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QACrC,sFAAsF;QACtF,8EAA8E;QAC9E,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE;YACvF,EAAE,EAAE,KAAK;YACT,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE,OAAO;YAClB,GAAG,KAAK,CAAC,OAAO,CAAC;YACjB,kBAAkB,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,0BAA0B,CAAC,CAAC,WAAW,EAAE,CAAC;SACrH,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvF,CAAC,EACD,OAAO,CAAC,KAAK,CACd,CAAC;IAEF,IAAI,CAAC,gBAAgB,CACnB,QAAQ,EACR,uBAAuB,EACvB,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QAC5B,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACpD,IAAI,SAAS,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC;QACjD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QACrC,uFAAuF;QACvF,0FAA0F;QAC1F,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE;YAC7F,EAAE,EAAE,QAAQ;YACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE,OAAO;YAClB,GAAG,KAAK,CAAC,OAAO,CAAC;SAClB,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvF,CAAC,EACD,OAAO,CAAC,KAAK,CACd,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,SAAS,SAAS,CAChB,MAA0D,EAC1D,OAAoD,EACpD,EAAyB,EACzB,GAAgB;IAEhB,IAAI,WAAW,IAAI,MAAM;QAAE,OAAO,cAAc,CAAC,GAAG,OAAO,CAAC,SAAS,0CAA0C,CAAC,CAAC;IACjH,IAAI,aAAa,IAAI,MAAM;QAAE,OAAO,cAAc,CAAC,gCAAgC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IACzG,IAAI,YAAY,IAAI,MAAM;QAAE,OAAO,cAAc,CAAC,+BAA+B,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IACtG,IAAI,WAAW,IAAI,MAAM;QAAE,OAAO,cAAc,CAAC,OAAO,EAAE,IAAI,GAAG,2BAA2B,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IAChH,OAAO,cAAc,CAAC,OAAO,EAAE,IAAI,GAAG,oBAAoB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC;AAC7H,CAAC;AAGD,MAAM,OAAO,GAAG,CAAC,MAAc,EAAW,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEnF,2FAA2F;AAC3F,SAAS,SAAS,CAChB,KAAkB,EAClB,MAAoB;IAEpB,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC,eAAe,KAAK,CAAC,IAAI,kBAAkB,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;IAChH,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,OAAO,OAAO,CAAC,aAAa,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC;IACvE,+EAA+E;IAC/E,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ;QAAE,OAAO,OAAO,CAAC,+CAA+C,CAAC,CAAC;IAC7G,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;AAClC,CAAC;AAED,uGAAuG;AACvG,KAAK,UAAU,OAAO,CACpB,KAAoB,EACpB,GAAgB,EAChB,OAAe,EACf,EAAyB;IAEzB,wEAAwE;IACxE,IAAI,OAAkE,CAAC;IACvE,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QACzD,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC;YAAE,MAAM,GAAG,CAAC;QACjD,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,OAAO,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC;AAC1F,CAAC;AAED,0EAA0E;AAC1E,KAAK,UAAU,YAAY,CACzB,KAAkB,EAClB,KAAoB;IAEpB,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;IACpD,IAAI,SAAS,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IACvC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAC3B,wFAAwF;IACxF,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,CAAC,SAAS;QAAE,OAAO,OAAO,CAAC,+DAA+D,CAAC,CAAC;IAEvH,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACtG,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;IAC9D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC,cAAc,OAAO,CAAC,YAAY,4CAA4C,CAAC,CAAC;IACtH,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;IACtB,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1D,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/G,OAAO,OAAO,CAAC,yCAAyC,OAAO,CAAC,YAAY,iBAAiB,CAAC,CAAC;IACjG,CAAC;IACD,sFAAsF;IACtF,6EAA6E;IAC7E,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC;IACjE,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,IAAI,CAAC,UAAU,EAAE,OAAO,IAAI,KAAM,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5G,OAAO,OAAO,CAAC,cAAc,OAAO,CAAC,YAAY,8BAA8B,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACtG,CAAC;IACD,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,IAAI,CAAC,OAAO,CAAC,OAAO;QAAE,OAAO,OAAO,CAAC,cAAc,OAAO,CAAC,YAAY,8BAA8B,CAAC,CAAC;IAEvG,oFAAoF;IACpF,2FAA2F;IAC3F,0FAA0F;IAC1F,6EAA6E;IAC7E,IAAI,KAAM,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC,mCAAmC,OAAO,CAAC,YAAY,eAAe,CAAC,CAAC;IACjH,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,oBAAoB,IAAI,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,YAAY,CACtG,CAAC;IACF,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC,cAAc,OAAO,CAAC,YAAY,iCAAiC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAE7G,0FAA0F;IAC1F,wEAAwE;IACxE,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,uBAAuB,IAAI,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;QAClF,OAAO,OAAO,CAAC,GAAG,OAAO,CAAC,SAAS,0CAA0C,CAAC,CAAC;IACjF,CAAC;IACD,kFAAkF;IAClF,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC7E,OAAO,KAAK,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;AACrD,CAAC;AAED,6EAA6E;AAC7E,KAAK,UAAU,eAAe,CAC5B,KAAkB,EAClB,KAAoB;IAEpB,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,4BAA4B,CAAC,CAAC;IAC9D,IAAI,SAAS,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IACvC,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACnD,IAAI,CAAC,OAAO,CAAC,OAAO;QAAE,OAAO,OAAO,CAAC,8CAA8C,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACpF,OAAO,KAAK,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;AACrE,CAAC;AAED,sFAAsF;AACtF,SAAS,YAAY,CAAC,KAAmB;IACvC,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3D,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/D,CAAC;AAED,4FAA4F;AAC5F,KAAK,UAAU,UAAU,CAAC,KAAoB,EAAE,MAAiB;IAC/D,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,IAAI,MAA0B,CAAC;IAC/B,GAAG,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,MAAM,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,CAAC;IACxC,CAAC,QAAQ,MAAM,EAAE;IACjB,OAAO,OAAO,CAAC;AACjB,CAAC"}