@zarel-ai/sdk 0.6.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 +21 -0
- package/README.md +412 -0
- package/dist/_internal/auth-headers.d.ts +19 -0
- package/dist/_internal/auth-headers.d.ts.map +1 -0
- package/dist/_internal/auth-headers.js +30 -0
- package/dist/_internal/auth-headers.js.map +1 -0
- package/dist/_internal/confirmation.d.ts +24 -0
- package/dist/_internal/confirmation.d.ts.map +1 -0
- package/dist/_internal/confirmation.js +54 -0
- package/dist/_internal/confirmation.js.map +1 -0
- package/dist/_internal/event-iterator.d.ts +18 -0
- package/dist/_internal/event-iterator.d.ts.map +1 -0
- package/dist/_internal/event-iterator.js +151 -0
- package/dist/_internal/event-iterator.js.map +1 -0
- package/dist/_internal/fetch-client.d.ts +141 -0
- package/dist/_internal/fetch-client.d.ts.map +1 -0
- package/dist/_internal/fetch-client.js +471 -0
- package/dist/_internal/fetch-client.js.map +1 -0
- package/dist/_internal/interceptors.d.ts +40 -0
- package/dist/_internal/interceptors.d.ts.map +1 -0
- package/dist/_internal/interceptors.js +28 -0
- package/dist/_internal/interceptors.js.map +1 -0
- package/dist/_internal/mcp.d.ts +11 -0
- package/dist/_internal/mcp.d.ts.map +1 -0
- package/dist/_internal/mcp.js +79 -0
- package/dist/_internal/mcp.js.map +1 -0
- package/dist/_internal/pagination.d.ts +71 -0
- package/dist/_internal/pagination.d.ts.map +1 -0
- package/dist/_internal/pagination.js +130 -0
- package/dist/_internal/pagination.js.map +1 -0
- package/dist/_internal/require-token.d.ts +17 -0
- package/dist/_internal/require-token.d.ts.map +1 -0
- package/dist/_internal/require-token.js +25 -0
- package/dist/_internal/require-token.js.map +1 -0
- package/dist/_internal/retry-after.d.ts +2 -0
- package/dist/_internal/retry-after.d.ts.map +1 -0
- package/dist/_internal/retry-after.js +34 -0
- package/dist/_internal/retry-after.js.map +1 -0
- package/dist/_internal/sse-client.d.ts +43 -0
- package/dist/_internal/sse-client.d.ts.map +1 -0
- package/dist/_internal/sse-client.js +250 -0
- package/dist/_internal/sse-client.js.map +1 -0
- package/dist/_internal/version.d.ts +5 -0
- package/dist/_internal/version.d.ts.map +1 -0
- package/dist/_internal/version.js +12 -0
- package/dist/_internal/version.js.map +1 -0
- package/dist/client.d.ts +74 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +86 -0
- package/dist/client.js.map +1 -0
- package/dist/contract/_singleton.d.ts +18 -0
- package/dist/contract/_singleton.d.ts.map +1 -0
- package/dist/contract/_singleton.js +27 -0
- package/dist/contract/_singleton.js.map +1 -0
- package/dist/contract/actions.d.ts +18 -0
- package/dist/contract/actions.d.ts.map +1 -0
- package/dist/contract/actions.js +36 -0
- package/dist/contract/actions.js.map +1 -0
- package/dist/contract/assistant.d.ts +65 -0
- package/dist/contract/assistant.d.ts.map +1 -0
- package/dist/contract/assistant.js +44 -0
- package/dist/contract/assistant.js.map +1 -0
- package/dist/contract/batch.d.ts +27 -0
- package/dist/contract/batch.d.ts.map +1 -0
- package/dist/contract/batch.js +20 -0
- package/dist/contract/batch.js.map +1 -0
- package/dist/contract/capabilities.d.ts +21 -0
- package/dist/contract/capabilities.d.ts.map +1 -0
- package/dist/contract/capabilities.js +31 -0
- package/dist/contract/capabilities.js.map +1 -0
- package/dist/contract/constraints.d.ts +21 -0
- package/dist/contract/constraints.d.ts.map +1 -0
- package/dist/contract/constraints.js +31 -0
- package/dist/contract/constraints.js.map +1 -0
- package/dist/contract/events.d.ts +33 -0
- package/dist/contract/events.d.ts.map +1 -0
- package/dist/contract/events.js +56 -0
- package/dist/contract/events.js.map +1 -0
- package/dist/contract/flows.d.ts +44 -0
- package/dist/contract/flows.d.ts.map +1 -0
- package/dist/contract/flows.js +109 -0
- package/dist/contract/flows.js.map +1 -0
- package/dist/contract/governance.d.ts +6 -0
- package/dist/contract/governance.d.ts.map +1 -0
- package/dist/contract/governance.js +17 -0
- package/dist/contract/governance.js.map +1 -0
- package/dist/contract/index.d.ts +137 -0
- package/dist/contract/index.d.ts.map +1 -0
- package/dist/contract/index.js +177 -0
- package/dist/contract/index.js.map +1 -0
- package/dist/contract/metadata.d.ts +26 -0
- package/dist/contract/metadata.d.ts.map +1 -0
- package/dist/contract/metadata.js +25 -0
- package/dist/contract/metadata.js.map +1 -0
- package/dist/contract/process-model.d.ts +31 -0
- package/dist/contract/process-model.d.ts.map +1 -0
- package/dist/contract/process-model.js +51 -0
- package/dist/contract/process-model.js.map +1 -0
- package/dist/contract/roots/channels.d.ts +27 -0
- package/dist/contract/roots/channels.d.ts.map +1 -0
- package/dist/contract/roots/channels.js +53 -0
- package/dist/contract/roots/channels.js.map +1 -0
- package/dist/contract/roots/events.d.ts +7 -0
- package/dist/contract/roots/events.d.ts.map +1 -0
- package/dist/contract/roots/events.js +19 -0
- package/dist/contract/roots/events.js.map +1 -0
- package/dist/contract/roots/index.d.ts +15 -0
- package/dist/contract/roots/index.d.ts.map +1 -0
- package/dist/contract/roots/index.js +38 -0
- package/dist/contract/roots/index.js.map +1 -0
- package/dist/contract/roots/mcp-servers.d.ts +46 -0
- package/dist/contract/roots/mcp-servers.d.ts.map +1 -0
- package/dist/contract/roots/mcp-servers.js +68 -0
- package/dist/contract/roots/mcp-servers.js.map +1 -0
- package/dist/contract/roots/profiles.d.ts +18 -0
- package/dist/contract/roots/profiles.d.ts.map +1 -0
- package/dist/contract/roots/profiles.js +31 -0
- package/dist/contract/roots/profiles.js.map +1 -0
- package/dist/contract/roots/timezone.d.ts +10 -0
- package/dist/contract/roots/timezone.d.ts.map +1 -0
- package/dist/contract/roots/timezone.js +19 -0
- package/dist/contract/roots/timezone.js.map +1 -0
- package/dist/contract/roots/treatment.d.ts +11 -0
- package/dist/contract/roots/treatment.d.ts.map +1 -0
- package/dist/contract/roots/treatment.js +37 -0
- package/dist/contract/roots/treatment.js.map +1 -0
- package/dist/contract/roots/vocabulary.d.ts +18 -0
- package/dist/contract/roots/vocabulary.d.ts.map +1 -0
- package/dist/contract/roots/vocabulary.js +31 -0
- package/dist/contract/roots/vocabulary.js.map +1 -0
- package/dist/contract/schemas.d.ts +18 -0
- package/dist/contract/schemas.d.ts.map +1 -0
- package/dist/contract/schemas.js +31 -0
- package/dist/contract/schemas.js.map +1 -0
- package/dist/contract/skills.d.ts +20 -0
- package/dist/contract/skills.d.ts.map +1 -0
- package/dist/contract/skills.js +36 -0
- package/dist/contract/skills.js.map +1 -0
- package/dist/errors.d.ts +65 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +80 -0
- package/dist/errors.js.map +1 -0
- package/dist/generated/contract.d.ts +7688 -0
- package/dist/generated/contract.d.ts.map +1 -0
- package/dist/generated/contract.js +7 -0
- package/dist/generated/contract.js.map +1 -0
- package/dist/generated/index.d.ts +41 -0
- package/dist/generated/index.d.ts.map +1 -0
- package/dist/generated/index.js +3 -0
- package/dist/generated/index.js.map +1 -0
- package/dist/generated/runtime.d.ts +4020 -0
- package/dist/generated/runtime.d.ts.map +1 -0
- package/dist/generated/runtime.js +7 -0
- package/dist/generated/runtime.js.map +1 -0
- package/dist/generated/unwrap-map.d.ts +989 -0
- package/dist/generated/unwrap-map.d.ts.map +1 -0
- package/dist/generated/unwrap-map.js +344 -0
- package/dist/generated/unwrap-map.js.map +1 -0
- package/dist/index.d.ts +38 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/resources/actions.d.ts +33 -0
- package/dist/resources/actions.d.ts.map +1 -0
- package/dist/resources/actions.js +52 -0
- package/dist/resources/actions.js.map +1 -0
- package/dist/resources/audit.d.ts +52 -0
- package/dist/resources/audit.d.ts.map +1 -0
- package/dist/resources/audit.js +86 -0
- package/dist/resources/audit.js.map +1 -0
- package/dist/resources/authorization-ceiling.d.ts +25 -0
- package/dist/resources/authorization-ceiling.d.ts.map +1 -0
- package/dist/resources/authorization-ceiling.js +26 -0
- package/dist/resources/authorization-ceiling.js.map +1 -0
- package/dist/resources/authorization-operation-ids.d.ts +15 -0
- package/dist/resources/authorization-operation-ids.d.ts.map +1 -0
- package/dist/resources/authorization-operation-ids.js +31 -0
- package/dist/resources/authorization-operation-ids.js.map +1 -0
- package/dist/resources/authorization.d.ts +60 -0
- package/dist/resources/authorization.d.ts.map +1 -0
- package/dist/resources/authorization.js +51 -0
- package/dist/resources/authorization.js.map +1 -0
- package/dist/resources/authorizations.d.ts +38 -0
- package/dist/resources/authorizations.d.ts.map +1 -0
- package/dist/resources/authorizations.js +19 -0
- package/dist/resources/authorizations.js.map +1 -0
- package/dist/resources/channels.d.ts +36 -0
- package/dist/resources/channels.d.ts.map +1 -0
- package/dist/resources/channels.js +61 -0
- package/dist/resources/channels.js.map +1 -0
- package/dist/resources/contracts.d.ts +46 -0
- package/dist/resources/contracts.d.ts.map +1 -0
- package/dist/resources/contracts.js +86 -0
- package/dist/resources/contracts.js.map +1 -0
- package/dist/resources/conversation-sessions.d.ts +62 -0
- package/dist/resources/conversation-sessions.d.ts.map +1 -0
- package/dist/resources/conversation-sessions.js +48 -0
- package/dist/resources/conversation-sessions.js.map +1 -0
- package/dist/resources/conversation.d.ts +48 -0
- package/dist/resources/conversation.d.ts.map +1 -0
- package/dist/resources/conversation.js +104 -0
- package/dist/resources/conversation.js.map +1 -0
- package/dist/resources/embedding-credentials.d.ts +60 -0
- package/dist/resources/embedding-credentials.d.ts.map +1 -0
- package/dist/resources/embedding-credentials.js +53 -0
- package/dist/resources/embedding-credentials.js.map +1 -0
- package/dist/resources/entities.d.ts +66 -0
- package/dist/resources/entities.d.ts.map +1 -0
- package/dist/resources/entities.js +106 -0
- package/dist/resources/entities.js.map +1 -0
- package/dist/resources/events.d.ts +45 -0
- package/dist/resources/events.d.ts.map +1 -0
- package/dist/resources/events.js +71 -0
- package/dist/resources/events.js.map +1 -0
- package/dist/resources/flows.d.ts +45 -0
- package/dist/resources/flows.d.ts.map +1 -0
- package/dist/resources/flows.js +82 -0
- package/dist/resources/flows.js.map +1 -0
- package/dist/resources/imports.d.ts +8 -0
- package/dist/resources/imports.d.ts.map +1 -0
- package/dist/resources/imports.js +14 -0
- package/dist/resources/imports.js.map +1 -0
- package/dist/resources/index.d.ts +24 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +41 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/resources/llm-credentials.d.ts +47 -0
- package/dist/resources/llm-credentials.d.ts.map +1 -0
- package/dist/resources/llm-credentials.js +46 -0
- package/dist/resources/llm-credentials.js.map +1 -0
- package/dist/resources/llm-services.d.ts +46 -0
- package/dist/resources/llm-services.d.ts.map +1 -0
- package/dist/resources/llm-services.js +41 -0
- package/dist/resources/llm-services.js.map +1 -0
- package/dist/resources/mcp.d.ts +8 -0
- package/dist/resources/mcp.d.ts.map +1 -0
- package/dist/resources/mcp.js +25 -0
- package/dist/resources/mcp.js.map +1 -0
- package/dist/resources/receipts.d.ts +25 -0
- package/dist/resources/receipts.d.ts.map +1 -0
- package/dist/resources/receipts.js +54 -0
- package/dist/resources/receipts.js.map +1 -0
- package/dist/resources/records.d.ts +51 -0
- package/dist/resources/records.d.ts.map +1 -0
- package/dist/resources/records.js +103 -0
- package/dist/resources/records.js.map +1 -0
- package/dist/resources/role-assignments.d.ts +27 -0
- package/dist/resources/role-assignments.d.ts.map +1 -0
- package/dist/resources/role-assignments.js +40 -0
- package/dist/resources/role-assignments.js.map +1 -0
- package/dist/resources/roles.d.ts +39 -0
- package/dist/resources/roles.d.ts.map +1 -0
- package/dist/resources/roles.js +42 -0
- package/dist/resources/roles.js.map +1 -0
- package/dist/resources/runtime-entities.d.ts +23 -0
- package/dist/resources/runtime-entities.d.ts.map +1 -0
- package/dist/resources/runtime-entities.js +29 -0
- package/dist/resources/runtime-entities.js.map +1 -0
- package/dist/resources/state-machine.d.ts +45 -0
- package/dist/resources/state-machine.d.ts.map +1 -0
- package/dist/resources/state-machine.js +86 -0
- package/dist/resources/state-machine.js.map +1 -0
- package/dist/resources/system.d.ts +12 -0
- package/dist/resources/system.d.ts.map +1 -0
- package/dist/resources/system.js +26 -0
- package/dist/resources/system.js.map +1 -0
- package/dist/resources/tools.d.ts +22 -0
- package/dist/resources/tools.d.ts.map +1 -0
- package/dist/resources/tools.js +33 -0
- package/dist/resources/tools.js.map +1 -0
- package/dist/resources/traces.d.ts +65 -0
- package/dist/resources/traces.d.ts.map +1 -0
- package/dist/resources/traces.js +97 -0
- package/dist/resources/traces.js.map +1 -0
- package/dist/runtime/index.d.ts +128 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +210 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/types/actions.d.ts +32 -0
- package/dist/types/actions.d.ts.map +1 -0
- package/dist/types/actions.js +9 -0
- package/dist/types/actions.js.map +1 -0
- package/dist/types/audit.d.ts +65 -0
- package/dist/types/audit.d.ts.map +1 -0
- package/dist/types/audit.js +14 -0
- package/dist/types/audit.js.map +1 -0
- package/dist/types/channels.d.ts +37 -0
- package/dist/types/channels.d.ts.map +1 -0
- package/dist/types/channels.js +6 -0
- package/dist/types/channels.js.map +1 -0
- package/dist/types/confirmation.d.ts +53 -0
- package/dist/types/confirmation.d.ts.map +1 -0
- package/dist/types/confirmation.js +17 -0
- package/dist/types/confirmation.js.map +1 -0
- package/dist/types/contracts.d.ts +194 -0
- package/dist/types/contracts.d.ts.map +1 -0
- package/dist/types/contracts.js +10 -0
- package/dist/types/contracts.js.map +1 -0
- package/dist/types/conversation-sessions.d.ts +58 -0
- package/dist/types/conversation-sessions.d.ts.map +1 -0
- package/dist/types/conversation-sessions.js +6 -0
- package/dist/types/conversation-sessions.js.map +1 -0
- package/dist/types/conversation.d.ts +96 -0
- package/dist/types/conversation.d.ts.map +1 -0
- package/dist/types/conversation.js +3 -0
- package/dist/types/conversation.js.map +1 -0
- package/dist/types/entities.d.ts +22 -0
- package/dist/types/entities.d.ts.map +1 -0
- package/dist/types/entities.js +4 -0
- package/dist/types/entities.js.map +1 -0
- package/dist/types/events-stream.d.ts +82 -0
- package/dist/types/events-stream.d.ts.map +1 -0
- package/dist/types/events-stream.js +65 -0
- package/dist/types/events-stream.js.map +1 -0
- package/dist/types/flows-contract.d.ts +8 -0
- package/dist/types/flows-contract.d.ts.map +1 -0
- package/dist/types/flows-contract.js +7 -0
- package/dist/types/flows-contract.js.map +1 -0
- package/dist/types/flows.d.ts +66 -0
- package/dist/types/flows.d.ts.map +1 -0
- package/dist/types/flows.js +25 -0
- package/dist/types/flows.js.map +1 -0
- package/dist/types/imports.d.ts +57 -0
- package/dist/types/imports.d.ts.map +1 -0
- package/dist/types/imports.js +3 -0
- package/dist/types/imports.js.map +1 -0
- package/dist/types/index.d.ts +17 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/locale.d.ts +24 -0
- package/dist/types/locale.d.ts.map +1 -0
- package/dist/types/locale.js +17 -0
- package/dist/types/locale.js.map +1 -0
- package/dist/types/mcp.d.ts +28 -0
- package/dist/types/mcp.d.ts.map +1 -0
- package/dist/types/mcp.js +12 -0
- package/dist/types/mcp.js.map +1 -0
- package/dist/types/platform.d.ts +51 -0
- package/dist/types/platform.d.ts.map +1 -0
- package/dist/types/platform.js +4 -0
- package/dist/types/platform.js.map +1 -0
- package/dist/types/receipt.d.ts +79 -0
- package/dist/types/receipt.d.ts.map +1 -0
- package/dist/types/receipt.js +15 -0
- package/dist/types/receipt.js.map +1 -0
- package/dist/types/records.d.ts +45 -0
- package/dist/types/records.d.ts.map +1 -0
- package/dist/types/records.js +4 -0
- package/dist/types/records.js.map +1 -0
- package/dist/types/spec.d.ts +6 -0
- package/dist/types/spec.d.ts.map +1 -0
- package/dist/types/spec.js +3 -0
- package/dist/types/spec.js.map +1 -0
- package/dist/types/state-machine.d.ts +100 -0
- package/dist/types/state-machine.d.ts.map +1 -0
- package/dist/types/state-machine.js +9 -0
- package/dist/types/state-machine.js.map +1 -0
- package/dist/types/system.d.ts +28 -0
- package/dist/types/system.d.ts.map +1 -0
- package/dist/types/system.js +3 -0
- package/dist/types/system.js.map +1 -0
- package/dist/types/tools.d.ts +188 -0
- package/dist/types/tools.d.ts.map +1 -0
- package/dist/types/tools.js +22 -0
- package/dist/types/tools.js.map +1 -0
- package/dist/types/traces.d.ts +77 -0
- package/dist/types/traces.d.ts.map +1 -0
- package/dist/types/traces.js +11 -0
- package/dist/types/traces.js.map +1 -0
- package/dist/types/workflows.d.ts +42 -0
- package/dist/types/workflows.d.ts.map +1 -0
- package/dist/types/workflows.js +11 -0
- package/dist/types/workflows.js.map +1 -0
- package/package.json +103 -0
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Spec-document types (spec-051 US2; renamed from Contract* prefix).
|
|
3
|
+
*
|
|
4
|
+
* Wire shapes mirror authoring/packages/contract/src/domain/types/spec-diff.ts.
|
|
5
|
+
* Kept as plain interfaces so SDK consumers do not depend on the runtime
|
|
6
|
+
* contract package.
|
|
7
|
+
*/
|
|
8
|
+
export type SpecSection = 'entities' | 'flows' | 'roles' | 'authorization' | 'mcp_servers' | 'llm_services' | 'policies';
|
|
9
|
+
export type ChangeKind = 'added' | 'removed' | 'modified';
|
|
10
|
+
export type ImpactClass = 'breaking' | 'behavioural' | 'additive';
|
|
11
|
+
export type ReviewerRole = 'compliance' | 'ops-leadership' | 'engineering';
|
|
12
|
+
export interface SpecHashes {
|
|
13
|
+
readonly version: string;
|
|
14
|
+
readonly hash: string;
|
|
15
|
+
}
|
|
16
|
+
export interface SpecChange {
|
|
17
|
+
readonly path: string;
|
|
18
|
+
readonly section: SpecSection;
|
|
19
|
+
readonly kind: ChangeKind;
|
|
20
|
+
readonly before: Record<string, unknown> | null;
|
|
21
|
+
readonly after: Record<string, unknown> | null;
|
|
22
|
+
readonly impact_class: ImpactClass;
|
|
23
|
+
readonly human_summary: string;
|
|
24
|
+
}
|
|
25
|
+
export interface ImpactSummary {
|
|
26
|
+
readonly flows_affected: ReadonlyArray<string>;
|
|
27
|
+
readonly roles_affected: ReadonlyArray<string>;
|
|
28
|
+
readonly has_breaking_changes: boolean;
|
|
29
|
+
readonly may_reject_previously_allowed: boolean;
|
|
30
|
+
readonly may_require_hitl_previously_not: boolean;
|
|
31
|
+
readonly recommended_reviewers: ReadonlyArray<ReviewerRole>;
|
|
32
|
+
}
|
|
33
|
+
export interface SpecDiff {
|
|
34
|
+
readonly tenant: string;
|
|
35
|
+
readonly current: SpecHashes;
|
|
36
|
+
readonly proposed: SpecHashes;
|
|
37
|
+
readonly changes: ReadonlyArray<SpecChange>;
|
|
38
|
+
readonly impact_summary: ImpactSummary;
|
|
39
|
+
}
|
|
40
|
+
export type SpecApplyMode = 'upsert' | 'replace';
|
|
41
|
+
/**
|
|
42
|
+
* spec-039 — two-plane contract files. `structural` carries the legacy
|
|
43
|
+
* structural YAML (entities, fields, roles, policies, transitions, guards,
|
|
44
|
+
* flows — names/types/policies only). `semanticByLocale` carries the
|
|
45
|
+
* per-locale `.i18n.<locale>.yaml` content as a record keyed by locale code
|
|
46
|
+
* (e.g. `{ en: '...', es: '...' }`). The canonical locale (`en`) must
|
|
47
|
+
* validate atomically (FR-008a); other locales fail soft with warnings
|
|
48
|
+
* (FR-008b).
|
|
49
|
+
*
|
|
50
|
+
* The single-plane `{yaml: string}` shape was removed in spec-039 — lab
|
|
51
|
+
* phase, no back-compat. Callers shipping un-split YAML should send it as
|
|
52
|
+
* `files: { structural: yaml }` with no semantic siblings.
|
|
53
|
+
*/
|
|
54
|
+
export interface SpecFiles {
|
|
55
|
+
readonly structural: string;
|
|
56
|
+
readonly semanticByLocale?: Readonly<Record<string, string>>;
|
|
57
|
+
}
|
|
58
|
+
export interface SpecPublishRequest {
|
|
59
|
+
readonly files: SpecFiles;
|
|
60
|
+
readonly mode: SpecApplyMode;
|
|
61
|
+
readonly expected_hash?: string;
|
|
62
|
+
/**
|
|
63
|
+
* ADR-0102 §6 (S3b) — explicit consent to proceed when plan-as-ceiling
|
|
64
|
+
* enforcement would strip more than the server threshold (10) of
|
|
65
|
+
* over-budget grants; without it such a publish fails 422
|
|
66
|
+
* `strip_threshold_exceeded`.
|
|
67
|
+
*/
|
|
68
|
+
readonly force?: boolean;
|
|
69
|
+
}
|
|
70
|
+
/** ADR-0102 §6 (S3b) — a grant removed by plan-as-ceiling enforcement. */
|
|
71
|
+
export interface StrippedGrant {
|
|
72
|
+
readonly role: string;
|
|
73
|
+
readonly kind: 'section' | 'system';
|
|
74
|
+
readonly target: string | null;
|
|
75
|
+
readonly action: string;
|
|
76
|
+
readonly reason: 'envelope_exceeded' | 'owner_role_protected';
|
|
77
|
+
}
|
|
78
|
+
export interface SpecPublishResponse {
|
|
79
|
+
readonly tenant_name: string;
|
|
80
|
+
readonly applied_mode: SpecApplyMode;
|
|
81
|
+
readonly summary: {
|
|
82
|
+
readonly entities: number;
|
|
83
|
+
readonly roles: number;
|
|
84
|
+
readonly skills: number;
|
|
85
|
+
readonly actions: number;
|
|
86
|
+
};
|
|
87
|
+
/** ADR-0102 §6 (S3b) — grants stripped by this publish ([] when none). */
|
|
88
|
+
readonly stripped_grants: ReadonlyArray<StrippedGrant>;
|
|
89
|
+
}
|
|
90
|
+
export interface SpecDiffRequest {
|
|
91
|
+
readonly proposed_spec: string;
|
|
92
|
+
}
|
|
93
|
+
export interface SpecApplyGating {
|
|
94
|
+
readonly reject_breaking_changes?: boolean;
|
|
95
|
+
readonly max_changes?: number;
|
|
96
|
+
}
|
|
97
|
+
export interface SpecApplyRequest {
|
|
98
|
+
readonly files: SpecFiles;
|
|
99
|
+
readonly mode: SpecApplyMode;
|
|
100
|
+
readonly expected_hash?: string;
|
|
101
|
+
readonly gating?: SpecApplyGating;
|
|
102
|
+
/**
|
|
103
|
+
* ADR-0102 §6 (S3b) — same semantics as `SpecPublishRequest.force`:
|
|
104
|
+
* required to proceed when plan-as-ceiling enforcement would strip more
|
|
105
|
+
* than the server threshold (10) of over-budget grants (422
|
|
106
|
+
* `strip_threshold_exceeded` otherwise).
|
|
107
|
+
*/
|
|
108
|
+
readonly force?: boolean;
|
|
109
|
+
}
|
|
110
|
+
export interface SpecApplyResponse {
|
|
111
|
+
readonly applied: true;
|
|
112
|
+
readonly diff: SpecDiff;
|
|
113
|
+
/** ADR-0102 §6 (S3b) — grants stripped by this apply ([] when none). */
|
|
114
|
+
readonly stripped_grants: ReadonlyArray<StrippedGrant>;
|
|
115
|
+
}
|
|
116
|
+
export interface SpecSnapshotV1Response {
|
|
117
|
+
readonly tenant_name: string;
|
|
118
|
+
readonly spec_version: string;
|
|
119
|
+
readonly contract_version: number;
|
|
120
|
+
readonly hash: string;
|
|
121
|
+
readonly contract: unknown;
|
|
122
|
+
}
|
|
123
|
+
export type SpecDryRunStatus = 'queued' | 'running' | 'completed' | 'failed' | 'cancelled';
|
|
124
|
+
export type SpecDryRunOutcome = 'executed' | 'refused' | 'awaiting_human_decision' | 'failed';
|
|
125
|
+
export type SpecDryRunUnknownCause = 'intent_classification_unreusable' | 'external_tool_result_uncached' | 'reference_to_removed_feature';
|
|
126
|
+
export interface SpecDryRunReplayWindow {
|
|
127
|
+
readonly from: string;
|
|
128
|
+
readonly to: string;
|
|
129
|
+
}
|
|
130
|
+
export interface SpecDryRunFilter {
|
|
131
|
+
readonly flow?: string;
|
|
132
|
+
readonly user?: string;
|
|
133
|
+
}
|
|
134
|
+
export interface SpecDryRunSubmitRequest {
|
|
135
|
+
readonly proposed_spec: string;
|
|
136
|
+
readonly replay_window: SpecDryRunReplayWindow;
|
|
137
|
+
readonly filter?: SpecDryRunFilter;
|
|
138
|
+
}
|
|
139
|
+
export interface SpecDryRunSubmitResponse {
|
|
140
|
+
readonly report_id: string;
|
|
141
|
+
readonly status: 'queued' | 'running';
|
|
142
|
+
}
|
|
143
|
+
export interface SpecDryRunChangeBreakdown {
|
|
144
|
+
readonly from_outcome: SpecDryRunOutcome;
|
|
145
|
+
readonly to_outcome: SpecDryRunOutcome;
|
|
146
|
+
readonly count: number;
|
|
147
|
+
readonly cause: string;
|
|
148
|
+
readonly example_trace_ids: ReadonlyArray<string>;
|
|
149
|
+
}
|
|
150
|
+
export interface SpecDryRunUnknown {
|
|
151
|
+
readonly cause: SpecDryRunUnknownCause;
|
|
152
|
+
readonly count: number;
|
|
153
|
+
readonly example_trace_ids: ReadonlyArray<string>;
|
|
154
|
+
}
|
|
155
|
+
export interface SpecDryRunAffectedUser {
|
|
156
|
+
readonly user_name: string;
|
|
157
|
+
readonly sessions_affected: number;
|
|
158
|
+
}
|
|
159
|
+
export interface SpecDryRunOperationalImplications {
|
|
160
|
+
readonly estimated_additional_hitl_per_month: number;
|
|
161
|
+
readonly required_roles: ReadonlyArray<string>;
|
|
162
|
+
}
|
|
163
|
+
export interface SpecDryRunReport {
|
|
164
|
+
readonly tenant: string;
|
|
165
|
+
readonly spec_diff: SpecDiff;
|
|
166
|
+
readonly replay_window: SpecDryRunReplayWindow;
|
|
167
|
+
readonly sessions_evaluated: number;
|
|
168
|
+
readonly outcomes_unchanged: number;
|
|
169
|
+
readonly outcomes_changed: number;
|
|
170
|
+
readonly change_breakdown: ReadonlyArray<SpecDryRunChangeBreakdown>;
|
|
171
|
+
readonly affected_users: ReadonlyArray<SpecDryRunAffectedUser>;
|
|
172
|
+
readonly unknowns: ReadonlyArray<SpecDryRunUnknown>;
|
|
173
|
+
readonly operational_implications: SpecDryRunOperationalImplications;
|
|
174
|
+
readonly generated_at: string;
|
|
175
|
+
}
|
|
176
|
+
export interface SpecDryRunJobProgress {
|
|
177
|
+
readonly traces_processed: number;
|
|
178
|
+
readonly traces_total: number | null;
|
|
179
|
+
}
|
|
180
|
+
export interface SpecDryRunJobFailure {
|
|
181
|
+
readonly code: string;
|
|
182
|
+
readonly message: string;
|
|
183
|
+
}
|
|
184
|
+
export interface SpecDryRunJob {
|
|
185
|
+
readonly tenant: string;
|
|
186
|
+
readonly report_id: string;
|
|
187
|
+
readonly status: SpecDryRunStatus;
|
|
188
|
+
readonly progress: SpecDryRunJobProgress | null;
|
|
189
|
+
readonly result: SpecDryRunReport | null;
|
|
190
|
+
readonly failure: SpecDryRunJobFailure | null;
|
|
191
|
+
readonly started_at: string;
|
|
192
|
+
readonly completed_at: string | null;
|
|
193
|
+
}
|
|
194
|
+
//# sourceMappingURL=contracts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/types/contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Spec-document types (spec-051 US2; renamed from Contract* prefix).
|
|
4
|
+
*
|
|
5
|
+
* Wire shapes mirror authoring/packages/contract/src/domain/types/spec-diff.ts.
|
|
6
|
+
* Kept as plain interfaces so SDK consumers do not depend on the runtime
|
|
7
|
+
* contract package.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
//# sourceMappingURL=contracts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/types/contracts.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export type ConversationSessionStatus = 'active' | 'expired' | 'cleared';
|
|
2
|
+
export interface ConversationSessionSummary {
|
|
3
|
+
tenant_name: string;
|
|
4
|
+
session_key: string;
|
|
5
|
+
user_name: string;
|
|
6
|
+
channel_name: string;
|
|
7
|
+
status: ConversationSessionStatus;
|
|
8
|
+
turn_count: number;
|
|
9
|
+
created_at: string;
|
|
10
|
+
last_activity: string;
|
|
11
|
+
}
|
|
12
|
+
export interface ConversationTurnRecord {
|
|
13
|
+
turn_number: number;
|
|
14
|
+
role: 'user' | 'assistant' | 'system';
|
|
15
|
+
content: string;
|
|
16
|
+
intent_id?: string;
|
|
17
|
+
intent_type?: string;
|
|
18
|
+
metadata?: Record<string, unknown>;
|
|
19
|
+
created_at: string;
|
|
20
|
+
}
|
|
21
|
+
export interface ConversationActionRecord {
|
|
22
|
+
id: string;
|
|
23
|
+
session_key: string;
|
|
24
|
+
turn_number: number;
|
|
25
|
+
action_type: string;
|
|
26
|
+
entity_name: string;
|
|
27
|
+
record_id: string;
|
|
28
|
+
action_data?: Record<string, unknown>;
|
|
29
|
+
changed_fields?: string[];
|
|
30
|
+
actor?: string;
|
|
31
|
+
created_at: string;
|
|
32
|
+
}
|
|
33
|
+
export interface ConversationSessionDetail {
|
|
34
|
+
session: ConversationSessionSummary & {
|
|
35
|
+
/**
|
|
36
|
+
* Session-level snapshot of the actor's roles (Spec-019 FR-A07). NOT
|
|
37
|
+
* a security gate — exposed for observability / UI display only.
|
|
38
|
+
*/
|
|
39
|
+
roles_snapshot: string[];
|
|
40
|
+
metadata: Record<string, unknown>;
|
|
41
|
+
current_phase?: string;
|
|
42
|
+
updated_at: string;
|
|
43
|
+
};
|
|
44
|
+
turns: ConversationTurnRecord[];
|
|
45
|
+
actions: ConversationActionRecord[];
|
|
46
|
+
}
|
|
47
|
+
export interface ConversationSessionListParams {
|
|
48
|
+
channel_name?: string;
|
|
49
|
+
status?: ConversationSessionStatus;
|
|
50
|
+
from?: string;
|
|
51
|
+
to?: string;
|
|
52
|
+
limit?: number;
|
|
53
|
+
offset?: number;
|
|
54
|
+
}
|
|
55
|
+
export type ConversationSessionListResponse = ConversationSessionSummary[];
|
|
56
|
+
export type ConversationSessionDetailResponse = ConversationSessionDetail;
|
|
57
|
+
export type ConversationSessionActionsResponse = ConversationActionRecord[];
|
|
58
|
+
//# sourceMappingURL=conversation-sessions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-sessions.d.ts","sourceRoot":"","sources":["../../src/types/conversation-sessions.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,yBAAyB,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAEzE,MAAM,WAAW,0BAA0B;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,yBAAyB,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,wBAAwB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,yBAAyB;IACtC,OAAO,EAAE,0BAA0B,GAAG;QAClC;;;WAGG;QACH,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClC,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,OAAO,EAAE,wBAAwB,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,6BAA6B;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,yBAAyB,CAAC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,+BAA+B,GAAG,0BAA0B,EAAE,CAAC;AAE3E,MAAM,MAAM,iCAAiC,GAAG,yBAAyB,CAAC;AAE1E,MAAM,MAAM,kCAAkC,GAAG,wBAAwB,EAAE,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
3
|
+
// Conversation session history types — derived from docs/api/openapi-v1.yaml
|
|
4
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
//# sourceMappingURL=conversation-sessions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-sessions.js","sourceRoot":"","sources":["../../src/types/conversation-sessions.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,6EAA6E;AAC7E,8EAA8E"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import type { operations } from '../generated/runtime';
|
|
2
|
+
export type Channel = NonNullable<NonNullable<operations['listConversationSessions']['parameters']['query']>['channel_name']>;
|
|
3
|
+
export interface InteractionContext {
|
|
4
|
+
channel_name?: Channel;
|
|
5
|
+
audience?: 'human' | 'machine';
|
|
6
|
+
modality?: 'synchronous' | 'asynchronous';
|
|
7
|
+
platform?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface ConversationRequest {
|
|
10
|
+
message: string;
|
|
11
|
+
role?: string;
|
|
12
|
+
interaction?: InteractionContext;
|
|
13
|
+
/** SpecKit 010 / FR-C07 (T077): explicit session lookup — sessions must be created first via `client.runtime.conversationSessions.create`. */
|
|
14
|
+
session_key?: string;
|
|
15
|
+
/** SpecKit 010 / FR-C04 (T077): per-turn LLM service override. Must be authorized for the actor in the session's scope. */
|
|
16
|
+
llm_service?: string;
|
|
17
|
+
/**
|
|
18
|
+
* ADR-0133 §B.4 / FR-C03: the inbound at-most-once dedupe token
|
|
19
|
+
* `deriveIdempotencyKey(channel, channel_message_id)` (a public sha256 hex).
|
|
20
|
+
* Set by a channel adapter's party turn so a redelivered provider message
|
|
21
|
+
* (a re-fired WhatsApp `wamid`) never creates a second turn; the runtime
|
|
22
|
+
* enforces it unique per `(tenant, channel)` — the channel is trust-rooted
|
|
23
|
+
* from the credential, never this body. Omit on ordinary tenant turns.
|
|
24
|
+
*/
|
|
25
|
+
idempotency_key?: string;
|
|
26
|
+
/**
|
|
27
|
+
* ADR-0133 §B.7 / FR-E01: the edge-attestation of the inbound boundary crossing,
|
|
28
|
+
* from which the runtime builds the `channel.ingress` audit row — whether the
|
|
29
|
+
* adapter verified the provider signature, who attests the crossing (runtime vs
|
|
30
|
+
* channel_provider), the provider's clock, and the opaque provider message id (which
|
|
31
|
+
* MUST be hashed by the adapter if address-shaped, FR-E03). Set by a channel
|
|
32
|
+
* adapter's party turn; omit on ordinary tenant turns.
|
|
33
|
+
*/
|
|
34
|
+
channel_attestation?: {
|
|
35
|
+
signature_verified: boolean;
|
|
36
|
+
attested_by: 'runtime' | 'channel_provider';
|
|
37
|
+
provider_timestamp?: string;
|
|
38
|
+
channel_message_id?: string;
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
export interface ConversationDebugInfo {
|
|
42
|
+
enabled?: boolean;
|
|
43
|
+
system_prompt?: string;
|
|
44
|
+
llm_raw_response?: unknown;
|
|
45
|
+
errors?: Array<{
|
|
46
|
+
source?: string;
|
|
47
|
+
message?: string;
|
|
48
|
+
metadata?: Record<string, unknown>;
|
|
49
|
+
}>;
|
|
50
|
+
flow?: Record<string, unknown>;
|
|
51
|
+
interaction?: {
|
|
52
|
+
channel_name?: string;
|
|
53
|
+
audience?: string;
|
|
54
|
+
modality?: string;
|
|
55
|
+
renderer_name?: string;
|
|
56
|
+
output_type?: string;
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
export interface ConversationResponse {
|
|
60
|
+
success: boolean;
|
|
61
|
+
message: string;
|
|
62
|
+
intent_type?: string;
|
|
63
|
+
intent_id?: string;
|
|
64
|
+
data?: unknown;
|
|
65
|
+
clarification_needed?: boolean;
|
|
66
|
+
options?: string[];
|
|
67
|
+
suggestions?: string[];
|
|
68
|
+
error?: string;
|
|
69
|
+
/** Desk Spec 3 (US2): the turn's correlation id, to tie it to its receipts. */
|
|
70
|
+
trace_id?: string;
|
|
71
|
+
/** ADR-0133 §B.7: the inbound turn's sequence number (present on channel party turns). */
|
|
72
|
+
conversation_turn_seq?: number;
|
|
73
|
+
_debug?: ConversationDebugInfo;
|
|
74
|
+
}
|
|
75
|
+
export interface ConversationTurn {
|
|
76
|
+
role: 'user' | 'assistant' | 'system';
|
|
77
|
+
content: string;
|
|
78
|
+
timestamp: string;
|
|
79
|
+
intent_id?: string;
|
|
80
|
+
metadata?: {
|
|
81
|
+
intent_type?: string;
|
|
82
|
+
entity_name?: string;
|
|
83
|
+
data?: Record<string, unknown>;
|
|
84
|
+
interaction_context?: {
|
|
85
|
+
channel_name?: string;
|
|
86
|
+
audience?: string;
|
|
87
|
+
modality?: string;
|
|
88
|
+
renderer_name?: string;
|
|
89
|
+
};
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
export interface ConversationHistoryResponse {
|
|
93
|
+
success: true;
|
|
94
|
+
history: ConversationTurn[];
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=conversation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../src/types/conversation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../src/types/conversation.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface EntityInput {
|
|
2
|
+
name: string;
|
|
3
|
+
label?: string;
|
|
4
|
+
description?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface FieldDefinitionInput {
|
|
7
|
+
name: string;
|
|
8
|
+
field_type: string;
|
|
9
|
+
label?: string;
|
|
10
|
+
description?: string;
|
|
11
|
+
is_required?: boolean;
|
|
12
|
+
config?: Record<string, unknown>;
|
|
13
|
+
options?: string[];
|
|
14
|
+
default_value?: unknown;
|
|
15
|
+
position?: number;
|
|
16
|
+
}
|
|
17
|
+
export interface ToolExecutionResult {
|
|
18
|
+
success: boolean;
|
|
19
|
+
data?: unknown;
|
|
20
|
+
error?: string;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=entities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../../src/types/entities.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAUD,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../../src/types/entities.ts"],"names":[],"mappings":";AAAA,4EAA4E"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { SseConversationTurnCreatedData, SseConversationTurnCreatedPayload } from '../generated';
|
|
2
|
+
/** Metadata-only payload of a `conversation.turn_created` event (ADR-0104). */
|
|
3
|
+
export type ConversationTurnCreatedPayload = SseConversationTurnCreatedPayload;
|
|
4
|
+
/** The SSE bridge wraps every event's data as `{entity, record_id, payload, timestamp}`. */
|
|
5
|
+
export type ConversationTurnCreatedData = SseConversationTurnCreatedData;
|
|
6
|
+
/** A typed `conversation.turn_created` event. `id` is the SSE frame id (correlation / Last-Event-ID anchor). */
|
|
7
|
+
export interface ConversationTurnCreatedEvent {
|
|
8
|
+
event: 'conversation.turn_created';
|
|
9
|
+
id?: string;
|
|
10
|
+
data: ConversationTurnCreatedData;
|
|
11
|
+
}
|
|
12
|
+
/** Any other named runtime event — `data` is left unvalidated. */
|
|
13
|
+
export interface GenericStreamEvent {
|
|
14
|
+
event: string;
|
|
15
|
+
id?: string;
|
|
16
|
+
data: unknown;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* A typed runtime stream event. Narrow to the `conversation.turn_created` arm with the
|
|
20
|
+
* exported `isConversationTurnCreatedEvent` guard (a plain `event === '…'` check does NOT
|
|
21
|
+
* narrow, because the generic arm's `event: string` overlaps the literal).
|
|
22
|
+
*/
|
|
23
|
+
export type RuntimeStreamEvent = ConversationTurnCreatedEvent | GenericStreamEvent;
|
|
24
|
+
/** Handlers for `events.stream`. Only `onEvent` is typically needed. */
|
|
25
|
+
export interface EventStreamHandlers {
|
|
26
|
+
/** Each complete, parsed, typed frame. Heartbeats/comments never surface. */
|
|
27
|
+
onEvent?: (event: RuntimeStreamEvent) => void;
|
|
28
|
+
/** A terminal (non-reconnectable) error — invoked at most once. */
|
|
29
|
+
onError?: (err: unknown) => void;
|
|
30
|
+
/** Fired on each successful (re)connect. */
|
|
31
|
+
onOpen?: () => void;
|
|
32
|
+
}
|
|
33
|
+
/** Options for `events.stream`. */
|
|
34
|
+
export interface EventStreamOptions {
|
|
35
|
+
/** Aborting this is equivalent to `handle.close()`. */
|
|
36
|
+
signal?: AbortSignal;
|
|
37
|
+
/** Reconnect on transient disconnects (default: true). */
|
|
38
|
+
reconnect?: boolean;
|
|
39
|
+
/** Seed `Last-Event-ID` on the initial connect (resume a known position). */
|
|
40
|
+
lastEventId?: string;
|
|
41
|
+
}
|
|
42
|
+
/** The teardown handle returned by `events.stream`. */
|
|
43
|
+
export interface EventStreamHandle {
|
|
44
|
+
/** Idempotent teardown: abort the request, cancel the reader, stop reconnecting. */
|
|
45
|
+
close(): void;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Options for `events.iterate` — the async-iterable (pull) view over the same
|
|
49
|
+
* stream `events.stream` consumes via callbacks. Extends `EventStreamOptions`
|
|
50
|
+
* (`signal`/`reconnect`/`lastEventId` apply identically) with the pull-view's
|
|
51
|
+
* bounded-buffer controls. `onOpen` is intentionally absent: a per-connect
|
|
52
|
+
* signal has no meaning to a `for await` loop (use `events.stream` for that).
|
|
53
|
+
*/
|
|
54
|
+
export interface EventIterateOptions extends EventStreamOptions {
|
|
55
|
+
/**
|
|
56
|
+
* Capacity of the bounded FIFO buffer between the push producer (SSE frames)
|
|
57
|
+
* and the pull consumer (`for await`). Default 1024. Values below 1 clamp to 1.
|
|
58
|
+
* On overflow the OLDEST queued event is dropped (loss-tolerant, matching the
|
|
59
|
+
* stream leg), keeping memory bounded regardless of consumer speed.
|
|
60
|
+
*/
|
|
61
|
+
bufferSize?: number;
|
|
62
|
+
/**
|
|
63
|
+
* Invoked once per overflow drop with the running total of dropped events,
|
|
64
|
+
* so a slow consumer can observe loss out-of-band (the iterator value type
|
|
65
|
+
* stays a clean `RuntimeStreamEvent`).
|
|
66
|
+
*/
|
|
67
|
+
onDropped?: (totalDropped: number) => void;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Runtime type-guard for a `conversation.turn_created` event's `data` envelope (the
|
|
71
|
+
* single boundary-validation authority for the typed arm — QI-004, ADR-0038, no `as`).
|
|
72
|
+
*/
|
|
73
|
+
export declare function isConversationTurnCreatedData(data: unknown): data is ConversationTurnCreatedData;
|
|
74
|
+
/** Narrowing guard so consumers get the typed `conversation.turn_created` `data` shape. */
|
|
75
|
+
export declare function isConversationTurnCreatedEvent(event: RuntimeStreamEvent): event is ConversationTurnCreatedEvent;
|
|
76
|
+
/**
|
|
77
|
+
* Map a raw SSE frame (event name + parsed `data` JSON + optional id) to a typed
|
|
78
|
+
* `RuntimeStreamEvent`. Returns `undefined` when a `conversation.turn_created` frame fails
|
|
79
|
+
* validation (drop, never throw). Other named events pass through as the generic arm.
|
|
80
|
+
*/
|
|
81
|
+
export declare function toRuntimeStreamEvent(eventName: string, data: unknown, id: string | undefined): RuntimeStreamEvent | undefined;
|
|
82
|
+
//# sourceMappingURL=events-stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events-stream.d.ts","sourceRoot":"","sources":["../../src/types/events-stream.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,8BAA8B,EAAE,iCAAiC,EAAE,MAAM,cAAc,CAAC;AAQtG,+EAA+E;AAC/E,MAAM,MAAM,8BAA8B,GAAG,iCAAiC,CAAC;AAE/E,4FAA4F;AAC5F,MAAM,MAAM,2BAA2B,GAAG,8BAA8B,CAAC;AAEzE,gHAAgH;AAChH,MAAM,WAAW,4BAA4B;IACzC,KAAK,EAAE,2BAA2B,CAAC;IACnC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,2BAA2B,CAAC;CACrC;AAED,kEAAkE;AAClE,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,4BAA4B,GAAG,kBAAkB,CAAC;AAEnF,wEAAwE;AACxE,MAAM,WAAW,mBAAmB;IAChC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9C,mEAAmE;IACnE,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IACjC,4CAA4C;IAC5C,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,mCAAmC;AACnC,MAAM,WAAW,kBAAkB;IAC/B,uDAAuD;IACvD,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,uDAAuD;AACvD,MAAM,WAAW,iBAAiB;IAC9B,oFAAoF;IACpF,KAAK,IAAI,IAAI,CAAC;CACjB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC3D;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAQD;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,2BAA2B,CAWhG;AAED,2FAA2F;AAC3F,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,kBAAkB,GAAG,KAAK,IAAI,4BAA4B,CAE/G;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAChC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,OAAO,EACb,EAAE,EAAE,MAAM,GAAG,SAAS,GACvB,kBAAkB,GAAG,SAAS,CAQhC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// G3 — typed runtime SSE event map for `client.runtime.events.stream`.
|
|
3
|
+
//
|
|
4
|
+
// The runtime event stream (`GET /runtime/events/stream`, ADR-0104) emits NAMED
|
|
5
|
+
// SSE frames. `conversation.turn_created` carries a fixed metadata-only envelope; all
|
|
6
|
+
// other named events (record mutations, state transitions, …) pass through as
|
|
7
|
+
// the generic arm with `data: unknown`.
|
|
8
|
+
//
|
|
9
|
+
// Boundary validation uses a HAND-WRITTEN runtime type-guard — NOT Zod: the SDK
|
|
10
|
+
// ships ZERO runtime dependencies, so it follows the hand-written envelope-shape
|
|
11
|
+
// guard precedent in `fetch-client.ts`. A frame whose JSON is malformed or whose shape
|
|
12
|
+
// fails the guard is dropped (never thrown into `onEvent`) — the leg is
|
|
13
|
+
// loss-tolerant, matching the dashboard's prior raw-EventSource behavior.
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.isConversationTurnCreatedData = isConversationTurnCreatedData;
|
|
16
|
+
exports.isConversationTurnCreatedEvent = isConversationTurnCreatedEvent;
|
|
17
|
+
exports.toRuntimeStreamEvent = toRuntimeStreamEvent;
|
|
18
|
+
const CONVERSATION_TURN_CREATED = 'conversation.turn_created';
|
|
19
|
+
function isRecord(value) {
|
|
20
|
+
return typeof value === 'object' && value !== null;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Runtime type-guard for a `conversation.turn_created` event's `data` envelope (the
|
|
24
|
+
* single boundary-validation authority for the typed arm — QI-004, ADR-0038, no `as`).
|
|
25
|
+
*/
|
|
26
|
+
function isConversationTurnCreatedData(data) {
|
|
27
|
+
if (!isRecord(data))
|
|
28
|
+
return false;
|
|
29
|
+
if (typeof data.entity !== 'string')
|
|
30
|
+
return false;
|
|
31
|
+
if (typeof data.record_id !== 'string')
|
|
32
|
+
return false;
|
|
33
|
+
if (typeof data.timestamp !== 'string')
|
|
34
|
+
return false;
|
|
35
|
+
const payload = data.payload;
|
|
36
|
+
if (!isRecord(payload))
|
|
37
|
+
return false;
|
|
38
|
+
if (typeof payload.session_key !== 'string')
|
|
39
|
+
return false;
|
|
40
|
+
if (typeof payload.turn_number !== 'number')
|
|
41
|
+
return false;
|
|
42
|
+
if (typeof payload.role !== 'string')
|
|
43
|
+
return false;
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
/** Narrowing guard so consumers get the typed `conversation.turn_created` `data` shape. */
|
|
47
|
+
function isConversationTurnCreatedEvent(event) {
|
|
48
|
+
return event.event === CONVERSATION_TURN_CREATED;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Map a raw SSE frame (event name + parsed `data` JSON + optional id) to a typed
|
|
52
|
+
* `RuntimeStreamEvent`. Returns `undefined` when a `conversation.turn_created` frame fails
|
|
53
|
+
* validation (drop, never throw). Other named events pass through as the generic arm.
|
|
54
|
+
*/
|
|
55
|
+
function toRuntimeStreamEvent(eventName, data, id) {
|
|
56
|
+
if (eventName === CONVERSATION_TURN_CREATED) {
|
|
57
|
+
if (!isConversationTurnCreatedData(data))
|
|
58
|
+
return undefined;
|
|
59
|
+
return id !== undefined
|
|
60
|
+
? { event: CONVERSATION_TURN_CREATED, id, data }
|
|
61
|
+
: { event: CONVERSATION_TURN_CREATED, data };
|
|
62
|
+
}
|
|
63
|
+
return id !== undefined ? { event: eventName, id, data } : { event: eventName, data };
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=events-stream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events-stream.js","sourceRoot":"","sources":["../../src/types/events-stream.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,EAAE;AACF,gFAAgF;AAChF,sFAAsF;AACtF,8EAA8E;AAC9E,wCAAwC;AACxC,EAAE;AACF,gFAAgF;AAChF,iFAAiF;AACjF,uFAAuF;AACvF,wEAAwE;AACxE,0EAA0E;;AAgG1E,sEAWC;AAGD,wEAEC;AAOD,oDAYC;AA7CD,MAAM,yBAAyB,GAAG,2BAA2B,CAAC;AAE9D,SAAS,QAAQ,CAAC,KAAc;IAC5B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACvD,CAAC;AAED;;;GAGG;AACH,SAAgB,6BAA6B,CAAC,IAAa;IACvD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAClC,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAClD,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACrD,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACrD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,OAAO,OAAO,CAAC,WAAW,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1D,IAAI,OAAO,OAAO,CAAC,WAAW,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1D,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACnD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,2FAA2F;AAC3F,SAAgB,8BAA8B,CAAC,KAAyB;IACpE,OAAO,KAAK,CAAC,KAAK,KAAK,yBAAyB,CAAC;AACrD,CAAC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB,CAChC,SAAiB,EACjB,IAAa,EACb,EAAsB;IAEtB,IAAI,SAAS,KAAK,yBAAyB,EAAE,CAAC;QAC1C,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;QAC3D,OAAO,EAAE,KAAK,SAAS;YACnB,CAAC,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,EAAE,IAAI,EAAE;YAChD,CAAC,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAC1F,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface ContractFlowListItem {
|
|
2
|
+
readonly name: string;
|
|
3
|
+
readonly version?: string;
|
|
4
|
+
readonly description?: string;
|
|
5
|
+
readonly [key: string]: unknown;
|
|
6
|
+
}
|
|
7
|
+
export type ContractFlowInput = Record<string, unknown>;
|
|
8
|
+
//# sourceMappingURL=flows-contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flows-contract.d.ts","sourceRoot":"","sources":["../../src/types/flows-contract.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACnC;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Types for the contract.flows resource (A4). Flow *definitions* live on the
|
|
3
|
+
// contract plane (`contract.flows`); flow *instances/runs* are runtime-plane
|
|
4
|
+
// and typed separately in `./flows`. Kept intentionally open (index signature)
|
|
5
|
+
// pending the full flow-definition schema — broad typing is track G (NG-005).
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
//# sourceMappingURL=flows-contract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flows-contract.js","sourceRoot":"","sources":["../../src/types/flows-contract.ts"],"names":[],"mappings":";AAAA,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,8EAA8E"}
|