@dharma-ai-labs/agent-fabric 0.2.190 → 0.2.192

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 (72) hide show
  1. package/AGENT_FABRIC_ONBOARDING.md +7 -3
  2. package/dist/cliVersionContract.test.d.ts +2 -0
  3. package/dist/cliVersionContract.test.d.ts.map +1 -0
  4. package/dist/cliVersionContract.test.js +17 -0
  5. package/dist/cliVersionContract.test.js.map +1 -0
  6. package/dist/codexSetupLaunchReservation.d.ts +12 -0
  7. package/dist/codexSetupLaunchReservation.d.ts.map +1 -0
  8. package/dist/codexSetupLaunchReservation.js +76 -0
  9. package/dist/codexSetupLaunchReservation.js.map +1 -0
  10. package/dist/codexSetupLaunchReservation.test.d.ts +2 -0
  11. package/dist/codexSetupLaunchReservation.test.d.ts.map +1 -0
  12. package/dist/codexSetupLaunchReservation.test.js +168 -0
  13. package/dist/codexSetupLaunchReservation.test.js.map +1 -0
  14. package/dist/codexSetupOwnedConnection.d.ts +4 -1
  15. package/dist/codexSetupOwnedConnection.d.ts.map +1 -1
  16. package/dist/codexSetupOwnedConnection.js +16 -3
  17. package/dist/codexSetupOwnedConnection.js.map +1 -1
  18. package/dist/codexSetupOwnedConnection.test.js +14 -0
  19. package/dist/codexSetupOwnedConnection.test.js.map +1 -1
  20. package/dist/codexSetupPortalIngress.test.d.ts +2 -0
  21. package/dist/codexSetupPortalIngress.test.d.ts.map +1 -0
  22. package/dist/codexSetupPortalIngress.test.js +383 -0
  23. package/dist/codexSetupPortalIngress.test.js.map +1 -0
  24. package/dist/codexSetupPortalPreparation.d.ts +32 -0
  25. package/dist/codexSetupPortalPreparation.d.ts.map +1 -0
  26. package/dist/codexSetupPortalPreparation.js +131 -0
  27. package/dist/codexSetupPortalPreparation.js.map +1 -0
  28. package/dist/codexSetupPortalPreparation.test.d.ts +2 -0
  29. package/dist/codexSetupPortalPreparation.test.d.ts.map +1 -0
  30. package/dist/codexSetupPortalPreparation.test.js +173 -0
  31. package/dist/codexSetupPortalPreparation.test.js.map +1 -0
  32. package/dist/codexSetupPortalPrompt.test.d.ts +2 -0
  33. package/dist/codexSetupPortalPrompt.test.d.ts.map +1 -0
  34. package/dist/codexSetupPortalPrompt.test.js +141 -0
  35. package/dist/codexSetupPortalPrompt.test.js.map +1 -0
  36. package/dist/codexSetupPortalPromptDigest.d.ts +3 -0
  37. package/dist/codexSetupPortalPromptDigest.d.ts.map +1 -0
  38. package/dist/codexSetupPortalPromptDigest.js +18 -0
  39. package/dist/codexSetupPortalPromptDigest.js.map +1 -0
  40. package/dist/codexSetupPortalPromptDigest.test.d.ts +2 -0
  41. package/dist/codexSetupPortalPromptDigest.test.d.ts.map +1 -0
  42. package/dist/codexSetupPortalPromptDigest.test.js +23 -0
  43. package/dist/codexSetupPortalPromptDigest.test.js.map +1 -0
  44. package/dist/codexSetupPublicStdin.d.ts +6 -0
  45. package/dist/codexSetupPublicStdin.d.ts.map +1 -0
  46. package/dist/codexSetupPublicStdin.js +36 -0
  47. package/dist/codexSetupPublicStdin.js.map +1 -0
  48. package/dist/codexSetupPublicStdin.test.d.ts +2 -0
  49. package/dist/codexSetupPublicStdin.test.d.ts.map +1 -0
  50. package/dist/codexSetupPublicStdin.test.js +40 -0
  51. package/dist/codexSetupPublicStdin.test.js.map +1 -0
  52. package/dist/codexSetupUserPrompt.d.ts +2 -0
  53. package/dist/codexSetupUserPrompt.d.ts.map +1 -1
  54. package/dist/codexSetupUserPrompt.js +13 -7
  55. package/dist/codexSetupUserPrompt.js.map +1 -1
  56. package/dist/index.d.ts +15 -0
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +197 -4
  59. package/dist/index.js.map +1 -1
  60. package/dist/index.test.js +4 -1
  61. package/dist/index.test.js.map +1 -1
  62. package/dist/onboardingContract.test.js +15 -1
  63. package/dist/onboardingContract.test.js.map +1 -1
  64. package/dist/repositorySourceCapture.test.js +15 -0
  65. package/dist/repositorySourceCapture.test.js.map +1 -1
  66. package/dist/schemas/setup-claim-request.schema.json +10 -0
  67. package/dist/schemas/setup-host-preparation-v2.schema.json +171 -0
  68. package/dist/schemas/setup-host-preparation.schema.json +51 -0
  69. package/dist/schemas/setup-launch-reservation.schema.json +29 -0
  70. package/dist/usage.js +1 -1
  71. package/dist/usage.js.map +1 -1
  72. package/package.json +1 -1
@@ -2,14 +2,18 @@
2
2
 
3
3
  The current portal setup-reference flow connects the exact selected source repository from one prompt in an actual authenticated coding-agent conversation. Follow its intended recipient, source selection, pinned release and bounded policy. The agent performs supported setup; the intended recipient approves only the matching browser device request. Never request a human terminal command, grant paste or keyring troubleshooting. Technical prerequisites must use the supported current client and protected store; unavailable prerequisites are a blocked stage, not permission to copy credentials or weaken protection. Existing join-only endpoints described below retain their separately qualified contract; the source-only setup reference does not authorize a join, source expansion or a writable peer task.
4
4
 
5
- The portal supplies a public setup reference with the organization, intended recipient, exact repository, policy, scope digest, contract digest and pinned CLI release. The public setup reference is not a bearer credential. On the selected Linux named-Codex route, the trusted native host supplies the original public prompt as the single user message and registers the matching `dharma_setup_reference` tool. Its original scoped intent and execution lease, not the prompt text, authorize setup. The native client proves possession of its protected device key and opens the same-origin recipient approval page. Organization credentials move only from the trusted HTTPS endpoint into the native protected store, using the approved device and its signed ephemeral encryption key. Never put credentials in agent output, argv, environment, files, clipboard or tool messages. The agent does not receive a private grant field. Legacy private-input options are not a fallback for this one-prompt contract.
5
+ The portal supplies a public setup reference with the organization, intended recipient, exact repository, policy, scope digest, contract digest and pinned CLI release. The public setup reference is not a bearer credential. On the selected Linux named-Codex route, the trusted native host supplies either verified server-canonical public instructions (CLI192 portal mode) or the provided original public prompt (legacy stdin mode) as its child session's single user message, then registers the matching `dharma_setup_reference` tool. Neither mode attests the enclosing human chat. The host's original scoped intent and execution lease, not the prompt text, authorize setup. The native client proves possession of its protected device key and opens the same-origin recipient approval page. Organization credentials move only from the trusted HTTPS endpoint into the native protected store, using the approved device and its signed ephemeral encryption key. Never put credentials in agent output, argv, environment, files, clipboard or tool messages. The agent does not receive a private grant field. Legacy private-input options are not a fallback for this one-prompt contract.
6
6
 
7
- The controller entry `openCodexBootstrapFromPortalCommand` requires `initialUserPrompt` for the exact public portal text alongside independently validated command arguments and the host intent. Also supply `initialUserPromptBinding` containing the recipient email and repository remote URL from the independently verified portal selection; neither field comes from parsing the prompt or from the provider account email. Missing text is refused, never replaced with a controller message. Separately qualified legacy callers of `openCodexBootstrapNativeHost` retain their omitted-prompt behavior; they do not qualify this portal journey. The controller snapshots these public fields, checks the remote fingerprint and requires exact displayed headers before connecting. Credential-shaped text is rejected rather than redacted and forwarded. It verifies the intended provider account through the official owned connection, outside model shell tools, and returns `initialUserPromptSha256` for the captured text. Prompt capture is a consistency check, not new authority. A matching host-bound setup tool must already be provided by the supported native integration; pasting into an arbitrary desktop chat does not register that tool. When the agent has no matching registered tool, it reports the guide-level blocker `codex_setup_host_unavailable`; this is not a runtime API error. A failed attempted host startup returns the existing public error `codex_setup_owned_start_unqualified`. Neither permits a denied nested login check, permission changes or terminal input. This implementation contract is not itself a live qualification receipt.
7
+ Use an already registered matching `dharma_setup_reference` tool when present. From CLI 0.2.192, the portal may instead supply the official `dharma setup codex` entry with `--portal-context-sha256` and `--portal-prompt-sha256`. The actual coding agent executes its exact public command once; the client fetches the canonical public portal instructions, verifies both independent copied pins and revalidates the current source policy. It does not read private conversation history or ask the agent to transcribe the full message. The public checksum masks only its own single argument value to avoid a self-referential digest; all other prompt bytes remain bound, with CRLF normalized to LF. The receipt identifies `verified_portal_prompt` and `nativeOriginalUserPromptAttested:false`: canonical portal input is not attestation of the enclosing human message. Legacy `--stdin` remains supported for an entire original public prompt and cannot combine with either portal pin. Follow only the selected issued route; legacy input is not a failure fallback.
8
+
9
+ The new generated prompt explicitly prepares and selects both npm prefix and cache beneath the approved checkout's `.dharma/setup-runtime`; `--prefix` alone does not select npm's cache. It preserves existing files and rejects unexpected links, ownership or writable directories without changing permissions. The entry still requires the intended qualified private `DHARMA_HOME` and existing `CODEX_HOME`, genuine Codex context and supported protected storage. It opens an owned named setup session with the matching tool, not attachment to an arbitrary existing desktop chat. The current authenticated provider account is checked through the official owned connection; its identity is distinct from the intended Dharma recipient. No human terminal command, nested login check, invented provider marker or copied authentication is permitted. Keep the originating command and same native turn pending through recipient approval and final JSON; never retry a refused, expired or interrupted setup through another route. Source or parser tests do not prove a live customer journey.
10
+
11
+ The controller entry `openCodexBootstrapFromPortalCommand` requires `initialUserPrompt` containing the exact verified public text alongside independently validated command arguments and the host intent. In CLI192 portal mode this is fetched server-canonical text; in legacy stdin mode it is the provided original public text. The internal field name does not attest native transcript provenance. Also supply `initialUserPromptBinding` containing the recipient email and repository remote URL from the independently verified portal selection; neither field comes from parsing the prompt or from the provider account email. Missing text is refused, never replaced with a controller message. Separately qualified legacy callers of `openCodexBootstrapNativeHost` retain their omitted-prompt behavior; they do not qualify this portal journey. The controller snapshots these public fields, checks the remote fingerprint and requires exact displayed headers before connecting. Credential-shaped text is rejected rather than redacted and forwarded. The authenticated portal copy supplies independent immutable context/checksum pins, CLI and expiry; same-origin HTTPS authenticates fresh policy and timestamps. This is context integrity, not an application-level server signature, independently signed freshness or native-message attestation. Public preparation and a settled provider turn are not readiness: success requires the original host's journal/readiness-verified operation receipt and exact installed configuration. An unavailable prerequisite or `codex_setup_owned_start_unqualified` is a blocked stage, not permission to weaken protection or request terminal input. This implementation contract is not itself a live qualification receipt.
8
12
 
9
13
  ## 1. Connect safely
10
14
 
11
15
  1. Read the exact source selection in the portal prompt. The CLI uses a matching current checkout or clones only the selected hosted HTTPS remote into an isolated managed checkout, verifies its commit, tracked files and remote, and leaves the starting folder untouched. A disclosed prepared checkout may satisfy the starting prerequisite; that does not prove fresh remote authentication or cloning. Do not scan parent directories or unrelated repositories. An existing join-only binding needs no source Git access, but it must use its own separately qualified join contract rather than a source setup reference.
12
- 2. Verify the pinned release and public provenance. Use the legitimate current coding-agent context and its intended protected homes; a selected isolated test fixture must already have genuine provider authentication and isolated state, not copied default credentials. On the selected Linux named-Codex route, invoke only the matching host-bound setup tool using its public operation/reference identifiers and keep the same native turn pending through recipient approval and final JSON. Do not run direct-CLI compatibility commands on this route. Separately qualified direct-CLI clients retain their exact generated command and genuine harness checks; they are not a fallback for a missing or refused native setup tool. Neither route may request private terminal input. Do not change provider detection, invent environment markers, switch to a bearer grant, or ask the user to run a supplemental command. Before approval, a typed pending result identifies the exact local fingerprint, repository and bounded expiry. Pending inspection is not credential issuance. After enrollment, use supported cause-specific grant-free recovery; never replay an expired or spent setup. If expiry occurs before enrollment, request a fresh portal prompt only after the failed process is terminal and its disposition is known.
16
+ 2. Verify the pinned release and public provenance. Use the legitimate current coding-agent context and its intended protected homes; a selected isolated test fixture must already have genuine provider authentication and isolated state, not copied default credentials. On the selected Linux named-Codex route, use the matching bound tool or the official selected public-input handoff above; keep the same native turn pending through recipient approval and final JSON. Do not run direct-CLI compatibility commands on this route. Separately qualified direct-CLI clients retain their exact generated command and genuine harness checks; they are not a fallback for a refused or failed setup. Neither route may request private terminal input. Do not change provider detection, invent environment markers, switch to a bearer grant, or ask the user to run a supplemental command. Before approval, a typed pending result identifies the exact local fingerprint, repository and bounded expiry. Pending inspection is not credential issuance. After enrollment, use supported cause-specific grant-free recovery; never replay an expired or spent setup. If expiry occurs before enrollment, request a fresh portal prompt only after the failed process is terminal and its disposition is known.
13
17
  3. Complete the browser device approval when the CLI opens the same-origin approval page. The approving account must be the intended active organization member. A copied prompt, invitation, or administrator session cannot replace recipient approval.
14
18
  4. Read the complete JSON result. Verify `repositorySelection.workspace`. In join mode it is an isolated managed state directory, **not** a source checkout; do not edit product code there. In source mode use its verified checkout for follow-up work. Verify the organization, member, device, repository identity, provider, and enrollment state. If the command returns a pending or blocked stage, preserve the correlation data and continue only through the supported recovery path.
15
19
  Keep the original command attached through browser approval and signed repository publication, which may take up to five minutes after local setup. If the host shell yields a running session, poll that session for the final JSON; do not start a second bootstrap command.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=cliVersionContract.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cliVersionContract.test.d.ts","sourceRoot":"","sources":["../src/cliVersionContract.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,17 @@
1
+ import assert from 'node:assert/strict';
2
+ import { readFile } from 'node:fs/promises';
3
+ import { spawnSync } from 'node:child_process';
4
+ import { fileURLToPath } from 'node:url';
5
+ import test from 'node:test';
6
+ import { run } from './index.js';
7
+ test('actual CLI dispatcher version agrees with its published package manifest', async () => {
8
+ const manifest = JSON.parse(await readFile(new URL('../package.json', import.meta.url), 'utf8'));
9
+ assert.deepEqual(await run(['--version']), { version: manifest.version });
10
+ });
11
+ test('official CLI bin reports the same exact version before setup preparation', async () => {
12
+ const manifest = JSON.parse(await readFile(new URL('../package.json', import.meta.url), 'utf8'));
13
+ const result = spawnSync(process.execPath, [fileURLToPath(new URL('./bin.js', import.meta.url)), '--version'], { encoding: 'utf8', timeout: 15000 });
14
+ assert.equal(result.status, 0);
15
+ assert.deepEqual(JSON.parse(result.stdout), { version: manifest.version });
16
+ });
17
+ //# sourceMappingURL=cliVersionContract.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cliVersionContract.test.js","sourceRoot":"","sources":["../src/cliVersionContract.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAC;AACvC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,GAAG,EAAC,MAAM,YAAY,CAAC;AAE/B,IAAI,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;IAC1F,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACjG,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,EAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAC,CAAC,CAAC;AAC1E,CAAC,CAAC,CAAC;AACH,IAAI,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;IAC1F,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACjG,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,EAC3G,EAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAC,CAAC,CAAC;IACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAC,CAAC,CAAC;AAC3G,CAAC,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ /** One conservative reservation per copied reference. Unsettled exposure is
2
+ * never erased on timeout, cancellation or a lost response. Not an invoice cap. */
3
+ export declare function reserveCodexSetupLaunch(input: {
4
+ home: string;
5
+ organizationId: string;
6
+ setupReference: string;
7
+ operationId: string;
8
+ promptSha256: string;
9
+ cents: number;
10
+ current(): Promise<boolean>;
11
+ }): Promise<boolean>;
12
+ //# sourceMappingURL=codexSetupLaunchReservation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codexSetupLaunchReservation.d.ts","sourceRoot":"","sources":["../src/codexSetupLaunchReservation.ts"],"names":[],"mappings":"AAMA;mFACmF;AACnF,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,IAAI,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAClF,YAAY,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAClE,GAAG,OAAO,CAAC,OAAO,CAAC,CAoDnB"}
@@ -0,0 +1,76 @@
1
+ import { constants } from 'node:fs';
2
+ import { lstat, open } from 'node:fs/promises';
3
+ import { createHash } from 'node:crypto';
4
+ import { isAbsolute, resolve } from 'node:path';
5
+ import { canonicalize, validateContract } from '@dharma-ai-labs/agent-fabric-contracts';
6
+ /** One conservative reservation per copied reference. Unsettled exposure is
7
+ * never erased on timeout, cancellation or a lost response. Not an invoice cap. */
8
+ export async function reserveCodexSetupLaunch(input) {
9
+ input = Object.freeze({ home: input.home, organizationId: input.organizationId,
10
+ setupReference: input.setupReference, operationId: input.operationId, promptSha256: input.promptSha256,
11
+ cents: input.cents, current: input.current });
12
+ if (process.platform !== 'linux' || typeof process.getuid !== 'function'
13
+ || !isAbsolute(input.home) || resolve(input.home) !== input.home
14
+ || !Number.isSafeInteger(input.cents) || input.cents < 1 || input.cents > 25
15
+ || !/^org_[A-Za-z0-9]+$/.test(input.organizationId)
16
+ || !/^[a-f0-9]{64}$/.test(input.promptSha256))
17
+ return false;
18
+ const uuid = /^[a-f0-9]{8}-[a-f0-9]{4}-[1-8][a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$/;
19
+ if (![input.setupReference, input.operationId].every(value => uuid.test(value)))
20
+ return false;
21
+ let handle;
22
+ let directory;
23
+ try {
24
+ if (!await input.current())
25
+ return false;
26
+ const home = await lstat(input.home);
27
+ if (!home.isDirectory() || home.isSymbolicLink() || home.uid !== process.getuid()
28
+ || (home.mode & 0o077) !== 0)
29
+ return false;
30
+ const payload = { schema: 'dharma.setup-launch-reservation/v1',
31
+ organizationId: input.organizationId, setupReference: input.setupReference, operationId: input.operationId,
32
+ promptSha256: input.promptSha256, reservedProviderCostCents: input.cents,
33
+ reservedAt: new Date().toISOString(), expiresAt: null, actualUsd: null, status: 'UNSETTLED_NOT_RELEASED',
34
+ hardInvoiceCapProven: false };
35
+ const record = { ...payload, integrity: { algorithm: 'sha256',
36
+ payloadSha256: createHash('sha256').update(canonicalize(payload)).digest('hex') } };
37
+ if (!(await validateContract(resolve(import.meta.dirname, 'schemas'), 'https://schemas.dharma-ai.io/setup-launch-reservation/v1', record)).ok || !await input.current())
38
+ return false;
39
+ directory = await open(input.home, constants.O_RDONLY | constants.O_DIRECTORY | constants.O_NOFOLLOW);
40
+ const parent = await directory.stat();
41
+ if (!parent.isDirectory() || parent.uid !== home.uid || parent.dev !== home.dev || parent.ino !== home.ino
42
+ || (parent.mode & 0o077) !== 0)
43
+ return false;
44
+ const key = createHash('sha256').update(input.organizationId + '\0' + input.setupReference).digest('hex');
45
+ handle = await open(resolve(input.home, 'setup-reservation-' + key + '.json'), constants.O_CREAT | constants.O_EXCL | constants.O_WRONLY | constants.O_NOFOLLOW, 0o600);
46
+ const identity = await handle.stat();
47
+ if (!identity.isFile() || identity.nlink !== 1 || identity.uid !== process.getuid()
48
+ || (identity.mode & 0o077) !== 0)
49
+ return false;
50
+ await handle.writeFile(JSON.stringify(record) + '\n', 'utf8');
51
+ await handle.sync();
52
+ await directory.sync();
53
+ const currentHome = await lstat(input.home);
54
+ if (!currentHome.isDirectory() || currentHome.isSymbolicLink() || currentHome.dev !== parent.dev
55
+ || currentHome.ino !== parent.ino || currentHome.uid !== parent.uid || (currentHome.mode & 0o077) !== 0)
56
+ return false;
57
+ return await input.current();
58
+ }
59
+ catch {
60
+ return false;
61
+ }
62
+ finally {
63
+ let failed = false;
64
+ for (const owned of [handle, directory]) {
65
+ try {
66
+ await owned?.close();
67
+ }
68
+ catch {
69
+ failed = true;
70
+ }
71
+ }
72
+ if (failed)
73
+ return false;
74
+ }
75
+ }
76
+ //# sourceMappingURL=codexSetupLaunchReservation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codexSetupLaunchReservation.js","sourceRoot":"","sources":["../src/codexSetupLaunchReservation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=codexSetupLaunchReservation.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codexSetupLaunchReservation.test.d.ts","sourceRoot":"","sources":["../src/codexSetupLaunchReservation.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,168 @@
1
+ import assert from 'node:assert/strict';
2
+ import { constants } from 'node:fs';
3
+ import { mkdtemp, readFile, rm } from 'node:fs/promises';
4
+ import { createHash } from 'node:crypto';
5
+ import { resolve, isAbsolute } from 'node:path';
6
+ import { fileURLToPath } from 'node:url';
7
+ import { tmpdir } from 'node:os';
8
+ import { canonicalize, validateContract } from '@dharma-ai-labs/agent-fabric-contracts';
9
+ import { compileFunction } from 'node:vm';
10
+ import test from 'node:test';
11
+ import ts from 'typescript';
12
+ import { reserveCodexSetupLaunch } from './codexSetupLaunchReservation.js';
13
+ // Exercise the actual declaration with synthetic POSIX metadata. This is not
14
+ // a claim that Windows fixtures qualify Linux filesystem protection.
15
+ async function fixture() {
16
+ const source = await readFile(new URL('../src/codexSetupLaunchReservation.ts', import.meta.url), 'utf8');
17
+ const ast = ts.createSourceFile('reservation.ts', source, ts.ScriptTarget.Latest, true);
18
+ const declaration = ast.statements.find(node => ts.isFunctionDeclaration(node) && node.name?.text === 'reserveCodexSetupLaunch');
19
+ assert.ok(declaration);
20
+ const compiled = ts.transpileModule(declaration.getText(ast), { compilerOptions: {
21
+ target: ts.ScriptTarget.ES2023, module: ts.ModuleKind.CommonJS
22
+ } }).outputText;
23
+ let allowed = true, opens = 0, closes = 0, writes = 0, syncs = 0, duplicate = false, failClose = false;
24
+ let homeMode = 0o700, owner = 1000, link = false, links = 1, saved = '', opened = [];
25
+ let directoryFailure = false, directorySyncs = 0, directoryCloses = 0, directoryOpenFailure = false;
26
+ let directoryCloseFailure = false, directoryMismatch = false, homeChanged = false;
27
+ let homeReads = 0;
28
+ const events = [];
29
+ const synthetic = { platform: 'linux', getuid: () => 1000 };
30
+ const open = async (...args) => {
31
+ if (!String(args[0]).endsWith('.json')) {
32
+ if (directoryOpenFailure)
33
+ throw new Error('PRIVATE_UNSUPPORTED_DIRECTORY_OPEN');
34
+ return {
35
+ stat: async () => ({ isDirectory: () => true, uid: owner, mode: homeMode, dev: 1, ino: directoryMismatch ? 99 : 2 }),
36
+ sync: async () => { directorySyncs++; events.push('directory:sync'); if (directoryFailure)
37
+ throw new Error('PRIVATE_SYNC_EXCEPTION'); },
38
+ close: async () => { directoryCloses++; if (directoryCloseFailure)
39
+ throw new Error('PRIVATE_DIRECTORY_CLOSE'); },
40
+ };
41
+ }
42
+ opens++;
43
+ opened = args;
44
+ if (duplicate)
45
+ throw new Error('PRIVATE_STORAGE_EXCEPTION');
46
+ duplicate = true;
47
+ return { stat: async () => ({ isFile: () => true, nlink: links, uid: owner, mode: 0o600 }),
48
+ writeFile: async (text) => { writes++; saved = text; events.push('file:write'); },
49
+ sync: async () => { syncs++; events.push('file:sync'); },
50
+ close: async () => { closes++; if (failClose)
51
+ throw new Error('PRIVATE_CLOSE_EXCEPTION'); } };
52
+ };
53
+ const lstat = async () => ({ isDirectory: () => true, isSymbolicLink: () => link, uid: owner, mode: homeMode,
54
+ dev: 1, ino: ++homeReads > 1 && homeChanged ? 99 : 2 });
55
+ const reserve = compileFunction(compiled.replaceAll('import.meta.dirname', 'syntheticModuleDirectory') + '\nreturn reserveCodexSetupLaunch;', ['exports', 'process', 'isAbsolute', 'resolve', 'createHash', 'constants', 'lstat', 'open', 'validateContract', 'canonicalize', 'syntheticModuleDirectory'])({}, synthetic, isAbsolute, resolve, createHash, constants, lstat, open, validateContract, canonicalize, fileURLToPath(new URL('.', import.meta.url)));
56
+ const input = { home: resolve('synthetic-owned-home'), organizationId: 'org_fixture',
57
+ setupReference: '11111111-1111-4111-8111-111111111111', operationId: '22222222-2222-4222-8222-222222222222',
58
+ promptSha256: 'a'.repeat(64), cents: 25, current: async () => allowed };
59
+ return { reserve, input, setAllowed: (value) => { allowed = value; },
60
+ setMode: (value) => { homeMode = value; }, setOwner: (value) => { owner = value; },
61
+ setLink: () => { link = true; }, setLinks: () => { links = 2; }, failClose: () => { failClose = true; },
62
+ failDirectorySync: () => { directoryFailure = true; }, get directorySyncs() { return directorySyncs; },
63
+ get directoryCloses() { return directoryCloses; }, events,
64
+ failDirectoryOpen: () => { directoryOpenFailure = true; }, failDirectoryClose: () => { directoryCloseFailure = true; },
65
+ mismatchDirectory: () => { directoryMismatch = true; }, changeHome: () => { homeChanged = true; },
66
+ get calls() { return { opens, closes, writes, syncs }; }, get saved() { return saved; }, get opened() { return opened; } };
67
+ }
68
+ test('one reference reserves once using exclusive private no-follow creation and retains unresolved liability', async () => {
69
+ const f = await fixture();
70
+ assert.equal(await f.reserve(f.input), true);
71
+ assert.equal(f.opened[1], constants.O_CREAT | constants.O_EXCL | constants.O_WRONLY | constants.O_NOFOLLOW);
72
+ assert.equal(f.opened[2], 0o600);
73
+ assert.deepEqual(f.calls, { opens: 1, closes: 1, writes: 1, syncs: 1 });
74
+ const record = JSON.parse(f.saved);
75
+ assert.equal(record.reservedProviderCostCents, 25);
76
+ assert.equal(record.actualUsd, null);
77
+ assert.equal(record.status, 'UNSETTLED_NOT_RELEASED');
78
+ assert.equal(record.hardInvoiceCapProven, false);
79
+ assert.equal(await f.reserve(f.input), false);
80
+ assert.equal(f.calls.writes, 1);
81
+ });
82
+ for (const cause of ['open', 'stat', 'close', 'home']) {
83
+ test(`directory ${cause} uncertainty prevents provider admission`, async () => {
84
+ const f = await fixture();
85
+ if (cause === 'open')
86
+ f.failDirectoryOpen();
87
+ if (cause === 'stat')
88
+ f.mismatchDirectory();
89
+ if (cause === 'close')
90
+ f.failDirectoryClose();
91
+ if (cause === 'home')
92
+ f.changeHome();
93
+ assert.equal(await f.reserve(f.input), false);
94
+ if (cause === 'open' || cause === 'stat')
95
+ assert.equal(f.calls.writes, 0);
96
+ if (cause !== 'open')
97
+ assert.equal(f.directoryCloses, 1);
98
+ });
99
+ }
100
+ test('Linux real private fixture persists the exclusive schema-valid reservation', { skip: process.platform !== 'linux' }, async (t) => {
101
+ const home = await mkdtemp(resolve(tmpdir(), 'dharma-setup-reservation-'));
102
+ t.after(async () => { await rm(home, { recursive: true, force: true }); });
103
+ const input = { home, organizationId: 'org_fixture', setupReference: '11111111-1111-4111-8111-111111111111',
104
+ operationId: '22222222-2222-4222-8222-222222222222', promptSha256: 'a'.repeat(64), cents: 25, current: async () => true };
105
+ assert.equal(await reserveCodexSetupLaunch(input), true);
106
+ const key = createHash('sha256').update(input.organizationId + '\0' + input.setupReference).digest('hex');
107
+ const record = JSON.parse(await readFile(resolve(home, 'setup-reservation-' + key + '.json'), 'utf8'));
108
+ assert.equal((await validateContract(fileURLToPath(new URL('./schemas', import.meta.url)), 'https://schemas.dharma-ai.io/setup-launch-reservation/v1', record)).ok, true);
109
+ assert.equal(await reserveCodexSetupLaunch(input), false);
110
+ });
111
+ test('reservation fsyncs its directory after file data and refuses an uncertain durable entry', async () => {
112
+ const f = await fixture();
113
+ assert.equal(await f.reserve(f.input), true);
114
+ assert.deepEqual(f.events, ['file:write', 'file:sync', 'directory:sync']);
115
+ assert.equal(f.directoryCloses, 1);
116
+ const g = await fixture();
117
+ g.failDirectorySync();
118
+ assert.equal(await g.reserve(g.input), false);
119
+ assert.equal(g.calls.writes, 1);
120
+ assert.equal(g.directoryCloses, 1);
121
+ assert.equal(await g.reserve(g.input), false);
122
+ assert.equal(g.calls.writes, 1, 'uncertain reservation is retained, not retried');
123
+ });
124
+ test('persisted reservation conforms to a versioned contract and canonical integrity metadata', async () => {
125
+ const f = await fixture();
126
+ assert.equal(await f.reserve(f.input), true);
127
+ const value = JSON.parse(f.saved);
128
+ const schema = fileURLToPath(new URL('./schemas', import.meta.url));
129
+ assert.equal((await validateContract(schema, 'https://schemas.dharma-ai.io/setup-launch-reservation/v1', value)).ok, true);
130
+ const { integrity, ...payload } = value;
131
+ assert.deepEqual(integrity, { algorithm: 'sha256', payloadSha256: createHash('sha256').update(canonicalize(payload)).digest('hex') });
132
+ for (const change of [{ reservedProviderCostCents: 26 }, { actualUsd: 0 }, { schema: 'unknown' }, { extra: 'forbidden' }]) {
133
+ assert.equal((await validateContract(schema, 'https://schemas.dharma-ai.io/setup-launch-reservation/v1', { ...value, ...change })).ok, false);
134
+ }
135
+ });
136
+ for (const reason of ['withdrawn', 'writable', 'owner', 'symlink', 'budget', 'reference', 'platform']) {
137
+ test(`reservation rejects ${reason} before file creation`, async () => {
138
+ const f = await fixture();
139
+ if (reason === 'withdrawn')
140
+ f.setAllowed(false);
141
+ if (reason === 'writable')
142
+ f.setMode(0o755);
143
+ if (reason === 'owner')
144
+ f.setOwner(1001);
145
+ if (reason === 'symlink')
146
+ f.setLink();
147
+ if (reason === 'budget')
148
+ f.input.cents = 26;
149
+ if (reason === 'reference')
150
+ f.input.setupReference = 'invalid';
151
+ if (reason === 'platform')
152
+ f.input.home = 'relative';
153
+ assert.equal(await f.reserve(f.input), false);
154
+ assert.equal(f.calls.opens, 0);
155
+ });
156
+ }
157
+ test('a multiply linked file is not written and close failure never admits model execution', async () => {
158
+ const f = await fixture();
159
+ f.setLinks();
160
+ assert.equal(await f.reserve(f.input), false);
161
+ assert.equal(f.calls.writes, 0);
162
+ assert.equal(f.calls.closes, 1);
163
+ const g = await fixture();
164
+ g.failClose();
165
+ assert.equal(await g.reserve(g.input), false);
166
+ assert.equal(g.calls.writes, 1);
167
+ });
168
+ //# sourceMappingURL=codexSetupLaunchReservation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codexSetupLaunchReservation.test.js","sourceRoot":"","sources":["../src/codexSetupLaunchReservation.test.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,16 @@
2
2
  export declare function openCodexSetupOwnedConnection(input: {
3
3
  workspace: string;
4
4
  deviceHome: string;
5
- expectedAccountEmail: string;
5
+ expectedAccountEmail?: string;
6
+ /** Explicit local ingress selection; never use a portal recipient as provider identity. */
7
+ accountSelection?: 'current_authenticated';
6
8
  signal: AbortSignal;
7
9
  current(): Promise<boolean>;
8
10
  }): Promise<Readonly<{
9
11
  transport: import("@dharma-ai-labs/agent-fabric-provider-adapters/experimental/codex-transport").CodexStdioTransport;
10
12
  additionalFilesystemRules: Readonly<Record<string, "read" | "deny">>;
11
13
  current: () => Promise<boolean>;
14
+ accountEmail: string;
12
15
  close: () => Promise<void>;
13
16
  }>>;
14
17
  //# sourceMappingURL=codexSetupOwnedConnection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codexSetupOwnedConnection.d.ts","sourceRoot":"","sources":["../src/codexSetupOwnedConnection.ts"],"names":[],"mappings":"AAOA,iFAAiF;AACjF,wBAAsB,6BAA6B,CAAC,KAAK,EAAE;IACzD,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC;IACpE,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAClD;;;;;IAiDA"}
1
+ {"version":3,"file":"codexSetupOwnedConnection.d.ts","sourceRoot":"","sources":["../src/codexSetupOwnedConnection.ts"],"names":[],"mappings":"AAOA,iFAAiF;AACjF,wBAAsB,6BAA6B,CAAC,KAAK,EAAE;IACzD,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACrE,2FAA2F;IAC3F,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;IAC3C,MAAM,EAAE,WAAW,CAAC;IAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAClD;;;;;;IA4DA"}
@@ -6,8 +6,13 @@ import { namedCodexEnvironment } from './namedCodexEnvironment.js';
6
6
  import { namedCodexFilesystem } from './namedCodexFilesystem.js';
7
7
  /** Internal controller connection, not a model-selected command or transport. */
8
8
  export async function openCodexSetupOwnedConnection(input) {
9
- if (process.platform !== 'linux' || !input.expectedAccountEmail
10
- || input.expectedAccountEmail.length > 254 || /[\s\u0000-\u001f\u007f]/.test(input.expectedAccountEmail)) {
9
+ const expectedAccountEmail = input.expectedAccountEmail;
10
+ const selectCurrent = input.accountSelection === 'current_authenticated';
11
+ if (process.platform !== 'linux' || selectCurrent === Boolean(input.expectedAccountEmail)
12
+ || selectCurrent && expectedAccountEmail !== undefined
13
+ || input.accountSelection !== undefined && !selectCurrent
14
+ || input.expectedAccountEmail !== undefined && (input.expectedAccountEmail.length > 254
15
+ || /[\s\u0000-\u001f\u007f]/.test(input.expectedAccountEmail))) {
11
16
  throw new Error('codex_setup_owned_route_unqualified');
12
17
  }
13
18
  const assert = async () => {
@@ -33,12 +38,19 @@ export async function openCodexSetupOwnedConnection(input) {
33
38
  const close = () => closing ??= transport.close();
34
39
  const abort = () => { void close().catch(() => { }); };
35
40
  input.signal.addEventListener('abort', abort, { once: true });
41
+ let selectedAccountEmail = expectedAccountEmail;
36
42
  const current = async () => {
37
43
  if (input.signal.aborted || transport.signal.aborted || !await input.current())
38
44
  return false;
39
45
  const result = await transport.request('account/read', { refreshToken: false });
46
+ const email = result?.account?.email;
47
+ if (result?.account?.type !== 'chatgpt' || typeof email !== 'string' || email.length > 254
48
+ || !/^[^\s<>@]+@[^\s<>@]+\.[^\s<>@]+$/.test(email))
49
+ return false;
50
+ if (selectCurrent && selectedAccountEmail === undefined)
51
+ selectedAccountEmail = email;
40
52
  return !input.signal.aborted && !transport.signal.aborted
41
- && result?.account?.type === 'chatgpt' && result.account.email === input.expectedAccountEmail
53
+ && email === selectedAccountEmail
42
54
  && await input.current() && !input.signal.aborted && !transport.signal.aborted;
43
55
  };
44
56
  try {
@@ -48,6 +60,7 @@ export async function openCodexSetupOwnedConnection(input) {
48
60
  await verifyCodexSetupReadOnlyProfile(transport, input.workspace, { async step(operation) { await assert(); const result = await operation(); await assert(); return result; } }, filesystem.additionalFilesystemRules);
49
61
  await assert();
50
62
  return Object.freeze({ transport, additionalFilesystemRules: filesystem.additionalFilesystemRules, current,
63
+ accountEmail: selectedAccountEmail,
51
64
  close: async () => { input.signal.removeEventListener('abort', abort); await close(); } });
52
65
  }
53
66
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"codexSetupOwnedConnection.js","sourceRoot":"","sources":["../src/codexSetupOwnedConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codexSetupOwnedConnection.js","sourceRoot":"","sources":["../src/codexSetupOwnedConnection.ts"],"names":[],"mappings":"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"}
@@ -103,6 +103,20 @@ test('owning connection cancellation cooperatively closes only its captured tran
103
103
  await connection.close();
104
104
  assert.equal(f.counts.closes, 1);
105
105
  });
106
+ test('explicit current-account selection captures the official account and refuses a later switch', async () => {
107
+ const f = await connectionFixture();
108
+ const connection = await f.open({ ...f.input, expectedAccountEmail: undefined, accountSelection: 'current_authenticated' });
109
+ assert.equal(connection.accountEmail, 'synthetic@example.test');
110
+ f.setAccount('different@example.test');
111
+ assert.equal(await connection.current(), false);
112
+ await connection.close();
113
+ assert.equal(f.counts.closes, 1);
114
+ });
115
+ test('current-account selection never accepts a conflicting empty exact-account option', async () => {
116
+ const f = await connectionFixture();
117
+ await assert.rejects(f.open({ ...f.input, expectedAccountEmail: '', accountSelection: 'current_authenticated' }));
118
+ assert.equal(f.counts.launches, 0);
119
+ });
106
120
  async function controllerFixture() {
107
121
  const now = Date.now(), id = (n) => `${String(n).padStart(8, '0')}-1111-4111-8111-111111111111`;
108
122
  let allowed = true, connections = 0, starts = 0, connectionCloses = 0, hostCloses = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"codexSetupOwnedConnection.test.js","sourceRoot":"","sources":["../src/codexSetupOwnedConnection.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,eAAe,EAAC,MAAM,SAAS,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAC,yBAAyB,EAAC,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAC,2BAA2B,EAAE,8BAA8B,EAAC,MAAM,2BAA2B,CAAC;AACtG,OAAO,EAAC,2BAA2B,EAAC,MAAM,YAAY,CAAC;AAEvD,gFAAgF;AAChF,KAAK,UAAU,WAAW,CAAC,IAAY,EAAE,IAAY,EAAE,YAAqC;IAC1F,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,GAAG,CAAC,UAAU,IAAI,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IAClF,MAAM,GAAG,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC;IAC1G,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAChC,MAAM,QAAQ,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAC,eAAe,EAAE;YAC9E,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ;SAAC,EAAE,iBAAiB,EAAE,IAAI,EAAC,CAAC,CAAC;IAC7F,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACtG,OAAO,eAAe,CAAC,GAAG,QAAQ,CAAC,UAAU,YAAY,IAAI,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAC1G,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAqD,CAAC;AAC5F,CAAC;AAED,KAAK,UAAU,iBAAiB;IAC9B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IAAC,IAAI,OAAO,GAAG,IAAI,EAAE,OAAO,GAAG,wBAAwB,CAAC;IAC7F,IAAI,QAAQ,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,YAAY,GAAG,KAAK,EAAE,eAAe,GAAG,KAAK,CAAC;IAC5E,IAAI,MAAW,EAAE,UAAe,CAAC;IACjC,MAAM,SAAS,GAAG,EAAC,MAAM,EAAE,IAAI,eAAe,EAAE,CAAC,MAAM;QACrD,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,MAAe;YAC3C,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAC,YAAY,EAAE,KAAK,EAAC,CAAC,CAAC;YACtF,OAAO,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAC,EAAC,CAAC;QACtD,CAAC,EAAE,KAAK,CAAC,KAAK,KAAI,MAAM,EAAE,CAAC,CAAA,CAAC,EAAC,CAAC;IAChC,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,8BAA8B,EAAE,+BAA+B,EAAE;QAC9F,OAAO,EAAE,EAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,EAAC,gBAAgB,EAAE,uBAAuB,EAAC,EAAC,EAAE,OAAO;QACvF,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,2BAA2B,CAAC;QACnD,qBAAqB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAC,IAAI,EAAE,uBAAuB,EAAE,UAAU,EAAE,OAAO,CAAC,4BAA4B,CAAC,EAAC,CAAC;QACjH,oBAAoB,EAAE,KAAK,EAAE,KAAc,EAAE,EAAE;YAC7C,UAAU,GAAG,KAAK,CAAC;YAAC,IAAI,eAAe;gBAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;YACzF,OAAO,EAAC,IAAI,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,EAAC,SAAS,EAAE,MAAM,EAAC,EAAE,kBAAkB,EAAE,oCAAoC;gBAClJ,WAAW,EAAE,EAAC,IAAI,EAAE,oDAAoD,EAAE,UAAU,EAAE,OAAO,CAAC,4BAA4B,CAAC,EAAC,EAAC,CAAC;QAClI,CAAC;QACD,2BAA2B,EAAE,KAAK,EAAE,KAAc,EAAE,EAAE,GAAE,MAAM,GAAG,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,SAAS,CAAC,CAAA,CAAC;QACtG,+BAA+B,EAAE,KAAK,EAAE,UAAmB,EAAE,UAAkB,EAAE,KAAU,EAAE,EAAE;YAC7F,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,GAAE,IAAI,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAA,CAAC,CAAC,CAAC;QACtI,CAAC;KACF,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,EAAC,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,0BAA0B,CAAC;QACpG,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,EAAC,CAAC;IACvG,OAAO,EAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,KAAc,IAAG,OAAO,GAAG,KAAK,CAAC,CAAA,CAAC;QACnF,UAAU,CAAC,KAAa,IAAG,OAAO,GAAG,KAAK,CAAC,CAAA,CAAC,EAAE,WAAW,KAAI,YAAY,GAAG,IAAI,CAAC,CAAA,CAAC,EAAE,cAAc,KAAI,eAAe,GAAG,IAAI,CAAC,CAAA,CAAC;QAC9H,IAAI,MAAM,KAAI,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAC,CAAC,CAAA,CAAC,EAAE,IAAI,MAAM,KAAI,OAAO,MAAM,CAAC,CAAA,CAAC,EAAE,IAAI,UAAU,KAAI,OAAO,UAAU,CAAC,CAAA,CAAC,EAAC,CAAC;AACrH,CAAC;AAED,IAAI,CAAC,gFAAgF,EAAE,KAAK,IAAI,EAAE;IAChG,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,EAAE,UAAU,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,EAAC,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAC,CAAC,CAAC;IACvH,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,oCAAoC,CAAC,CAAC;IACtH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;IAC/D,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,oDAAoD,CAAC,CAAC;IAC9F,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IACjH,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACjE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,CAAC;IAC7D,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,mDAAmD,CAAC,CAAC,CAAC;IACvF,MAAM,CAAC,KAAK,CAAC,MAAM,UAAU,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;IAAC,MAAM,CAAC,KAAK,CAAC,MAAM,UAAU,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;IACtF,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;IAAC,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;IAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AACvF,CAAC,CAAC,CAAC;AACH,KAAK,MAAM,KAAK,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAU,EAAE,CAAC;IACtE,IAAI,CAAC,2BAA2B,KAAK,kBAAkB,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,CAAC;QACpC,IAAI,KAAK,KAAK,WAAW;YAAE,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,KAAK,KAAK,WAAW;YAAE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC5C,IAAI,KAAK,KAAK,YAAY;YAAE,CAAC,CAAC,cAAc,EAAE,CAAC;QAC/C,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACL,CAAC;AACD,KAAK,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,SAAS,CAAU,EAAE,CAAC;IACpD,IAAI,CAAC,iDAAiD,KAAK,0CAA0C,EAAE,KAAK,IAAI,EAAE;QAChH,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,CAAC;QACpC,IAAI,KAAK,KAAK,SAAS;YAAE,CAAC,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;;YAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACpF,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,mDAAmD,CAAC,CAAC;QAC3F,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,EAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAC,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACL,CAAC;AACD,IAAI,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;IACjG,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,EAAE,UAAU,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACxE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAAC,MAAM,CAAC,KAAK,CAAC,MAAM,UAAU,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;IAClE,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;IAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC;AAEH,KAAK,UAAU,iBAAiB;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,8BAA8B,CAAC;IACxG,IAAI,OAAO,GAAG,IAAI,EAAE,WAAW,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,gBAAgB,GAAG,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC;IACtF,IAAI,OAAY,EAAE,MAAmB,EAAE,SAAS,GAAG,KAAK,EAAE,kBAAkB,GAAG,KAAK,EAAE,aAAa,GAAG,IAAI,EAAE,eAAe,GAAG,IAAI,CAAC;IACnI,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,IAAI,CAAC,EAAE,GAAE,MAAM,GAAG,IAAI,CAAC,CAAA,CAAC,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,EAAC,SAAS,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,EAAE,yBAAyB,EAAE,EAAC,OAAO,EAAE,MAAM,EAAC;QAC3F,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,GAAE,gBAAgB,EAAE,CAAC,CAAA,CAAC,EAAC,CAAC;IAC1E,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE,8BAA8B,EAAE,EAAC,yBAAyB;QACnG,2BAA2B,EAAE,8BAA8B,EAAE,2BAA2B;QACxF,yBAAyB,EAAE,GAAG,EAAE,CAAC,SAAS;QAC1C,mCAAmC,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAC,WAAW,EAAE,aAAa;gBAC3E,CAAC,CAAC,2BAA2B,CAAC,iCAAiC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAC,CAAC;QAC7G,iCAAiC,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAC,MAAM,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAC,CAAC;QACnG,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,0BAA0B,CAAC;QACrD,6BAA6B,EAAE,KAAK,IAAI,EAAE,GAAE,WAAW,EAAE,CAAC,CAAC,OAAO,UAAU,CAAC,CAAA,CAAC;QAC9E,6BAA6B,EAAE,KAAK,EAAE,KAAc,EAAE,EAAE;YACtD,MAAM,EAAE,CAAC;YAAC,OAAO,GAAG,KAAK,CAAC;YAAC,IAAI,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YACrF,IAAI,kBAAkB;gBAAE,OAAO,GAAG,KAAK,CAAC;YACxC,OAAO,EAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,GAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA,CAAC,EAAC,CAAC;QACrH,CAAC,EAAC,CAAC,CAAC;IACN,MAAM,KAAK,GAAG,EAAC,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,eAAe,EAAE,CAAC,MAAM;QAC9G,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,EAAE,wBAAwB,EAAE,EAAE;QACrF,wBAAwB,EAAE,EAAC,cAAc,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,iCAAiC,EAAC;QAC5H,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,EAAE,EAAC,MAAM,EAAE,8BAA8B;YAC7F,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,qBAAqB,EAAE,EAAE,CAAC,CAAC,CAAC;YACnG,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,2BAA2B,CAAC,iCAAiC,CAAC,CAAC,WAAW;YACrJ,WAAW,EAAE,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,WAAW;YAChH,QAAQ,EAAE,IAAI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,EAAC,EAAC,CAAC;IACpG,OAAO,EAAC,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,OAAO,KAAI,OAAO,OAAO,CAAC,CAAA,CAAC;QACtE,UAAU,CAAC,KAAc,IAAG,OAAO,GAAG,KAAK,CAAC,CAAA,CAAC,EAAE,SAAS,KAAI,SAAS,GAAG,IAAI,CAAC,CAAA,CAAC,EAAE,kBAAkB,KAAI,kBAAkB,GAAG,IAAI,CAAC,CAAA,CAAC;QACjI,UAAU,KAAI,aAAa,GAAG,KAAK,CAAC,CAAA,CAAC,EAAE,YAAY,KAAI,eAAe,GAAG,KAAK,CAAC,CAAA,CAAC;QAChF,IAAI,MAAM,KAAI,OAAO,EAAC,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAC,CAAC,CAAA,CAAC,EAAC,CAAC;AAChF,CAAC;AACD,IAAI,CAAC,mGAAmG,EAAE,KAAK,IAAI,EAAE;IACnH,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,EAAE,IAAI,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,EAAC,GAAG,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,EAAC,CAAC,CAAC;IACnG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACjH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IACvG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACtG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IAAC,MAAM,IAAI,CAAC,OAAO,CAAC;IACvC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,EAAC,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAC,CAAC,CAAC;AAC9F,CAAC,CAAC,CAAC;AACH,IAAI,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;IAC5F,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,EAAE,IAAI,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAClE,CAAC,CAAC,MAAM,EAAE,CAAC;IAAC,MAAM,IAAI,CAAC,OAAO,CAAC;IAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC,CAAC;AAEH,SAAS,YAAY,CAAC,MAA0G;IAC9H,OAAO,wDAAwD;UAC3D,oDAAoD,MAAM,CAAC,cAAc,KAAK;UAC9E,sEAAsE,MAAM,CAAC,qBAAqB,KAAK;UACvG,2BAA2B,MAAM,CAAC,cAAc,mBAAmB,MAAM,CAAC,SAAS,KAAK;UACxF,8CAA8C,CAAC;AACrD,CAAC;AAED,IAAI,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;IACjG,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,EAAC,GAAG,CAAC,CAAC,KAAK,EAAE,oBAAoB,EAAE,6BAA6B,EAAE,iBAAiB,EAAE,MAAM,EAAC,CAAC,CAAC;IACxH,IAAI,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAC;IAC5F,CAAC;YACO,CAAC;QAAA,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QAAC,MAAM,IAAI,CAAC,OAAO,CAAC;IAAA,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sGAAsG,EAAE,KAAK,IAAI,EAAE;IACtH,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,iBAAiB,EAAE,gBAAgB,CAAU,EAAE,CAAC;QACzF,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,EAAC,GAAG,CAAC,CAAC,KAAK,CAAC,wBAAwB,EAAC,CAAC;QACtD,IAAI,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,IAAI,KAAK,WAAW;YAAE,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,sBAAsB,CAAC,CAAC;QAClG,IAAI,IAAI,KAAK,QAAQ;YAAE,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,mCAAmC,CAAC,CAAC;QACjH,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAC9B,OAAO,CAAC,mBAAmB,GAAG,mCAAmC,CAAC;YAClE,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAC7G,CAAC;QACD,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAC,GAAG,CAAC,CAAC,KAAK,EAAE,iBAAiB,EAAE,MAAM;YAChE,wBAAwB,EAAE,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,EAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC;QACzG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8FAA8F,EAAE,KAAK,IAAI,EAAE;IAC9G,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,CAAC;IACpC,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;QAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,EAAC,GAAG,CAAC,CAAC,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAC,CAAC,CAAC;QACrF,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC,EAAE,4CAA4C,CAAC,CAAC;IACjD,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,EAAC,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAC,CAAC,CAAC;AAC9F,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2FAA2F,EAAE,KAAK,IAAI,EAAE;IAC3G,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3E,MAAM,KAAK,GAAG,EAAC,GAAG,CAAC,CAAC,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAC,CAAC;IACtD,KAAK,CAAC,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,KAAK,CAAC,iBAAiB,GAAG,qBAAqB,CAAC;QAChD,KAAK,CAAC,wBAAwB,CAAC,cAAc,GAAG,sBAAsB,CAAC;QACvE,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAC;IAC5F,CAAC;YACO,CAAC;QAAA,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QAAC,MAAM,IAAI,CAAC,OAAO,CAAC;IAAA,CAAC;AACnD,CAAC,CAAC,CAAC;AACH,KAAK,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,0BAA0B,EAAE,QAAQ,CAAU,EAAE,CAAC;IACvF,IAAI,CAAC,8BAA8B,KAAK,4BAA4B,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS;YAC/E,CAAC,CAAC,KAAK,KAAK,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAC,CAAC;QAC9F,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACtG,CAAC,CAAC,CAAC;AACL,CAAC;AACD,IAAI,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;IAC3F,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACzD,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,qCAAqC,CAAC,CAAC;IAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AACtH,CAAC,CAAC,CAAC;AACH,KAAK,MAAM,KAAK,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAU,EAAE,CAAC;IACpD,IAAI,CAAC,iCAAiC,KAAK,iCAAiC,EAAE,KAAK,IAAI,EAAE;QACvF,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,CAAC;QAAC,IAAI,KAAK,KAAK,QAAQ;YAAE,CAAC,CAAC,UAAU,EAAE,CAAC;;YAAM,CAAC,CAAC,YAAY,EAAE,CAAC;QACnG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,qCAAqC,CAAC,CAAC;QAC7E,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AACD,IAAI,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;IACtF,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACnD,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,8CAA8C,CAAC,CAAC;IACtF,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC;AACH,IAAI,CAAC,gFAAgF,EAAE,KAAK,IAAI,EAAE;IAChG,MAAM,CAAC,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC;IAC5D,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,8CAA8C,CAAC,CAAC;IACtF,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;AACnF,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"codexSetupOwnedConnection.test.js","sourceRoot":"","sources":["../src/codexSetupOwnedConnection.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=codexSetupPortalIngress.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codexSetupPortalIngress.test.d.ts","sourceRoot":"","sources":["../src/codexSetupPortalIngress.test.ts"],"names":[],"mappings":""}