@zarel-ai/sdk 0.6.0 → 0.7.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.
- package/LICENSE +1 -1
- package/README.md +29 -31
- package/dist/_internal/auth-headers.d.ts +3 -3
- package/dist/_internal/auth-headers.d.ts.map +1 -1
- package/dist/_internal/auth-headers.js +5 -3
- package/dist/_internal/auth-headers.js.map +1 -1
- package/dist/_internal/confirmation.d.ts +1 -1
- package/dist/_internal/confirmation.d.ts.map +1 -1
- package/dist/_internal/confirmation.js +3 -1
- package/dist/_internal/confirmation.js.map +1 -1
- package/dist/_internal/event-iterator.d.ts.map +1 -1
- package/dist/_internal/event-iterator.js +3 -1
- package/dist/_internal/event-iterator.js.map +1 -1
- package/dist/_internal/fetch-client.d.ts +26 -18
- package/dist/_internal/fetch-client.d.ts.map +1 -1
- package/dist/_internal/fetch-client.js +40 -35
- package/dist/_internal/fetch-client.js.map +1 -1
- package/dist/_internal/interceptors.d.ts.map +1 -1
- package/dist/_internal/interceptors.js.map +1 -1
- package/dist/_internal/mcp.d.ts.map +1 -1
- package/dist/_internal/mcp.js +6 -4
- package/dist/_internal/mcp.js.map +1 -1
- package/dist/_internal/pagination.d.ts +5 -5
- package/dist/_internal/pagination.d.ts.map +1 -1
- package/dist/_internal/pagination.js +7 -5
- package/dist/_internal/pagination.js.map +1 -1
- package/dist/_internal/require-token.d.ts +4 -4
- package/dist/_internal/require-token.d.ts.map +1 -1
- package/dist/_internal/require-token.js +6 -4
- package/dist/_internal/require-token.js.map +1 -1
- package/dist/_internal/retry-after.d.ts.map +1 -1
- package/dist/_internal/retry-after.js +2 -0
- package/dist/_internal/retry-after.js.map +1 -1
- package/dist/_internal/sse-client.d.ts.map +1 -1
- package/dist/_internal/sse-client.js +4 -3
- package/dist/_internal/sse-client.js.map +1 -1
- package/dist/_internal/version.d.ts +2 -2
- package/dist/_internal/version.d.ts.map +1 -1
- package/dist/_internal/version.js +4 -2
- package/dist/_internal/version.js.map +1 -1
- package/dist/client.d.ts +8 -8
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +10 -10
- package/dist/client.js.map +1 -1
- package/dist/contract/_singleton.d.ts +31 -6
- package/dist/contract/_singleton.d.ts.map +1 -1
- package/dist/contract/_singleton.js +30 -6
- package/dist/contract/_singleton.js.map +1 -1
- package/dist/contract/actions.d.ts +16 -4
- package/dist/contract/actions.d.ts.map +1 -1
- package/dist/contract/actions.js +13 -12
- package/dist/contract/actions.js.map +1 -1
- package/dist/contract/assistant.d.ts +3 -3
- package/dist/contract/assistant.d.ts.map +1 -1
- package/dist/contract/assistant.js +13 -11
- package/dist/contract/assistant.js.map +1 -1
- package/dist/contract/batch.d.ts +9 -20
- package/dist/contract/batch.d.ts.map +1 -1
- package/dist/contract/batch.js +14 -6
- package/dist/contract/batch.js.map +1 -1
- package/dist/contract/capabilities.d.ts +7 -13
- package/dist/contract/capabilities.d.ts.map +1 -1
- package/dist/contract/capabilities.js +10 -8
- package/dist/contract/capabilities.js.map +1 -1
- package/dist/contract/constraints.d.ts +7 -13
- package/dist/contract/constraints.d.ts.map +1 -1
- package/dist/contract/constraints.js +10 -8
- package/dist/contract/constraints.js.map +1 -1
- package/dist/contract/events.d.ts +9 -13
- package/dist/contract/events.d.ts.map +1 -1
- package/dist/contract/events.js +12 -13
- package/dist/contract/events.js.map +1 -1
- package/dist/contract/flows.d.ts +30 -19
- package/dist/contract/flows.d.ts.map +1 -1
- package/dist/contract/flows.js +46 -29
- package/dist/contract/flows.js.map +1 -1
- package/dist/contract/index.d.ts +207 -32
- package/dist/contract/index.d.ts.map +1 -1
- package/dist/contract/index.js +13 -14
- package/dist/contract/index.js.map +1 -1
- package/dist/contract/metadata.d.ts +6 -20
- package/dist/contract/metadata.d.ts.map +1 -1
- package/dist/contract/metadata.js +16 -8
- package/dist/contract/metadata.js.map +1 -1
- package/dist/contract/process-model.d.ts +10 -15
- package/dist/contract/process-model.d.ts.map +1 -1
- package/dist/contract/process-model.js +11 -9
- package/dist/contract/process-model.js.map +1 -1
- package/dist/contract/roots/channels.d.ts.map +1 -1
- package/dist/contract/roots/channels.js +12 -10
- package/dist/contract/roots/channels.js.map +1 -1
- package/dist/contract/roots/events.d.ts.map +1 -1
- package/dist/contract/roots/events.js +2 -0
- package/dist/contract/roots/events.js.map +1 -1
- package/dist/contract/roots/index.d.ts +3 -2
- package/dist/contract/roots/index.d.ts.map +1 -1
- package/dist/contract/roots/index.js +13 -12
- package/dist/contract/roots/index.js.map +1 -1
- package/dist/contract/roots/mcp-servers.d.ts +11 -29
- package/dist/contract/roots/mcp-servers.d.ts.map +1 -1
- package/dist/contract/roots/mcp-servers.js +22 -18
- package/dist/contract/roots/mcp-servers.js.map +1 -1
- package/dist/contract/roots/profiles.d.ts +13 -12
- package/dist/contract/roots/profiles.d.ts.map +1 -1
- package/dist/contract/roots/profiles.js +18 -7
- package/dist/contract/roots/profiles.js.map +1 -1
- package/dist/contract/roots/timezone.d.ts +3 -3
- package/dist/contract/roots/timezone.d.ts.map +1 -1
- package/dist/contract/roots/timezone.js +5 -2
- package/dist/contract/roots/timezone.js.map +1 -1
- package/dist/contract/roots/treatment.d.ts +3 -2
- package/dist/contract/roots/treatment.d.ts.map +1 -1
- package/dist/contract/roots/treatment.js +8 -8
- package/dist/contract/roots/treatment.js.map +1 -1
- package/dist/contract/roots/vocabulary.d.ts +20 -13
- package/dist/contract/roots/vocabulary.d.ts.map +1 -1
- package/dist/contract/roots/vocabulary.js +28 -9
- package/dist/contract/roots/vocabulary.js.map +1 -1
- package/dist/contract/schemas.d.ts +7 -10
- package/dist/contract/schemas.d.ts.map +1 -1
- package/dist/contract/schemas.js +10 -8
- package/dist/contract/schemas.js.map +1 -1
- package/dist/contract/skills.d.ts +14 -4
- package/dist/contract/skills.d.ts.map +1 -1
- package/dist/contract/skills.js +11 -11
- package/dist/contract/skills.js.map +1 -1
- package/dist/errors.d.ts +4 -4
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +4 -4
- package/dist/errors.js.map +1 -1
- package/dist/generated/contract.d.ts +4494 -706
- package/dist/generated/contract.d.ts.map +1 -1
- package/dist/generated/index.d.ts +119 -7
- package/dist/generated/index.d.ts.map +1 -1
- package/dist/generated/runtime.d.ts +1490 -368
- package/dist/generated/runtime.d.ts.map +1 -1
- package/dist/generated/unwrap-map.d.ts +5 -2
- package/dist/generated/unwrap-map.d.ts.map +1 -1
- package/dist/generated/unwrap-map.js +5 -5
- package/dist/generated/unwrap-map.js.map +1 -1
- package/dist/index.d.ts +9 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -3
- package/dist/index.js.map +1 -1
- package/dist/resources/actions.d.ts +5 -6
- package/dist/resources/actions.d.ts.map +1 -1
- package/dist/resources/actions.js +9 -10
- package/dist/resources/actions.js.map +1 -1
- package/dist/resources/audit.d.ts +6 -6
- package/dist/resources/audit.d.ts.map +1 -1
- package/dist/resources/audit.js +3 -25
- package/dist/resources/audit.js.map +1 -1
- package/dist/resources/authorization-ceiling.d.ts +2 -2
- package/dist/resources/authorization-ceiling.d.ts.map +1 -1
- package/dist/resources/authorization-ceiling.js +8 -7
- package/dist/resources/authorization-ceiling.js.map +1 -1
- package/dist/resources/authorization-operation-ids.d.ts +1 -1
- package/dist/resources/authorization-operation-ids.d.ts.map +1 -1
- package/dist/resources/authorization-operation-ids.js +4 -2
- package/dist/resources/authorization-operation-ids.js.map +1 -1
- package/dist/resources/authorization.d.ts +53 -19
- package/dist/resources/authorization.d.ts.map +1 -1
- package/dist/resources/authorization.js +24 -6
- package/dist/resources/authorization.js.map +1 -1
- package/dist/resources/authorizations.d.ts +3 -5
- package/dist/resources/authorizations.d.ts.map +1 -1
- package/dist/resources/authorizations.js +4 -2
- package/dist/resources/authorizations.js.map +1 -1
- package/dist/resources/channels.d.ts +7 -7
- package/dist/resources/channels.d.ts.map +1 -1
- package/dist/resources/channels.js +10 -10
- package/dist/resources/channels.js.map +1 -1
- package/dist/resources/contracts.d.ts +2 -2
- package/dist/resources/contracts.d.ts.map +1 -1
- package/dist/resources/contracts.js +15 -14
- package/dist/resources/contracts.js.map +1 -1
- package/dist/resources/conversation-sessions.d.ts +19 -20
- package/dist/resources/conversation-sessions.d.ts.map +1 -1
- package/dist/resources/conversation-sessions.js +17 -22
- package/dist/resources/conversation-sessions.js.map +1 -1
- package/dist/resources/conversation.d.ts +4 -4
- package/dist/resources/conversation.d.ts.map +1 -1
- package/dist/resources/conversation.js +13 -11
- package/dist/resources/conversation.js.map +1 -1
- package/dist/resources/embedding-credentials.d.ts +3 -3
- package/dist/resources/embedding-credentials.d.ts.map +1 -1
- package/dist/resources/embedding-credentials.js +8 -6
- package/dist/resources/embedding-credentials.js.map +1 -1
- package/dist/resources/entities.d.ts +50 -32
- package/dist/resources/entities.d.ts.map +1 -1
- package/dist/resources/entities.js +51 -32
- package/dist/resources/entities.js.map +1 -1
- package/dist/resources/events.d.ts +4 -5
- package/dist/resources/events.d.ts.map +1 -1
- package/dist/resources/events.js +12 -11
- package/dist/resources/events.js.map +1 -1
- package/dist/resources/flows.d.ts +18 -15
- package/dist/resources/flows.d.ts.map +1 -1
- package/dist/resources/flows.js +41 -27
- package/dist/resources/flows.js.map +1 -1
- package/dist/resources/imports.d.ts.map +1 -1
- package/dist/resources/imports.js +1 -1
- package/dist/resources/imports.js.map +1 -1
- package/dist/resources/index.d.ts +3 -2
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +6 -2
- package/dist/resources/index.js.map +1 -1
- package/dist/resources/llm-credentials.d.ts +21 -6
- package/dist/resources/llm-credentials.d.ts.map +1 -1
- package/dist/resources/llm-credentials.js +25 -10
- package/dist/resources/llm-credentials.js.map +1 -1
- package/dist/resources/llm-services.d.ts +8 -8
- package/dist/resources/llm-services.d.ts.map +1 -1
- package/dist/resources/llm-services.js +11 -9
- package/dist/resources/llm-services.js.map +1 -1
- package/dist/resources/mcp.d.ts.map +1 -1
- package/dist/resources/mcp.js +5 -3
- package/dist/resources/mcp.js.map +1 -1
- package/dist/resources/receipts.d.ts +1 -1
- package/dist/resources/receipts.d.ts.map +1 -1
- package/dist/resources/receipts.js +1 -1
- package/dist/resources/receipts.js.map +1 -1
- package/dist/resources/records.d.ts +1 -1
- package/dist/resources/records.d.ts.map +1 -1
- package/dist/resources/records.js +7 -5
- package/dist/resources/records.js.map +1 -1
- package/dist/resources/role-assignments.d.ts +4 -5
- package/dist/resources/role-assignments.d.ts.map +1 -1
- package/dist/resources/role-assignments.js +8 -7
- package/dist/resources/role-assignments.js.map +1 -1
- package/dist/resources/roles.d.ts +23 -23
- package/dist/resources/roles.d.ts.map +1 -1
- package/dist/resources/roles.js +20 -14
- package/dist/resources/roles.js.map +1 -1
- package/dist/resources/runtime-entities.d.ts +12 -9
- package/dist/resources/runtime-entities.d.ts.map +1 -1
- package/dist/resources/runtime-entities.js +5 -8
- package/dist/resources/runtime-entities.js.map +1 -1
- package/dist/resources/state-machine.d.ts +6 -12
- package/dist/resources/state-machine.d.ts.map +1 -1
- package/dist/resources/state-machine.js +17 -21
- package/dist/resources/state-machine.js.map +1 -1
- package/dist/resources/system.d.ts.map +1 -1
- package/dist/resources/system.js +5 -5
- package/dist/resources/system.js.map +1 -1
- package/dist/resources/tools.d.ts +2 -2
- package/dist/resources/tools.d.ts.map +1 -1
- package/dist/resources/tools.js +7 -5
- package/dist/resources/tools.js.map +1 -1
- package/dist/resources/traces.d.ts +1 -7
- package/dist/resources/traces.d.ts.map +1 -1
- package/dist/resources/traces.js +4 -29
- package/dist/resources/traces.js.map +1 -1
- package/dist/runtime/index.d.ts +4 -2
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +21 -17
- package/dist/runtime/index.js.map +1 -1
- package/dist/types/actions.d.ts +7 -8
- package/dist/types/actions.d.ts.map +1 -1
- package/dist/types/actions.js +4 -2
- package/dist/types/actions.js.map +1 -1
- package/dist/types/audit.d.ts +5 -7
- package/dist/types/audit.d.ts.map +1 -1
- package/dist/types/audit.js +6 -6
- package/dist/types/audit.js.map +1 -1
- package/dist/types/channels.d.ts +1 -1
- package/dist/types/channels.d.ts.map +1 -1
- package/dist/types/channels.js +5 -3
- package/dist/types/channels.js.map +1 -1
- package/dist/types/collections-contract.d.ts +50 -0
- package/dist/types/collections-contract.d.ts.map +1 -0
- package/dist/types/collections-contract.js +22 -0
- package/dist/types/collections-contract.js.map +1 -0
- package/dist/types/confirmation.d.ts +4 -4
- package/dist/types/confirmation.d.ts.map +1 -1
- package/dist/types/confirmation.js +6 -4
- package/dist/types/confirmation.js.map +1 -1
- package/dist/types/contracts.d.ts +12 -15
- package/dist/types/contracts.d.ts.map +1 -1
- package/dist/types/contracts.js +5 -4
- package/dist/types/contracts.js.map +1 -1
- package/dist/types/conversation-sessions.d.ts +1 -1
- package/dist/types/conversation-sessions.d.ts.map +1 -1
- package/dist/types/conversation-sessions.js +3 -1
- package/dist/types/conversation-sessions.js.map +1 -1
- package/dist/types/conversation.d.ts +13 -40
- package/dist/types/conversation.d.ts.map +1 -1
- package/dist/types/entities.d.ts +52 -16
- package/dist/types/entities.d.ts.map +1 -1
- package/dist/types/entities.js +12 -0
- package/dist/types/entities.js.map +1 -1
- package/dist/types/events-stream.d.ts +2 -2
- package/dist/types/events-stream.d.ts.map +1 -1
- package/dist/types/events-stream.js +6 -4
- package/dist/types/events-stream.js.map +1 -1
- package/dist/types/flows-contract.d.ts +28 -7
- package/dist/types/flows-contract.d.ts.map +1 -1
- package/dist/types/flows-contract.js +11 -4
- package/dist/types/flows-contract.js.map +1 -1
- package/dist/types/flows.d.ts +27 -58
- package/dist/types/flows.d.ts.map +1 -1
- package/dist/types/flows.js +8 -20
- package/dist/types/flows.js.map +1 -1
- package/dist/types/imports.d.ts +9 -0
- package/dist/types/imports.d.ts.map +1 -1
- package/dist/types/index.d.ts +8 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/locale.d.ts +2 -2
- package/dist/types/locale.d.ts.map +1 -1
- package/dist/types/locale.js +4 -2
- package/dist/types/locale.js.map +1 -1
- package/dist/types/mcp-and-events-contract.d.ts +51 -0
- package/dist/types/mcp-and-events-contract.d.ts.map +1 -0
- package/dist/types/mcp-and-events-contract.js +20 -0
- package/dist/types/mcp-and-events-contract.js.map +1 -0
- package/dist/types/mcp.d.ts.map +1 -1
- package/dist/types/mcp.js +3 -1
- package/dist/types/mcp.js.map +1 -1
- package/dist/types/platform.d.ts +12 -12
- package/dist/types/platform.d.ts.map +1 -1
- package/dist/types/platform.js +0 -1
- package/dist/types/platform.js.map +1 -1
- package/dist/types/receipt.d.ts +3 -5
- package/dist/types/receipt.d.ts.map +1 -1
- package/dist/types/receipt.js +5 -5
- package/dist/types/receipt.js.map +1 -1
- package/dist/types/records.d.ts +3 -3
- package/dist/types/records.d.ts.map +1 -1
- package/dist/types/records.js +2 -0
- package/dist/types/records.js.map +1 -1
- package/dist/types/spec.d.ts +2 -2
- package/dist/types/spec.d.ts.map +1 -1
- package/dist/types/state-machine.d.ts +48 -84
- package/dist/types/state-machine.d.ts.map +1 -1
- package/dist/types/state-machine.js +9 -4
- package/dist/types/state-machine.js.map +1 -1
- package/dist/types/system.d.ts.map +1 -1
- package/dist/types/tools.d.ts +36 -28
- package/dist/types/tools.d.ts.map +1 -1
- package/dist/types/tools.js +6 -6
- package/dist/types/tools.js.map +1 -1
- package/dist/types/traces.d.ts +6 -9
- package/dist/types/traces.d.ts.map +1 -1
- package/dist/types/traces.js +5 -5
- package/dist/types/traces.js.map +1 -1
- package/dist/types/treatment-contract.d.ts +70 -0
- package/dist/types/treatment-contract.d.ts.map +1 -0
- package/dist/types/treatment-contract.js +20 -0
- package/dist/types/treatment-contract.js.map +1 -0
- package/dist/types/workflows.d.ts +14 -0
- package/dist/types/workflows.d.ts.map +1 -1
- package/dist/types/workflows.js +7 -6
- package/dist/types/workflows.js.map +1 -1
- package/package.json +93 -96
- package/dist/contract/governance.d.ts +0 -6
- package/dist/contract/governance.d.ts.map +0 -1
- package/dist/contract/governance.js +0 -17
- package/dist/contract/governance.js.map +0 -1
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @zarel-ai/sdk
|
|
2
2
|
|
|
3
|
-
TypeScript SDK for the [Zarel](https://zarel.
|
|
3
|
+
TypeScript SDK for the [Zarel](https://zarel.ai) API.
|
|
4
4
|
|
|
5
5
|
## Installation
|
|
6
6
|
|
|
@@ -20,17 +20,17 @@ independent JWT.
|
|
|
20
20
|
import { Zarel } from '@zarel-ai/sdk';
|
|
21
21
|
|
|
22
22
|
const zarel = new Zarel({
|
|
23
|
-
tenant: '
|
|
23
|
+
tenant: 'acmecorp',
|
|
24
24
|
runtimeToken: process.env.ZAREL_RUNTIME_TOKEN!, // JWT class: tenant
|
|
25
25
|
contractToken: process.env.ZAREL_CONTRACT_TOKEN!, // JWT class: contract
|
|
26
26
|
});
|
|
27
27
|
|
|
28
|
-
// ── runtime plane (https://
|
|
28
|
+
// ── runtime plane (https://acmecorp.zarel.ai/v1) ────────────
|
|
29
29
|
const reply = await zarel.runtime.conversation.send({ message: 'List pending tickets' });
|
|
30
30
|
const tickets = await zarel.runtime.records.list('tickets');
|
|
31
31
|
await zarel.runtime.actions.dispatch('cancel_booking', { record_id: 42 });
|
|
32
32
|
|
|
33
|
-
// ── contract plane (https://
|
|
33
|
+
// ── contract plane (https://acmecorp.admin.zarel.ai/v1) ─────
|
|
34
34
|
const diff = await zarel.contract.spec.diff(yamlSource);
|
|
35
35
|
await zarel.contract.entities.create({ name: 'orders' /* ... */ });
|
|
36
36
|
await zarel.contract.actions.patch('replace_component', { enforcement: 'advisory' });
|
|
@@ -41,7 +41,7 @@ other plane throws `ZarelAuthError` with a code identifying which token
|
|
|
41
41
|
is missing (`runtime_token_missing` / `contract_token_missing`). See
|
|
42
42
|
[Error Handling](#error-handling).
|
|
43
43
|
|
|
44
|
-
Tenant provisioning
|
|
44
|
+
Tenant provisioning is not part of this SDK; it
|
|
45
45
|
operates against a tenant that already exists.
|
|
46
46
|
|
|
47
47
|
## Configuration
|
|
@@ -52,8 +52,8 @@ operates against a tenant that already exists.
|
|
|
52
52
|
| `runtimeToken` | `string \| (() => string \| Promise<string>)` | — | Runtime-plane credential (`token_class: tenant`). A static JWT **or** a provider resolved before each request (auth-callback / refresh) |
|
|
53
53
|
| `contractToken` | `string \| (() => string \| Promise<string>)` | — | Contract-plane credential (`token_class: contract`); same string-or-provider shape |
|
|
54
54
|
| `transportManaged` | `boolean` | `false` | Transport-managed (no-token) mode for **both** planes: the SDK omits the `Authorization` header and skips the token-presence guard, leaving auth to a credential-injecting transport (e.g. a BFF proxy). Opt-in — direct consumers keep the token-required guard |
|
|
55
|
-
| `runtimeBaseUrl` | `string` | `https://{tenant}.zarel.
|
|
56
|
-
| `contractBaseUrl` | `string` | `https://{tenant}.admin.zarel.
|
|
55
|
+
| `runtimeBaseUrl` | `string` | `https://{tenant}.zarel.ai/v1` | Override the runtime host |
|
|
56
|
+
| `contractBaseUrl` | `string` | `https://{tenant}.admin.zarel.ai/v1` | Override the contract host |
|
|
57
57
|
| `timeout` | `number` | `30000` | Request timeout (ms) — applied to both planes |
|
|
58
58
|
| `maxRetries` | `number` | `3` | Max retries on 5xx / network errors |
|
|
59
59
|
| `retryDelay` | `number` | `500` | Base retry delay (ms, exponential backoff) |
|
|
@@ -66,7 +66,7 @@ header (effective in Node; browsers drop it — `User-Agent` is a forbidden
|
|
|
66
66
|
`fetch` header).
|
|
67
67
|
|
|
68
68
|
When `tenant` is omitted and no explicit `runtimeBaseUrl` is given, the
|
|
69
|
-
runtime plane falls back to `https://api.zarel.
|
|
69
|
+
runtime plane falls back to `https://api.zarel.ai/v1`.
|
|
70
70
|
|
|
71
71
|
## Plane Surface
|
|
72
72
|
|
|
@@ -77,7 +77,7 @@ runtime plane falls back to `https://api.zarel.ia/v1`.
|
|
|
77
77
|
| `runtime.conversation` | `send`, `clearSession`; nested `sessions.{list, get, create, delete}`, `sessions.actions.{list}` |
|
|
78
78
|
| `runtime.tools` | `list`, `mcp.list`, `call`, `userCatalog` |
|
|
79
79
|
| `runtime.records` | `list`, `get`, `create`, `update`, `delete`, `bulk` |
|
|
80
|
-
| `runtime.actions` | `dispatch`
|
|
80
|
+
| `runtime.actions` | `dispatch` |
|
|
81
81
|
| `runtime.stateMachine` | `listInstances`, `getInstance`, `listEvents`, `getEvent`, `listTransitionRequests`, `listPendingTransitions`, `getTransitionRequest`, `createTransitionRequest`, `resolveTransitionRequest`, `replay` |
|
|
82
82
|
| `runtime.flows` | `instances.{list, get}` (`list` accepts an optional `{flow}` filter), `callbacks.{resolve}` |
|
|
83
83
|
| `runtime.mcp` | `call(message)` — POST one MCP JSON-RPC message to `/runtime/mcp`, returns the typed `McpJsonRpcResponse` |
|
|
@@ -88,10 +88,10 @@ runtime plane falls back to `https://api.zarel.ia/v1`.
|
|
|
88
88
|
| `embeddings` | `credentials.{list, get, put, delete}` (per provider; write-only on the secret) |
|
|
89
89
|
| `runtime.imports` | `snapshot` |
|
|
90
90
|
| `runtime.traces` | `get`, `list`, `replay`, `bundle` |
|
|
91
|
-
| `runtime.audit` | `list(log, params?)` — paginated, filterable listing of a privacy-preserving audit
|
|
92
|
-
| `runtime.receipts` | `list(params?)` — the AUTHENTICATED caller's OWN governance receipts, normalized over the three audit signals (`refusal` \| `binding_violation` \| `validation_violation`); always scoped server-side to the token actor (no `view_traces`), returns a `PagePromise` (`await` → one page, `for await` → auto-paginate). Filter by `signal` / `trace_id` / `from` / `to`. Each receipt carries only a non-reversible proof (hash + masked value), never the raw value
|
|
91
|
+
| `runtime.audit` | `list(log, params?)` — paginated, filterable listing of a privacy-preserving audit log (`log` ∈ `binding_violations` \| `topic_refusals`); returns a `PagePromise` (`await` → one page, `for await` → auto-paginate). `evidence(log, { from?, to? })` — download a signed tamper-evidence bundle (`.tar.gz`) for an event hash-chain (`log` ∈ `state_machine` \| `flows`) for offline `zarel verify`; optional inclusive `seq` range bounds a large log (over-cap → HTTP 413) |
|
|
92
|
+
| `runtime.receipts` | `list(params?)` — the AUTHENTICATED caller's OWN governance receipts, normalized over the three audit signals (`refusal` \| `binding_violation` \| `validation_violation`); always scoped server-side to the token actor (no `view_traces`), returns a `PagePromise` (`await` → one page, `for await` → auto-paginate). Filter by `signal` / `trace_id` / `from` / `to`. Each receipt carries only a non-reversible proof (hash + masked value), never the raw value |
|
|
93
93
|
| `runtime.system` | `health`, `metrics`, `apiKeys.{list, create, delete}` |
|
|
94
|
-
| `runtime.authorizations` | `effective` — self-scoped effective-authorizations introspection
|
|
94
|
+
| `runtime.authorizations` | `effective` — self-scoped effective-authorizations introspection |
|
|
95
95
|
|
|
96
96
|
### `client.contract.*`
|
|
97
97
|
|
|
@@ -101,8 +101,8 @@ runtime plane falls back to `https://api.zarel.ia/v1`.
|
|
|
101
101
|
| `contract.entities` | `list`, `get`, `create`, `put`, `patch`, `delete`; `fields(name).{list, get, create, put, patch, delete}`; `fields(name).transitions(field).{list, get, create, put, patch, delete}` |
|
|
102
102
|
| `contract.roles` | `list`, `get`, `create`, `put`, `update`, `delete` (`put` = wholesale replace, `update` = partial patch) |
|
|
103
103
|
| `contract.flows` | `list`, `get`, `create`, `update`, `patch`, `delete`; `steps(name).{list, get, create, put, patch, delete}`; `onCompletion(name).{list, get, create, put, patch, delete}` — flow *definitions* (the `contract.flows` plane; runs live on `runtime.flows.instances`) |
|
|
104
|
-
| `contract.authorization` | `list(role)`, `get(role, onPath)`, `create(role, grant)`, `put(role, onPath, actions)`, `patch(role, onPath, actions)`, `del(role, onPath)` — the WHOLE authorization surface, addressed by `(role, on-path)` regardless of family. `ceiling.get()` — read-only owner/plan-envelope introspection
|
|
105
|
-
| `contract.skills` | `list`, `get`, `create`, `put`, `patch`, `delete` (
|
|
104
|
+
| `contract.authorization` | `list(role)`, `get(role, onPath)`, `create(role, grant)`, `put(role, onPath, actions)`, `patch(role, onPath, actions)`, `del(role, onPath)` — the WHOLE authorization surface, addressed by `(role, on-path)` regardless of family. `ceiling.get()` — read-only owner/plan-envelope introspection |
|
|
105
|
+
| `contract.skills` | `list`, `get`, `create`, `put`, `patch`, `delete` (`put` = wholesale replace, `patch` = merge of the members it names) |
|
|
106
106
|
| `contract.actions` | `list`, `get`, `create`, `put`, `patch`, `delete` (DELETE may surface 501) |
|
|
107
107
|
| `contract.assistant` | `createSession`, `conversationSend`, `getChangeset`, `applyChangeset`, `discardChangeset` — conversational authoring (conversation stages into one changeset; `applyChangeset({base_hash})` is the sole mutation, one version bump). On staleness `applyChangeset` throws `ZarelAPIError` with `code:'contract_hash_mismatch'` and `details.{reseeded_changeset_id, base_hash}` |
|
|
108
108
|
| `contract.batch` | `execute` (Microsoft Graph-style envelope) |
|
|
@@ -113,9 +113,9 @@ runtime plane falls back to `https://api.zarel.ia/v1`.
|
|
|
113
113
|
| `contract.events.rules` | CRUD on `/contract/events/rules*` |
|
|
114
114
|
| `contract.processModel` | `get`/`put`/`patch` (the process-model document) + `phases.{list,get,create,put,patch,delete}` |
|
|
115
115
|
| `contract.quotas` | **no resource, by design.** The per-role bounds (`max_chained_actions_per_turn`, `composite_write.*`) have no admin route — they are declared by publishing the contract, so there is nothing for the SDK to call |
|
|
116
|
-
| `contract.{llm,embeddings,treatment,rails,channels,mcpServers,profiles,timezone}` |
|
|
116
|
+
| `contract.{llm,embeddings,treatment,rails,channels,mcpServers,profiles,timezone}` | Contract root sections (admin host). Distinct from the runtime-plane `client.runtime.*`. Singletons: `llm`, `rails`, `embeddings`, `timezone` (`get`/`put` only), `events.delivery`, `assistant` (`get`/`put`/`patch` + `vocabulary` collection). Collections: `mcpServers` (+ `allowedTools(ns)`), `profiles`, `channels` (+ `credentials`) |
|
|
117
117
|
|
|
118
|
-
_The namespace hierarchy
|
|
118
|
+
_The namespace hierarchy mirrors the contract API's OpenAPI surface one-to-one._
|
|
119
119
|
|
|
120
120
|
### Working with authorization
|
|
121
121
|
|
|
@@ -146,7 +146,7 @@ await client.contract.authorization.del('support', 'records/orders');
|
|
|
146
146
|
that on-path already exists, so it and the idempotent `put` never disagree about
|
|
147
147
|
duplicates.
|
|
148
148
|
|
|
149
|
-
Writes are bounded by the **plan ceiling
|
|
149
|
+
Writes are bounded by the **plan ceiling**. Two `403`s are expected
|
|
150
150
|
and worth handling distinctly: `ceiling_exceeded` (the grant is outside the
|
|
151
151
|
tenant's plan envelope) and `owner_role_protected` (the role is platform-seeded
|
|
152
152
|
and immutable to the tenant — this applies to `del` too, not only writes). Read
|
|
@@ -157,14 +157,14 @@ const { ownerRoleNames, grants } = await client.contract.authorization.ceiling.g
|
|
|
157
157
|
```
|
|
158
158
|
|
|
159
159
|
Grants are **exact-match, with no parent→child inheritance**: a grant on `runtime`
|
|
160
|
-
never covers `channels
|
|
160
|
+
never covers `channels`. Address the child explicitly.
|
|
161
161
|
|
|
162
162
|
## Responses
|
|
163
163
|
|
|
164
164
|
Methods return the **response payload directly** — the SDK never surfaces the
|
|
165
165
|
wire-level `{ success, data }` envelope. The transport validates the envelope
|
|
166
166
|
and returns its `data`; a `success: false` envelope surfaces as a
|
|
167
|
-
`ZarelAPIError`.
|
|
167
|
+
`ZarelAPIError`. The transport is the only place the envelope is unwrapped.
|
|
168
168
|
|
|
169
169
|
```typescript
|
|
170
170
|
const roles = await zarel.contract.roles.list(); // RoleRecord[] (not { success, data })
|
|
@@ -178,21 +178,19 @@ shape where `success` is a status field rather than a wrapper — e.g.
|
|
|
178
178
|
`runtime.flows.callbacks.resolve`. The SDK returns those **unchanged**.
|
|
179
179
|
|
|
180
180
|
The unwrap decision is **spec-derived, not guessed**: the OpenAPI is the single
|
|
181
|
-
source of truth. A
|
|
181
|
+
source of truth. A code generator reads each operation's
|
|
182
182
|
success response and emits a checked-in per-plane map
|
|
183
183
|
(`src/generated/unwrap-map.ts`) of `{ [operationId]: { unwrap } }`; the transport
|
|
184
184
|
does an O(1) lookup by the `operationId` the resource passes. An operation whose
|
|
185
185
|
2xx response references the canonical envelope is unwrapped to `data`; a flat or
|
|
186
186
|
bare response is returned whole. There is **no runtime key-shape heuristic and no
|
|
187
|
-
manual opt-outs
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
always the payload.
|
|
187
|
+
manual opt-outs**. A build-time completeness guard ensures every operation is
|
|
188
|
+
classified, so the decision can never silently fall through. Callers never think
|
|
189
|
+
about this — the return type is always the payload.
|
|
191
190
|
|
|
192
|
-
Response payload types are **generated from
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
response-schema signal, and jest drift-guards byte-diff the checked-in output.
|
|
191
|
+
Response payload types are **generated from the Zarel API's OpenAPI documents**: the
|
|
192
|
+
types (`src/generated/{runtime,contract}.ts`) and the unwrap map are generated from
|
|
193
|
+
the same response-schema signal and checked in.
|
|
196
194
|
|
|
197
195
|
## Pagination
|
|
198
196
|
|
|
@@ -212,7 +210,7 @@ for await (const order of zarel.runtime.records.list('orders', { filters: { stat
|
|
|
212
210
|
for await (const trace of zarel.runtime.traces.list({ outcome: 'refused' })) { /* … */ }
|
|
213
211
|
for await (const session of zarel.runtime.conversation.sessions.list({ status: 'active' })) { /* … */ }
|
|
214
212
|
|
|
215
|
-
// Audit
|
|
213
|
+
// Audit logs (gated by the `view_traces` runtime-system action):
|
|
216
214
|
const violations = await zarel.runtime.audit.list('binding_violations', { entity: 'Account' });
|
|
217
215
|
for await (const refusal of zarel.runtime.audit.list('topic_refusals', { category: 'investment_advice' })) { /* … */ }
|
|
218
216
|
```
|
|
@@ -238,7 +236,7 @@ for await (const order of zarel.runtime.records.list('orders', undefined, { sign
|
|
|
238
236
|
|
|
239
237
|
**Caveat — `conversation.sessions.list`.** That endpoint's wire shape carries neither a
|
|
240
238
|
`total` nor a cursor, so iteration stops when a page returns fewer items than the
|
|
241
|
-
page size. When the
|
|
239
|
+
page size. When the session count is an exact multiple of the page size, one extra
|
|
242
240
|
request returns an empty page and iteration then stops — no items are missed or
|
|
243
241
|
duplicated.
|
|
244
242
|
|
|
@@ -291,7 +289,7 @@ observe and augment requests without replacing the transport:
|
|
|
291
289
|
|
|
292
290
|
```ts
|
|
293
291
|
const client = new Zarel({
|
|
294
|
-
tenant: '
|
|
292
|
+
tenant: 'my_application',
|
|
295
293
|
runtimeToken: token,
|
|
296
294
|
interceptors: {
|
|
297
295
|
onRequest: (ctx) => { ctx.headers['X-Trace-Id'] = traceId(); }, // mutate in place
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { TokenInput } from './fetch-client';
|
|
2
2
|
export type RequireTokenCode = 'runtime_token_missing' | 'contract_token_missing';
|
|
3
3
|
/**
|
|
4
|
-
* The SINGLE auth authority
|
|
4
|
+
* The SINGLE auth authority shared by BOTH request paths — the REST
|
|
5
5
|
* `FetchClient` and the SSE stream client. Given a token (string or provider)
|
|
6
6
|
* and the transport-managed flag, it resolves the token (honoring the optional
|
|
7
7
|
* presence guard) and returns the `Authorization` header decision:
|
|
@@ -12,8 +12,8 @@ export type RequireTokenCode = 'runtime_token_missing' | 'contract_token_missing
|
|
|
12
12
|
* - direct, present token → `{ Authorization: 'Bearer <token>' }`.
|
|
13
13
|
*
|
|
14
14
|
* Centralizing this here means there is exactly one place that builds a Bearer
|
|
15
|
-
* header — neither the SSE client nor any resource may build its own (
|
|
16
|
-
* structural
|
|
15
|
+
* header — neither the SSE client nor any resource may build its own (a
|
|
16
|
+
* structural test enforces a single `Bearer ` site).
|
|
17
17
|
*/
|
|
18
18
|
export declare function resolveAuthHeaders(token: TokenInput, transportManaged: boolean, requireTokenCode?: RequireTokenCode): Promise<Record<string, string>>;
|
|
19
19
|
//# sourceMappingURL=auth-headers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-headers.d.ts","sourceRoot":"","sources":["../../src/_internal/auth-headers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth-headers.d.ts","sourceRoot":"","sources":["../../src/_internal/auth-headers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,gBAAgB,GAAG,uBAAuB,GAAG,wBAAwB,CAAC;AAElF;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,kBAAkB,CACpC,KAAK,EAAE,UAAU,EACjB,gBAAgB,EAAE,OAAO,EACzB,gBAAgB,CAAC,EAAE,gBAAgB,GACpC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CASjC"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.resolveAuthHeaders = resolveAuthHeaders;
|
|
4
|
+
// SPDX-License-Identifier: MIT
|
|
5
|
+
// Copyright 2026 Nicolas Moreno
|
|
4
6
|
const require_token_1 = require("./require-token");
|
|
5
7
|
/**
|
|
6
|
-
* The SINGLE auth authority
|
|
8
|
+
* The SINGLE auth authority shared by BOTH request paths — the REST
|
|
7
9
|
* `FetchClient` and the SSE stream client. Given a token (string or provider)
|
|
8
10
|
* and the transport-managed flag, it resolves the token (honoring the optional
|
|
9
11
|
* presence guard) and returns the `Authorization` header decision:
|
|
@@ -14,8 +16,8 @@ const require_token_1 = require("./require-token");
|
|
|
14
16
|
* - direct, present token → `{ Authorization: 'Bearer <token>' }`.
|
|
15
17
|
*
|
|
16
18
|
* Centralizing this here means there is exactly one place that builds a Bearer
|
|
17
|
-
* header — neither the SSE client nor any resource may build its own (
|
|
18
|
-
* structural
|
|
19
|
+
* header — neither the SSE client nor any resource may build its own (a
|
|
20
|
+
* structural test enforces a single `Bearer ` site).
|
|
19
21
|
*/
|
|
20
22
|
async function resolveAuthHeaders(token, transportManaged, requireTokenCode) {
|
|
21
23
|
if (transportManaged) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-headers.js","sourceRoot":"","sources":["../../src/_internal/auth-headers.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"auth-headers.js","sourceRoot":"","sources":["../../src/_internal/auth-headers.ts"],"names":[],"mappings":";;AAsBA,gDAaC;AAnCD,+BAA+B;AAC/B,gCAAgC;AAChC,mDAA+C;AAK/C;;;;;;;;;;;;;;GAcG;AACI,KAAK,UAAU,kBAAkB,CACpC,KAAiB,EACjB,gBAAyB,EACzB,gBAAmC;IAEnC,IAAI,gBAAgB,EAAE,CAAC;QACnB,OAAO,EAAE,CAAC;IACd,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IACrE,IAAI,gBAAgB,EAAE,CAAC;QACnB,IAAA,4BAAY,EAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,UAAU,QAAQ,EAAE,EAAE,CAAC;AAC5E,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Confirmation round-trip transport helpers
|
|
2
|
+
* Confirmation round-trip transport helpers — the single place
|
|
3
3
|
* the SDK names the header and the single place it parses the challenge.
|
|
4
4
|
*/
|
|
5
5
|
import type { ConfirmationChallenge } from '../types/confirmation';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"confirmation.d.ts","sourceRoot":"","sources":["../../src/_internal/confirmation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"confirmation.d.ts","sourceRoot":"","sources":["../../src/_internal/confirmation.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAqB,MAAM,uBAAuB,CAAC;AAEtF,+EAA+E;AAC/E,eAAO,MAAM,yBAAyB,+BAA+B,CAAC;AAEtE,wEAAwE;AACxE,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAE1E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,OAAO,GAAG,qBAAqB,GAAG,SAAS,CAoB1F"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright 2026 Nicolas Moreno
|
|
2
4
|
/**
|
|
3
|
-
* Confirmation round-trip transport helpers
|
|
5
|
+
* Confirmation round-trip transport helpers — the single place
|
|
4
6
|
* the SDK names the header and the single place it parses the challenge.
|
|
5
7
|
*/
|
|
6
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"confirmation.js","sourceRoot":"","sources":["../../src/_internal/confirmation.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAQH,kDAEC;AAeD,gEAoBC;AAzCD,+EAA+E;AAClE,QAAA,yBAAyB,GAAG,4BAA4B,CAAC;AAEtE,wEAAwE;AACxE,SAAgB,mBAAmB,CAAC,KAAc;IAC9C,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,iCAAyB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,0BAA0B,CAAC,GAAY;IACnD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC9D,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,GAA8B,CAAC;IAChF,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAC;IAE7C,MAAM,MAAM,GAAwB,EAAE,CAAC;IACvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;YAAE,SAAS;QAC1D,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAgC,CAAC;QAC1D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAC5D,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,IAAI,GAAG,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAE1C,OAAO;QACH,MAAM,EAAE,MAAM;QACd,KAAK;QACL,UAAU,EAAE,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;KAC7D,CAAC;AACN,CAAC"}
|
|
1
|
+
{"version":3,"file":"confirmation.js","sourceRoot":"","sources":["../../src/_internal/confirmation.ts"],"names":[],"mappings":";AAAA,+BAA+B;AAC/B,gCAAgC;AAChC;;;GAGG;;;AAQH,kDAEC;AAeD,gEAoBC;AAzCD,+EAA+E;AAClE,QAAA,yBAAyB,GAAG,4BAA4B,CAAC;AAEtE,wEAAwE;AACxE,SAAgB,mBAAmB,CAAC,KAAc;IAC9C,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,iCAAyB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,0BAA0B,CAAC,GAAY;IACnD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC9D,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,GAA8B,CAAC;IAChF,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAC;IAE7C,MAAM,MAAM,GAAwB,EAAE,CAAC;IACvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;YAAE,SAAS;QAC1D,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAgC,CAAC;QAC1D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAC5D,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,IAAI,GAAG,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAE1C,OAAO;QACH,MAAM,EAAE,MAAM;QACd,KAAK;QACL,UAAU,EAAE,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;KAC7D,CAAC;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-iterator.d.ts","sourceRoot":"","sources":["../../src/_internal/event-iterator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"event-iterator.d.ts","sourceRoot":"","sources":["../../src/_internal/event-iterator.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACR,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EACrB,MAAM,wBAAwB,CAAC;AAIhC,uFAAuF;AACvF,MAAM,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,mBAAmB,EAAE,OAAO,EAAE,kBAAkB,KAAK,iBAAiB,CAAC;AAE3G,MAAM,WAAW,mBAAmB;IAChC,0DAA0D;IAC1D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,kFAAkF;IAClF,aAAa,EAAE,kBAAkB,CAAC;CACrC;AASD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,mBAAmB,GAC5B,qBAAqB,CAAC,kBAAkB,CAAC,CA4I3C"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright 2026 Nicolas Moreno
|
|
2
4
|
// Async-iterable (pull) view over the callback-based event stream. A thin,
|
|
3
5
|
// transport-agnostic adapter: it converts the push API (`onEvent`/`onError`)
|
|
4
6
|
// into an `AsyncIterableIterator` backed by a bounded FIFO buffer. It owns NO
|
|
5
7
|
// transport concern — no fetch, no auth, no SSE parsing, no reconnect; it drives
|
|
6
8
|
// an injected `open(handlers) => EventStreamHandle` (in production, that is
|
|
7
9
|
// `events.stream`). This keeps `events.stream` the single event-transport
|
|
8
|
-
// authority
|
|
10
|
+
// authority and the SDK dependency-free.
|
|
9
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
12
|
exports.createEventIterator = createEventIterator;
|
|
11
13
|
const DEFAULT_BUFFER_SIZE = 1024;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-iterator.js","sourceRoot":"","sources":["../../src/_internal/event-iterator.ts"],"names":[],"mappings":";AAAA,2EAA2E;AAC3E,6EAA6E;AAC7E,8EAA8E;AAC9E,iFAAiF;AACjF,4EAA4E;AAC5E,0EAA0E;AAC1E,
|
|
1
|
+
{"version":3,"file":"event-iterator.js","sourceRoot":"","sources":["../../src/_internal/event-iterator.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,8 @@ export declare function localeQueryOrUndefined(options?: LocaleOptions): {
|
|
|
9
9
|
export type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
10
10
|
/**
|
|
11
11
|
* A token may be a static string or a provider (sync or async) resolved before
|
|
12
|
-
* each request — the
|
|
13
|
-
*
|
|
12
|
+
* each request — the common auth-callback shape, which lets a caller refresh
|
|
13
|
+
* an expiring token without rebuilding the client.
|
|
14
14
|
*/
|
|
15
15
|
export type TokenInput = string | (() => string | Promise<string>);
|
|
16
16
|
export interface FetchClientOptions {
|
|
@@ -29,31 +29,31 @@ export interface FetchClientOptions {
|
|
|
29
29
|
requireTokenCode?: 'runtime_token_missing' | 'contract_token_missing';
|
|
30
30
|
/**
|
|
31
31
|
* Transport-managed (no-token) mode: a credential-injecting transport (e.g.
|
|
32
|
-
* the
|
|
32
|
+
* a backend proxy that holds the user's session) sets `Authorization` server-side, so this client
|
|
33
33
|
* (a) SKIPS the `requireToken` presence guard and (b) OMITS the
|
|
34
34
|
* `Authorization` header entirely. Opt-in only — direct consumers keep the
|
|
35
|
-
* token-required guard
|
|
35
|
+
* token-required guard.
|
|
36
36
|
*/
|
|
37
37
|
transportManaged?: boolean;
|
|
38
38
|
/**
|
|
39
|
-
* Opt-in API version
|
|
39
|
+
* Opt-in API version. When set, every request carries
|
|
40
40
|
* `X-Zarel-Api-Version: <value>`. No backend reads it today (forward-looking);
|
|
41
41
|
* unset ⇒ header omitted.
|
|
42
42
|
*/
|
|
43
43
|
apiVersion?: string;
|
|
44
44
|
/**
|
|
45
|
-
* Opt-in per-attempt request/response/error interceptors
|
|
45
|
+
* Opt-in per-attempt request/response/error interceptors. See
|
|
46
46
|
* `./interceptors`. `onRequest` may mutate the outgoing headers (throw
|
|
47
47
|
* aborts); `onResponse`/`onError` are read-only observers (throw swallowed).
|
|
48
48
|
*/
|
|
49
49
|
interceptors?: Interceptors;
|
|
50
50
|
/**
|
|
51
|
-
* The codegen-derived envelope-unwrap map for THIS plane
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
51
|
+
* The codegen-derived envelope-unwrap map for THIS plane. Keyed by
|
|
52
|
+
* `operationId`; `{unwrap:true}` ⇒ the transport validates the
|
|
53
|
+
* `{success,data}` envelope and returns `data`, `{unwrap:false}` ⇒ the body
|
|
54
|
+
* is returned whole. The SINGLE unwrap authority (no runtime heuristic, no
|
|
55
|
+
* manual opt-outs). Injected per plane by `client.ts`
|
|
56
|
+
* (`RUNTIME_OPERATIONS` / `CONTRACT_OPERATIONS`).
|
|
57
57
|
*/
|
|
58
58
|
operations: Readonly<Record<string, {
|
|
59
59
|
unwrap: boolean;
|
|
@@ -69,7 +69,7 @@ export interface RequestOptions {
|
|
|
69
69
|
skipIdempotency?: boolean;
|
|
70
70
|
signal?: AbortSignal;
|
|
71
71
|
/**
|
|
72
|
-
* The OpenAPI `operationId` this request invokes
|
|
72
|
+
* The OpenAPI `operationId` this request invokes. The
|
|
73
73
|
* transport looks it up in the per-plane unwrap map to decide whether to
|
|
74
74
|
* strip the `{success,data}` envelope — the SINGLE unwrap authority. An
|
|
75
75
|
* `operationId` absent from the map is a fail-fast `ZarelError` (never a
|
|
@@ -77,6 +77,12 @@ export interface RequestOptions {
|
|
|
77
77
|
* in production.
|
|
78
78
|
*/
|
|
79
79
|
operationId: string;
|
|
80
|
+
/**
|
|
81
|
+
* `'arrayBuffer'` returns a successful body as its raw bytes, whatever its
|
|
82
|
+
* content type, with no envelope unwrap — for the `application/gzip` evidence
|
|
83
|
+
* bundles. Auth, retry and the non-2xx error mapping are the same as JSON's.
|
|
84
|
+
*/
|
|
85
|
+
responseType?: 'json' | 'arrayBuffer';
|
|
80
86
|
}
|
|
81
87
|
/**
|
|
82
88
|
* Per-call options for the convenience methods. `operationId` is REQUIRED (the
|
|
@@ -88,7 +94,7 @@ export interface CallOptions {
|
|
|
88
94
|
/**
|
|
89
95
|
* Extra request headers for this call. Merged into the per-attempt header
|
|
90
96
|
* set and re-sent on every retry. Used by the writes a `confirm` guard can
|
|
91
|
-
* pause to carry `X-Zarel-Confirmation-Token
|
|
97
|
+
* pause to carry `X-Zarel-Confirmation-Token`.
|
|
92
98
|
*/
|
|
93
99
|
headers?: Record<string, string>;
|
|
94
100
|
}
|
|
@@ -107,23 +113,25 @@ export declare class FetchClient {
|
|
|
107
113
|
constructor(options: FetchClientOptions);
|
|
108
114
|
request<T>(options: RequestOptions): Promise<T>;
|
|
109
115
|
get<T>(path: string, query: Record<string, string | number | boolean | string[] | undefined> | undefined, options: CallOptions): Promise<T>;
|
|
116
|
+
/** `get`, reading the successful body as raw bytes (see `RequestOptions.responseType`). */
|
|
117
|
+
getBinary(path: string, query: Record<string, string | number | boolean | string[] | undefined> | undefined, options: CallOptions): Promise<ArrayBuffer>;
|
|
110
118
|
post<T>(path: string, body: unknown, options: CallOptions): Promise<T>;
|
|
111
119
|
patch<T>(path: string, body: unknown, options: CallOptions): Promise<T>;
|
|
112
120
|
put<T>(path: string, body: unknown, options: CallOptions): Promise<T>;
|
|
113
121
|
del<T>(path: string, options: CallOptions): Promise<T>;
|
|
114
122
|
/**
|
|
115
|
-
*
|
|
123
|
+
* Open a typed Server-Sent-Events stream against `path` (a runtime-plane
|
|
116
124
|
* SSE endpoint). Reuses this client's own `fetch`, baseUrl, and the SHARED auth
|
|
117
|
-
* authority (`resolveAuthHeaders
|
|
125
|
+
* authority (`resolveAuthHeaders`) — no separate token logic. The
|
|
118
126
|
* reconnect loop + frame parsing live in `sse-client.ts`; this method only
|
|
119
127
|
* provides the `connect` closure (fetch + status classification). Returns a
|
|
120
128
|
* teardown handle synchronously.
|
|
121
129
|
*/
|
|
122
130
|
openEventStream(path: string, handlers: EventStreamHandlers, options?: EventStreamOptions): EventStreamHandle;
|
|
123
131
|
/**
|
|
124
|
-
*
|
|
132
|
+
* POST one MCP JSON-RPC message to a stateless MCP transport path
|
|
125
133
|
* (POST /runtime/mcp) and return the typed JSON-RPC response. Reuses the
|
|
126
|
-
* SHARED auth authority (`resolveAuthHeaders
|
|
134
|
+
* SHARED auth authority (`resolveAuthHeaders`) and the pure SSE
|
|
127
135
|
* de-framer (`extractMcpResponse`), accepting either an `application/json`
|
|
128
136
|
* body or a single `text/event-stream` frame. Unlike `request()` this does
|
|
129
137
|
* NOT run the `{success,data}` envelope unwrap (MCP is bare JSON-RPC) and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-client.d.ts","sourceRoot":"","sources":["../../src/_internal/fetch-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fetch-client.d.ts","sourceRoot":"","sources":["../../src/_internal/fetch-client.ts"],"names":[],"mappings":"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"}
|