@axonflow/sdk 2.2.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/README.md +185 -8
  2. package/dist/cjs/client.d.ts +530 -8
  3. package/dist/cjs/client.d.ts.map +1 -1
  4. package/dist/cjs/client.js +1760 -45
  5. package/dist/cjs/client.js.map +1 -1
  6. package/dist/cjs/errors.d.ts +22 -0
  7. package/dist/cjs/errors.d.ts.map +1 -1
  8. package/dist/cjs/errors.js +32 -1
  9. package/dist/cjs/errors.js.map +1 -1
  10. package/dist/cjs/index.d.ts +10 -14
  11. package/dist/cjs/index.d.ts.map +1 -1
  12. package/dist/cjs/index.js +11 -20
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/types/connector.d.ts +82 -0
  15. package/dist/cjs/types/connector.d.ts.map +1 -1
  16. package/dist/cjs/types/connector.js +7 -0
  17. package/dist/cjs/types/connector.js.map +1 -1
  18. package/dist/cjs/types/execution.d.ts +227 -0
  19. package/dist/cjs/types/execution.d.ts.map +1 -0
  20. package/dist/cjs/types/execution.js +73 -0
  21. package/dist/cjs/types/execution.js.map +1 -0
  22. package/dist/cjs/types/index.d.ts +3 -0
  23. package/dist/cjs/types/index.d.ts.map +1 -1
  24. package/dist/cjs/types/index.js +3 -0
  25. package/dist/cjs/types/index.js.map +1 -1
  26. package/dist/cjs/types/masfeat.d.ts +238 -0
  27. package/dist/cjs/types/masfeat.d.ts.map +1 -0
  28. package/dist/cjs/types/masfeat.js +11 -0
  29. package/dist/cjs/types/masfeat.js.map +1 -0
  30. package/dist/cjs/types/planning.d.ts +126 -1
  31. package/dist/cjs/types/planning.d.ts.map +1 -1
  32. package/dist/cjs/types/policies.d.ts +19 -1
  33. package/dist/cjs/types/policies.d.ts.map +1 -1
  34. package/dist/cjs/types/proxy.d.ts +29 -3
  35. package/dist/cjs/types/proxy.d.ts.map +1 -1
  36. package/dist/cjs/types/workflows.d.ts +318 -0
  37. package/dist/cjs/types/workflows.d.ts.map +1 -0
  38. package/dist/cjs/types/workflows.js +61 -0
  39. package/dist/cjs/types/workflows.js.map +1 -0
  40. package/dist/esm/client.d.ts +530 -8
  41. package/dist/esm/client.d.ts.map +1 -1
  42. package/dist/esm/client.js +1761 -46
  43. package/dist/esm/client.js.map +1 -1
  44. package/dist/esm/errors.d.ts +22 -0
  45. package/dist/esm/errors.d.ts.map +1 -1
  46. package/dist/esm/errors.js +30 -0
  47. package/dist/esm/errors.js.map +1 -1
  48. package/dist/esm/index.d.ts +10 -14
  49. package/dist/esm/index.d.ts.map +1 -1
  50. package/dist/esm/index.js +7 -15
  51. package/dist/esm/index.js.map +1 -1
  52. package/dist/esm/types/connector.d.ts +82 -0
  53. package/dist/esm/types/connector.d.ts.map +1 -1
  54. package/dist/esm/types/connector.js +6 -1
  55. package/dist/esm/types/connector.js.map +1 -1
  56. package/dist/esm/types/execution.d.ts +227 -0
  57. package/dist/esm/types/execution.d.ts.map +1 -0
  58. package/dist/esm/types/execution.js +70 -0
  59. package/dist/esm/types/execution.js.map +1 -0
  60. package/dist/esm/types/index.d.ts +3 -0
  61. package/dist/esm/types/index.d.ts.map +1 -1
  62. package/dist/esm/types/index.js +3 -0
  63. package/dist/esm/types/index.js.map +1 -1
  64. package/dist/esm/types/masfeat.d.ts +238 -0
  65. package/dist/esm/types/masfeat.d.ts.map +1 -0
  66. package/dist/esm/types/masfeat.js +10 -0
  67. package/dist/esm/types/masfeat.js.map +1 -0
  68. package/dist/esm/types/planning.d.ts +126 -1
  69. package/dist/esm/types/planning.d.ts.map +1 -1
  70. package/dist/esm/types/policies.d.ts +19 -1
  71. package/dist/esm/types/policies.d.ts.map +1 -1
  72. package/dist/esm/types/proxy.d.ts +29 -3
  73. package/dist/esm/types/proxy.d.ts.map +1 -1
  74. package/dist/esm/types/workflows.d.ts +318 -0
  75. package/dist/esm/types/workflows.d.ts.map +1 -0
  76. package/dist/esm/types/workflows.js +58 -0
  77. package/dist/esm/types/workflows.js.map +1 -0
  78. package/package.json +7 -2
  79. package/dist/cjs/interceptors/anthropic.d.ts +0 -40
  80. package/dist/cjs/interceptors/anthropic.d.ts.map +0 -1
  81. package/dist/cjs/interceptors/anthropic.js +0 -101
  82. package/dist/cjs/interceptors/anthropic.js.map +0 -1
  83. package/dist/cjs/interceptors/base.d.ts +0 -23
  84. package/dist/cjs/interceptors/base.d.ts.map +0 -1
  85. package/dist/cjs/interceptors/base.js +0 -10
  86. package/dist/cjs/interceptors/base.js.map +0 -1
  87. package/dist/cjs/interceptors/bedrock.d.ts +0 -142
  88. package/dist/cjs/interceptors/bedrock.d.ts.map +0 -1
  89. package/dist/cjs/interceptors/bedrock.js +0 -263
  90. package/dist/cjs/interceptors/bedrock.js.map +0 -1
  91. package/dist/cjs/interceptors/gemini.d.ts +0 -89
  92. package/dist/cjs/interceptors/gemini.d.ts.map +0 -1
  93. package/dist/cjs/interceptors/gemini.js +0 -121
  94. package/dist/cjs/interceptors/gemini.js.map +0 -1
  95. package/dist/cjs/interceptors/ollama.d.ts +0 -143
  96. package/dist/cjs/interceptors/ollama.d.ts.map +0 -1
  97. package/dist/cjs/interceptors/ollama.js +0 -153
  98. package/dist/cjs/interceptors/ollama.js.map +0 -1
  99. package/dist/cjs/interceptors/openai.d.ts +0 -40
  100. package/dist/cjs/interceptors/openai.d.ts.map +0 -1
  101. package/dist/cjs/interceptors/openai.js +0 -100
  102. package/dist/cjs/interceptors/openai.js.map +0 -1
  103. package/dist/esm/interceptors/anthropic.d.ts +0 -40
  104. package/dist/esm/interceptors/anthropic.d.ts.map +0 -1
  105. package/dist/esm/interceptors/anthropic.js +0 -96
  106. package/dist/esm/interceptors/anthropic.js.map +0 -1
  107. package/dist/esm/interceptors/base.d.ts +0 -23
  108. package/dist/esm/interceptors/base.d.ts.map +0 -1
  109. package/dist/esm/interceptors/base.js +0 -6
  110. package/dist/esm/interceptors/base.js.map +0 -1
  111. package/dist/esm/interceptors/bedrock.d.ts +0 -142
  112. package/dist/esm/interceptors/bedrock.d.ts.map +0 -1
  113. package/dist/esm/interceptors/bedrock.js +0 -224
  114. package/dist/esm/interceptors/bedrock.js.map +0 -1
  115. package/dist/esm/interceptors/gemini.d.ts +0 -89
  116. package/dist/esm/interceptors/gemini.d.ts.map +0 -1
  117. package/dist/esm/interceptors/gemini.js +0 -116
  118. package/dist/esm/interceptors/gemini.js.map +0 -1
  119. package/dist/esm/interceptors/ollama.d.ts +0 -143
  120. package/dist/esm/interceptors/ollama.d.ts.map +0 -1
  121. package/dist/esm/interceptors/ollama.js +0 -147
  122. package/dist/esm/interceptors/ollama.js.map +0 -1
  123. package/dist/esm/interceptors/openai.d.ts +0 -40
  124. package/dist/esm/interceptors/openai.d.ts.map +0 -1
  125. package/dist/esm/interceptors/openai.js +0 -95
  126. package/dist/esm/interceptors/openai.js.map +0 -1
@@ -0,0 +1,318 @@
1
+ /**
2
+ * Workflow Control Plane Types for AxonFlow SDK.
3
+ *
4
+ * The Workflow Control Plane provides governance gates for external orchestrators
5
+ * like LangChain, LangGraph, and CrewAI. These types define the request/response
6
+ * structures for registering workflows, checking step gates, and managing workflow
7
+ * lifecycle.
8
+ *
9
+ * "LangChain runs the workflow. AxonFlow decides when it's allowed to move forward."
10
+ */
11
+ import { PolicyMatch } from './planning';
12
+ /**
13
+ * Workflow status values.
14
+ */
15
+ export type WorkflowStatus = 'in_progress' | 'completed' | 'aborted' | 'failed';
16
+ /**
17
+ * Source orchestrator running the workflow.
18
+ */
19
+ export type WorkflowSource = 'langgraph' | 'langchain' | 'crewai' | 'external';
20
+ /**
21
+ * Gate decision values returned by step gate checks.
22
+ */
23
+ export type GateDecision = 'allow' | 'block' | 'require_approval';
24
+ /**
25
+ * Approval status for steps requiring human approval.
26
+ */
27
+ export type ApprovalStatus = 'pending' | 'approved' | 'rejected';
28
+ /**
29
+ * Step type indicating what kind of operation the step performs.
30
+ */
31
+ export type StepType = 'llm_call' | 'tool_call' | 'connector_call' | 'human_task';
32
+ /**
33
+ * Request to create a new workflow.
34
+ */
35
+ export interface CreateWorkflowRequest {
36
+ /** Human-readable name for the workflow */
37
+ workflow_name: string;
38
+ /** Source orchestrator running the workflow */
39
+ source?: WorkflowSource;
40
+ /** Total number of steps in the workflow (if known) */
41
+ total_steps?: number;
42
+ /** Additional metadata for the workflow */
43
+ metadata?: Record<string, unknown>;
44
+ }
45
+ /**
46
+ * Response from creating a workflow.
47
+ */
48
+ export interface CreateWorkflowResponse {
49
+ /** Unique identifier for the workflow */
50
+ workflow_id: string;
51
+ /** Name of the workflow */
52
+ workflow_name: string;
53
+ /** Source orchestrator */
54
+ source: WorkflowSource;
55
+ /** Current status (always 'in_progress' for new workflows) */
56
+ status: WorkflowStatus;
57
+ /** When the workflow was created */
58
+ created_at: string;
59
+ }
60
+ /**
61
+ * Request to check if a step is allowed to proceed.
62
+ */
63
+ export interface StepGateRequest {
64
+ /** Human-readable name for the step */
65
+ step_name?: string;
66
+ /** Type of step being executed */
67
+ step_type: StepType;
68
+ /** Input data for the step (for policy evaluation) */
69
+ step_input?: Record<string, unknown>;
70
+ /** LLM model being used (if applicable) */
71
+ model?: string;
72
+ /** LLM provider (if applicable) */
73
+ provider?: string;
74
+ }
75
+ /**
76
+ * Response from a step gate check.
77
+ */
78
+ export interface StepGateResponse {
79
+ /** The gate decision: allow, block, or require_approval */
80
+ decision: GateDecision;
81
+ /** Unique step ID assigned by the system */
82
+ step_id: string;
83
+ /** Reason for the decision (especially for block/require_approval) */
84
+ reason?: string;
85
+ /** IDs of policies that matched and influenced the decision */
86
+ policy_ids?: string[];
87
+ /** URL to the approval portal (if decision is require_approval) */
88
+ approval_url?: string;
89
+ /** All policies that were evaluated during the gate check (Issue #1021) */
90
+ policiesEvaluated?: PolicyMatch[];
91
+ /** Policies that matched and influenced the decision (Issue #1021) */
92
+ policiesMatched?: PolicyMatch[];
93
+ }
94
+ /**
95
+ * Information about a workflow step.
96
+ */
97
+ export interface WorkflowStepInfo {
98
+ /** Unique step identifier */
99
+ step_id: string;
100
+ /** Step index in the workflow (0-based) */
101
+ step_index: number;
102
+ /** Step name */
103
+ step_name?: string;
104
+ /** Step type */
105
+ step_type: StepType;
106
+ /** Gate decision for this step */
107
+ decision: GateDecision;
108
+ /** Reason for the decision */
109
+ decision_reason?: string;
110
+ /** Approval status (if require_approval decision) */
111
+ approval_status?: ApprovalStatus;
112
+ /** Who approved the step (if approved) */
113
+ approved_by?: string;
114
+ /** When the gate was checked */
115
+ gate_checked_at: string;
116
+ /** When the step was completed */
117
+ completed_at?: string;
118
+ }
119
+ /**
120
+ * Response containing workflow status.
121
+ */
122
+ export interface WorkflowStatusResponse {
123
+ /** Workflow ID */
124
+ workflow_id: string;
125
+ /** Workflow name */
126
+ workflow_name: string;
127
+ /** Source orchestrator */
128
+ source: WorkflowSource;
129
+ /** Current status */
130
+ status: WorkflowStatus;
131
+ /** Current step index (0-based) */
132
+ current_step_index: number;
133
+ /** Total steps in the workflow */
134
+ total_steps?: number;
135
+ /** When the workflow started */
136
+ started_at: string;
137
+ /** When the workflow completed (if completed) */
138
+ completed_at?: string;
139
+ /** List of steps in the workflow */
140
+ steps?: WorkflowStepInfo[];
141
+ }
142
+ /**
143
+ * Options for listing workflows.
144
+ */
145
+ export interface ListWorkflowsOptions {
146
+ /** Filter by workflow status */
147
+ status?: WorkflowStatus;
148
+ /** Filter by source */
149
+ source?: WorkflowSource;
150
+ /** Maximum number of results to return (default 50, max 100) */
151
+ limit?: number;
152
+ /** Offset for pagination */
153
+ offset?: number;
154
+ }
155
+ /**
156
+ * Response from listing workflows.
157
+ */
158
+ export interface ListWorkflowsResponse {
159
+ /** List of workflows */
160
+ workflows: WorkflowStatusResponse[];
161
+ /** Total count (for pagination) */
162
+ total: number;
163
+ }
164
+ /**
165
+ * Request to abort a workflow.
166
+ */
167
+ export interface AbortWorkflowRequest {
168
+ /** Reason for aborting the workflow */
169
+ reason?: string;
170
+ }
171
+ /**
172
+ * Request to mark a step as completed.
173
+ */
174
+ export interface MarkStepCompletedRequest {
175
+ /** Output data from the step */
176
+ output?: Record<string, unknown>;
177
+ /** Additional metadata */
178
+ metadata?: Record<string, unknown>;
179
+ }
180
+ /**
181
+ * Response from approving a workflow step.
182
+ */
183
+ export interface ApproveStepResponse {
184
+ /** Workflow ID */
185
+ workflow_id: string;
186
+ /** Step ID that was approved */
187
+ step_id: string;
188
+ /** Status after approval */
189
+ status: string;
190
+ }
191
+ /**
192
+ * Response from rejecting a workflow step.
193
+ */
194
+ export interface RejectStepResponse {
195
+ /** Workflow ID */
196
+ workflow_id: string;
197
+ /** Step ID that was rejected */
198
+ step_id: string;
199
+ /** Status after rejection */
200
+ status: string;
201
+ }
202
+ /**
203
+ * A pending approval for a workflow step.
204
+ */
205
+ export interface PendingApproval {
206
+ /** Workflow ID */
207
+ workflow_id: string;
208
+ /** Workflow name */
209
+ workflow_name: string;
210
+ /** Step ID awaiting approval */
211
+ step_id: string;
212
+ /** Step name */
213
+ step_name: string;
214
+ /** Step type */
215
+ step_type: string;
216
+ /** When the approval was created */
217
+ created_at: string;
218
+ }
219
+ /**
220
+ * Response from listing pending approvals.
221
+ */
222
+ export interface PendingApprovalsResponse {
223
+ /** List of pending approvals */
224
+ approvals: PendingApproval[];
225
+ /** Total count */
226
+ total: number;
227
+ }
228
+ /**
229
+ * Options for listing pending approvals.
230
+ */
231
+ export interface PendingApprovalsOptions {
232
+ /** Maximum number of results to return */
233
+ limit?: number;
234
+ }
235
+ /**
236
+ * Request to create a webhook subscription.
237
+ */
238
+ export interface CreateWebhookRequest {
239
+ /** URL to receive webhook events */
240
+ url: string;
241
+ /** Event types to subscribe to */
242
+ events: string[];
243
+ /** Optional secret for HMAC signature verification */
244
+ secret?: string;
245
+ /** Whether the webhook is active */
246
+ active: boolean;
247
+ }
248
+ /**
249
+ * A webhook subscription.
250
+ */
251
+ export interface WebhookSubscription {
252
+ /** Unique webhook ID */
253
+ id: string;
254
+ /** URL receiving webhook events */
255
+ url: string;
256
+ /** Event types subscribed to */
257
+ events: string[];
258
+ /** Whether the webhook is active */
259
+ active: boolean;
260
+ /** When the webhook was created */
261
+ created_at: string;
262
+ /** When the webhook was last updated */
263
+ updated_at: string;
264
+ }
265
+ /**
266
+ * Request to update a webhook subscription.
267
+ */
268
+ export interface UpdateWebhookRequest {
269
+ /** New URL (optional) */
270
+ url?: string;
271
+ /** New event types (optional) */
272
+ events?: string[];
273
+ /** Whether the webhook is active (optional) */
274
+ active?: boolean;
275
+ }
276
+ /**
277
+ * Response from listing webhooks.
278
+ */
279
+ export interface ListWebhooksResponse {
280
+ /** List of webhook subscriptions */
281
+ webhooks: WebhookSubscription[];
282
+ /** Total count */
283
+ total: number;
284
+ }
285
+ /**
286
+ * Helper functions for working with workflow types.
287
+ */
288
+ export declare const WorkflowHelpers: {
289
+ /**
290
+ * Check if a gate decision allows the step to proceed.
291
+ */
292
+ isAllowed(decision: GateDecision): boolean;
293
+ /**
294
+ * Check if a gate decision blocks the step.
295
+ */
296
+ isBlocked(decision: GateDecision): boolean;
297
+ /**
298
+ * Check if a gate decision requires human approval.
299
+ */
300
+ requiresApproval(decision: GateDecision): boolean;
301
+ /**
302
+ * Check if a workflow status is terminal (completed, aborted, or failed).
303
+ */
304
+ isTerminal(status: WorkflowStatus): boolean;
305
+ /**
306
+ * Check if a step gate response allows the step to proceed.
307
+ */
308
+ gateIsAllowed(response: StepGateResponse): boolean;
309
+ /**
310
+ * Check if a step gate response blocks the step.
311
+ */
312
+ gateIsBlocked(response: StepGateResponse): boolean;
313
+ /**
314
+ * Check if a step gate response requires approval.
315
+ */
316
+ gateRequiresApproval(response: StepGateResponse): boolean;
317
+ };
318
+ //# sourceMappingURL=workflows.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflows.d.ts","sourceRoot":"","sources":["../../../src/types/workflows.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ /**
3
+ * Workflow Control Plane Types for AxonFlow SDK.
4
+ *
5
+ * The Workflow Control Plane provides governance gates for external orchestrators
6
+ * like LangChain, LangGraph, and CrewAI. These types define the request/response
7
+ * structures for registering workflows, checking step gates, and managing workflow
8
+ * lifecycle.
9
+ *
10
+ * "LangChain runs the workflow. AxonFlow decides when it's allowed to move forward."
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.WorkflowHelpers = void 0;
14
+ /**
15
+ * Helper functions for working with workflow types.
16
+ */
17
+ exports.WorkflowHelpers = {
18
+ /**
19
+ * Check if a gate decision allows the step to proceed.
20
+ */
21
+ isAllowed(decision) {
22
+ return decision === 'allow';
23
+ },
24
+ /**
25
+ * Check if a gate decision blocks the step.
26
+ */
27
+ isBlocked(decision) {
28
+ return decision === 'block';
29
+ },
30
+ /**
31
+ * Check if a gate decision requires human approval.
32
+ */
33
+ requiresApproval(decision) {
34
+ return decision === 'require_approval';
35
+ },
36
+ /**
37
+ * Check if a workflow status is terminal (completed, aborted, or failed).
38
+ */
39
+ isTerminal(status) {
40
+ return status === 'completed' || status === 'aborted' || status === 'failed';
41
+ },
42
+ /**
43
+ * Check if a step gate response allows the step to proceed.
44
+ */
45
+ gateIsAllowed(response) {
46
+ return response.decision === 'allow';
47
+ },
48
+ /**
49
+ * Check if a step gate response blocks the step.
50
+ */
51
+ gateIsBlocked(response) {
52
+ return response.decision === 'block';
53
+ },
54
+ /**
55
+ * Check if a step gate response requires approval.
56
+ */
57
+ gateRequiresApproval(response) {
58
+ return response.decision === 'require_approval';
59
+ },
60
+ };
61
+ //# sourceMappingURL=workflows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflows.js","sourceRoot":"","sources":["../../../src/types/workflows.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAqTH;;GAEG;AACU,QAAA,eAAe,GAAG;IAC7B;;OAEG;IACH,SAAS,CAAC,QAAsB;QAC9B,OAAO,QAAQ,KAAK,OAAO,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,QAAsB;QAC9B,OAAO,QAAQ,KAAK,OAAO,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,QAAsB;QACrC,OAAO,QAAQ,KAAK,kBAAkB,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,MAAsB;QAC/B,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,QAAQ,CAAC;IAC/E,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,QAA0B;QACtC,OAAO,QAAQ,CAAC,QAAQ,KAAK,OAAO,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,QAA0B;QACtC,OAAO,QAAQ,CAAC,QAAQ,KAAK,OAAO,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,QAA0B;QAC7C,OAAO,QAAQ,CAAC,QAAQ,KAAK,kBAAkB,CAAC;IAClD,CAAC;CACF,CAAC"}