@tangle-network/hub-sdk 0.2.1 → 0.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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/client.ts","../src/redaction.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/client.ts","../src/redaction.ts"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { SSEChunkParser } from "@tangle-network/sdk-telemetry";
1
2
  //#region src/redaction.ts
2
3
  const SECRET_KEY_PATTERN = /(api[_-]?key|authorization|capability[_-]?token|token|secret)/i;
3
4
  const SECRET_VALUE_PATTERN = /\b(?:sk-tan[-_]|hubcap_|hct_|gh[pousr]_)[A-Za-z0-9_=-]+\b/g;
@@ -21,6 +22,160 @@ var HubSdkError = class extends Error {
21
22
  this.status = options.status;
22
23
  }
23
24
  };
25
+ function bodySnippet(body, max = 200) {
26
+ const trimmed = body.trim();
27
+ return trimmed.length > max ? `${trimmed.slice(0, max)}…` : trimmed;
28
+ }
29
+ function httpError(path, status, statusText, body, contentType) {
30
+ const suffix = statusText ? ` ${statusText}` : "";
31
+ return new HubSdkError({
32
+ code: `HUB_HTTP_${status}`,
33
+ message: `Hub request ${path} failed: HTTP ${status}${suffix}`,
34
+ details: {
35
+ status,
36
+ path,
37
+ contentType: contentType || null,
38
+ bodySnippet: bodySnippet(body)
39
+ }
40
+ }, { status });
41
+ }
42
+ function isHubErrorEnvelope(value) {
43
+ if (typeof value !== "object" || value === null) return false;
44
+ const candidate = value;
45
+ if (candidate.success !== false) return false;
46
+ const error = candidate.error;
47
+ return typeof error === "object" && error !== null && typeof error.code === "string";
48
+ }
49
+ function isHubSuccessEnvelope(value) {
50
+ return typeof value === "object" && value !== null && value.success === true;
51
+ }
52
+ function isRecord(value) {
53
+ return typeof value === "object" && value !== null;
54
+ }
55
+ function optString(value) {
56
+ return typeof value === "string" ? value : "";
57
+ }
58
+ /** An agent iteration's terminal status (`iteration.ended`) — only ever
59
+ * succeeded/failed; an iteration is never guard-skipped. */
60
+ function isIterationStatus(value) {
61
+ return value === "succeeded" || value === "failed";
62
+ }
63
+ /** An action's terminal status on `action.finished`. Beyond succeeded/failed a
64
+ * guarded action can end `skipped` (its `if` resolved false, so it never ran) —
65
+ * accepted here so a skipped event is surfaced, not dropped as malformed. */
66
+ function isActionFinishedStatus(value) {
67
+ return value === "succeeded" || value === "failed" || value === "skipped";
68
+ }
69
+ /** Terminal status of a whole run's `run.done` event. A run can end `cancelled`
70
+ * (a user cancel) — a value neither the action nor iteration status checkers
71
+ * accept — so `run.done` uses this rather than them, which would drop a
72
+ * cancelled terminal event and hang the stream. */
73
+ function isRunDoneStatus(value) {
74
+ return value === "succeeded" || value === "failed" || value === "cancelled";
75
+ }
76
+ /**
77
+ * Map one raw SSE event (its `event:` name + parsed JSON `data:`) to a typed
78
+ * run-stream event, validating the fields each variant declares rather than
79
+ * blindly casting the wire payload. A frame that doesn't match its event's
80
+ * shape (or an unknown event name) returns null so the consumer skips it — a
81
+ * malformed `token` can never reach a consumer as `{ delta: undefined }`, and
82
+ * new server event kinds don't break older clients.
83
+ */
84
+ function toRunStreamEvent(eventType, data) {
85
+ if (eventType === "ping") return { type: "ping" };
86
+ if (!isRecord(data)) return null;
87
+ switch (eventType) {
88
+ case "snapshot": return typeof data.id === "string" && typeof data.workflowId === "string" && typeof data.status === "string" && Array.isArray(data.actionResults) ? {
89
+ type: "snapshot",
90
+ run: data
91
+ } : null;
92
+ case "token": return typeof data.delta === "string" && typeof data.actionIndex === "number" ? {
93
+ type: "token",
94
+ actionIndex: data.actionIndex,
95
+ delta: data.delta,
96
+ at: optString(data.at)
97
+ } : null;
98
+ case "run.done": return isRunDoneStatus(data.status) ? {
99
+ type: "run.done",
100
+ status: data.status,
101
+ error: typeof data.error === "string" ? data.error : null,
102
+ ...typeof data.at === "string" ? { at: data.at } : {}
103
+ } : null;
104
+ case "run.waiting": return typeof data.decisionId === "string" && data.decisionId.length > 0 ? {
105
+ type: "run.waiting",
106
+ decisionId: data.decisionId,
107
+ ...typeof data.at === "string" ? { at: data.at } : {}
108
+ } : null;
109
+ case "action.started": return typeof data.index === "number" && typeof data.kind === "string" && typeof data.at === "string" ? {
110
+ type: "action.started",
111
+ index: data.index,
112
+ kind: data.kind,
113
+ at: data.at
114
+ } : null;
115
+ case "action.finished": return typeof data.index === "number" && typeof data.kind === "string" && isActionFinishedStatus(data.status) && typeof data.at === "string" ? {
116
+ type: "action.finished",
117
+ index: data.index,
118
+ kind: data.kind,
119
+ status: data.status,
120
+ at: data.at,
121
+ ...typeof data.costUsd === "number" ? { costUsd: data.costUsd } : {},
122
+ ...typeof data.error === "string" ? { error: data.error } : {}
123
+ } : null;
124
+ case "iteration.started": return typeof data.actionIndex === "number" && typeof data.iterationIndex === "number" && typeof data.at === "string" ? {
125
+ type: "iteration.started",
126
+ actionIndex: data.actionIndex,
127
+ iterationIndex: data.iterationIndex,
128
+ at: data.at,
129
+ ...typeof data.model === "string" ? { model: data.model } : {}
130
+ } : null;
131
+ case "iteration.ended": return typeof data.actionIndex === "number" && typeof data.iterationIndex === "number" && isIterationStatus(data.status) && typeof data.at === "string" ? {
132
+ type: "iteration.ended",
133
+ actionIndex: data.actionIndex,
134
+ iterationIndex: data.iterationIndex,
135
+ status: data.status,
136
+ at: data.at,
137
+ ...typeof data.outputPreview === "string" ? { outputPreview: data.outputPreview } : {},
138
+ ...typeof data.inputTokens === "number" ? { inputTokens: data.inputTokens } : {},
139
+ ...typeof data.outputTokens === "number" ? { outputTokens: data.outputTokens } : {},
140
+ ...typeof data.costUsd === "number" ? { costUsd: data.costUsd } : {}
141
+ } : null;
142
+ default: return null;
143
+ }
144
+ }
145
+ /** True for an aborted/timed-out fetch (or any abort). fetch rejects with the
146
+ * signal's reason — a DOMException named `AbortError` (caller) or `TimeoutError`
147
+ * (AbortSignal.timeout). */
148
+ function isAbortError(err) {
149
+ return err instanceof Error && (err.name === "AbortError" || err.name === "TimeoutError");
150
+ }
151
+ /** A signal that aborts when the caller's signal aborts OR `timeoutMs` elapses.
152
+ * Returns undefined when neither bound applies (no per-request abort needed). */
153
+ function combineAbortSignals(caller, timeoutMs) {
154
+ const signals = [];
155
+ if (caller) signals.push(caller);
156
+ if (timeoutMs !== null) signals.push(AbortSignal.timeout(timeoutMs));
157
+ if (signals.length === 0) return void 0;
158
+ return signals.length === 1 ? signals[0] : AbortSignal.any(signals);
159
+ }
160
+ /** Resolve after `ms`, or reject if `signal` aborts first. Clears its timer on
161
+ * abort so a cancelled wait leaves nothing pending. */
162
+ function delay(ms, signal) {
163
+ return new Promise((resolve, reject) => {
164
+ if (signal?.aborted) {
165
+ reject(signal.reason ?? /* @__PURE__ */ new Error("The operation was aborted"));
166
+ return;
167
+ }
168
+ const onAbort = () => {
169
+ clearTimeout(timer);
170
+ reject(signal?.reason ?? /* @__PURE__ */ new Error("The operation was aborted"));
171
+ };
172
+ const timer = setTimeout(() => {
173
+ signal?.removeEventListener("abort", onAbort);
174
+ resolve();
175
+ }, ms);
176
+ signal?.addEventListener("abort", onAbort, { once: true });
177
+ });
178
+ }
24
179
  const HUB_URL_ENV_VAR = "TANGLE_HUB_URL";
25
180
  const HUB_API_KEY_ENV_VAR = "TANGLE_API_KEY";
26
181
  const HUB_CAPABILITY_TOKEN_ENV_VAR = "TANGLE_HUB_CAPABILITY_TOKEN";
@@ -77,11 +232,12 @@ var HubClient = class HubClient {
77
232
  approvals;
78
233
  audit;
79
234
  githubApp;
235
+ workflows;
80
236
  constructor(options) {
81
237
  this.baseUrl = options.baseUrl.replace(/\/+$/, "");
82
238
  this.apiKey = options.apiKey;
83
239
  this.authHeaders = options.authHeaders;
84
- this.fetch = options.fetch ?? fetch;
240
+ this.fetch = options.fetch ?? fetch.bind(globalThis);
85
241
  this.connections = new HubConnectionsClient((path, init) => this.request(path, init));
86
242
  this.permissions = new HubPermissionsClient((path, init) => this.request(path, init));
87
243
  this.tokens = new HubTokensClient((path, init) => this.request(path, init));
@@ -89,6 +245,7 @@ var HubClient = class HubClient {
89
245
  this.approvals = new HubApprovalsClient((path, init) => this.request(path, init));
90
246
  this.audit = new HubAuditClient((path, init) => this.request(path, init));
91
247
  this.githubApp = new HubGithubAppClient((path, init) => this.request(path, init));
248
+ this.workflows = new HubWorkflowsClient((path, init) => this.request(path, init), (path, init) => this.stream(path, init));
92
249
  }
93
250
  static fromEnv(options = {}) {
94
251
  const env = options.env ?? readProcessEnv();
@@ -107,13 +264,57 @@ var HubClient = class HubClient {
107
264
  ...init,
108
265
  headers: await this.buildHeaders(init.headers)
109
266
  });
110
- const envelope = await response.json();
111
- if (!envelope.success) throw new HubSdkError(envelope.error, { status: response.status });
112
- return envelope.data;
267
+ const status = response.status;
268
+ const contentType = response.headers.get("content-type") ?? "";
269
+ const bodyText = await response.text();
270
+ if (!contentType.includes("application/json")) throw httpError(path, status, response.statusText, bodyText, contentType);
271
+ let parsed;
272
+ try {
273
+ parsed = JSON.parse(bodyText);
274
+ } catch {
275
+ throw httpError(path, status, response.statusText, bodyText, contentType);
276
+ }
277
+ if (isHubErrorEnvelope(parsed)) throw new HubSdkError(parsed.error, { status });
278
+ if (isHubSuccessEnvelope(parsed)) return parsed.data;
279
+ throw httpError(path, status, response.statusText, bodyText, contentType);
280
+ }
281
+ /**
282
+ * Open a streaming (Server-Sent Events) response and return its raw body.
283
+ * Shares auth-header building + `fetch` with {@link request}, but does NOT
284
+ * buffer or JSON-parse the body — the caller consumes the stream.
285
+ *
286
+ * A successful stream comes back as `text/event-stream`. Anything else is an
287
+ * error envelope (404/429/401 JSON) or a transport failure (gateway/HTML
288
+ * page); it is surfaced the same way {@link request} surfaces errors — a
289
+ * typed `HubSdkError` from a `{success:false}` envelope, otherwise an
290
+ * `HUB_HTTP_<status>` transport error — rather than handed back as bogus SSE.
291
+ */
292
+ async stream(path, init) {
293
+ const response = await this.fetch(`${this.baseUrl}${path}`, {
294
+ ...init,
295
+ headers: await this.buildHeaders(init.headers)
296
+ });
297
+ const status = response.status;
298
+ const contentType = response.headers.get("content-type") ?? "";
299
+ if (!response.ok || !contentType.includes("text/event-stream")) {
300
+ const bodyText = await response.text().catch(() => "");
301
+ if (contentType.includes("application/json")) {
302
+ let parsed;
303
+ try {
304
+ parsed = JSON.parse(bodyText);
305
+ } catch {
306
+ parsed = void 0;
307
+ }
308
+ if (isHubErrorEnvelope(parsed)) throw new HubSdkError(parsed.error, { status });
309
+ }
310
+ throw httpError(path, status, response.statusText, bodyText, contentType);
311
+ }
312
+ if (!response.body) throw httpError(path, status, response.statusText, "event-stream response had no body", contentType);
313
+ return response.body;
113
314
  }
114
315
  async buildHeaders(headers) {
115
316
  const mergedHeaders = new Headers(headers);
116
- mergedHeaders.set("Accept", "application/json");
317
+ if (!mergedHeaders.has("Accept")) mergedHeaders.set("Accept", "application/json");
117
318
  if (this.apiKey) mergedHeaders.set("Authorization", `Bearer ${this.apiKey}`);
118
319
  if (this.authHeaders) for (const [key, value] of new Headers(await this.authHeaders())) mergedHeaders.set(key, value);
119
320
  for (const [key, value] of new Headers(headers)) mergedHeaders.set(key, value);
@@ -169,6 +370,33 @@ var HubPermissionsClient = class {
169
370
  headers: { "Content-Type": "application/json" }
170
371
  });
171
372
  }
373
+ /** Reset an action to its default by deleting any stored override. */
374
+ async delete(input) {
375
+ return this.request("/v1/hub/policies", {
376
+ method: "DELETE",
377
+ body: JSON.stringify(input),
378
+ headers: { "Content-Type": "application/json" }
379
+ });
380
+ }
381
+ /** Bulk-allow every write action of a connection's provider. Reads are
382
+ * already allowed for sandbox agents; destructive actions stay `ask`.
383
+ * Idempotent: actions with an existing policy are left untouched. */
384
+ async allowWrites(connectionId) {
385
+ return this.request("/v1/hub/policies/allow-writes", {
386
+ method: "POST",
387
+ body: JSON.stringify({ connectionId }),
388
+ headers: { "Content-Type": "application/json" }
389
+ });
390
+ }
391
+ /** Inverse of `allowWrites`: delete only the rows it created for this
392
+ * connection. Manual per-action decisions are left intact. */
393
+ async revertWrites(connectionId) {
394
+ return this.request("/v1/hub/policies/revert-writes", {
395
+ method: "POST",
396
+ body: JSON.stringify({ connectionId }),
397
+ headers: { "Content-Type": "application/json" }
398
+ });
399
+ }
172
400
  };
173
401
  var HubToolsClient = class {
174
402
  constructor(request) {
@@ -179,7 +407,8 @@ var HubToolsClient = class {
179
407
  method: "POST",
180
408
  body: JSON.stringify({
181
409
  query,
182
- provider: options.provider
410
+ provider: options.provider,
411
+ limit: options.limit
183
412
  }),
184
413
  headers: { "Content-Type": "application/json" }
185
414
  });
@@ -282,6 +511,12 @@ var HubConnectionsClient = class {
282
511
  async list() {
283
512
  return this.request("/v1/hub/connections", { method: "GET" });
284
513
  }
514
+ /** Connector catalog: every provider the hub can expose, each flagged with
515
+ * `configured` (whether its OAuth app credentials are wired). Callers render
516
+ * this alongside `list()` to offer Connect for not-yet-connected providers. */
517
+ async providers() {
518
+ return this.request("/v1/hub/providers", { method: "GET" });
519
+ }
285
520
  async start(provider, options = {}) {
286
521
  return this.request(`/v1/hub/connections/${encodeURIComponent(provider)}/start`, {
287
522
  method: "POST",
@@ -292,6 +527,31 @@ var HubConnectionsClient = class {
292
527
  headers: { "Content-Type": "application/json" }
293
528
  });
294
529
  }
530
+ async startWhatsappEmbeddedSignup(options = {}) {
531
+ return this.request("/v1/hub/connections/whatsapp-business/embedded-signup/start", {
532
+ method: "POST",
533
+ body: JSON.stringify({ returnUrl: options.returnUrl }),
534
+ headers: { "Content-Type": "application/json" }
535
+ });
536
+ }
537
+ async completeWhatsappEmbeddedSignup(input) {
538
+ return this.request("/v1/hub/connections/whatsapp-business/embedded-signup/complete", {
539
+ method: "POST",
540
+ body: JSON.stringify(input),
541
+ headers: { "Content-Type": "application/json" }
542
+ });
543
+ }
544
+ /** Connect a non-OAuth (api-key) connector by submitting the user's key.
545
+ * The server validates the key with a live probe before persisting and
546
+ * returns the created (or reconnected) connection — there is no redirect,
547
+ * unlike `start`. */
548
+ async connectApiKey(provider, apiKey) {
549
+ return this.request(`/v1/hub/connections/${encodeURIComponent(provider)}/connect-key`, {
550
+ method: "POST",
551
+ body: JSON.stringify({ apiKey }),
552
+ headers: { "Content-Type": "application/json" }
553
+ });
554
+ }
295
555
  async revoke(connectionId) {
296
556
  return this.request(`/v1/hub/connections/${encodeURIComponent(connectionId)}`, { method: "DELETE" });
297
557
  }
@@ -355,7 +615,223 @@ var HubAuditClient = class {
355
615
  return this.request(`/v1/hub/audit${query ? `?${query}` : ""}`, { method: "GET" });
356
616
  }
357
617
  };
618
+ var HubWorkflowsClient = class {
619
+ constructor(request, stream) {
620
+ this.request = request;
621
+ this.stream = stream;
622
+ }
623
+ async list() {
624
+ return this.request("/v1/workflows", { method: "GET" });
625
+ }
626
+ async get(id) {
627
+ return this.request(`/v1/workflows/${encodeURIComponent(id)}`, { method: "GET" });
628
+ }
629
+ async create(yaml) {
630
+ return this.request("/v1/workflows", {
631
+ method: "POST",
632
+ body: JSON.stringify({ yaml }),
633
+ headers: { "Content-Type": "application/json" }
634
+ });
635
+ }
636
+ async update(id, yaml) {
637
+ return this.request(`/v1/workflows/${encodeURIComponent(id)}`, {
638
+ method: "PUT",
639
+ body: JSON.stringify({ yaml }),
640
+ headers: { "Content-Type": "application/json" }
641
+ });
642
+ }
643
+ async delete(id) {
644
+ await this.request(`/v1/workflows/${encodeURIComponent(id)}`, { method: "DELETE" });
645
+ }
646
+ /**
647
+ * Enable or disable a workflow without editing its YAML. Works even when the
648
+ * workflow's connection was revoked (a disabled workflow can't be recompiled
649
+ * via `update`, but it can still be paused/resumed here).
650
+ */
651
+ async setEnabled(id, enabled) {
652
+ return this.request(`/v1/workflows/${encodeURIComponent(id)}`, {
653
+ method: "PATCH",
654
+ body: JSON.stringify({ enabled }),
655
+ headers: { "Content-Type": "application/json" }
656
+ });
657
+ }
658
+ /**
659
+ * One page of run history, newest first. Pass the previous page's
660
+ * `nextCursor` to fetch the next; a null `nextCursor` means the last page.
661
+ */
662
+ async listRuns(id, opts = {}) {
663
+ const params = new URLSearchParams();
664
+ if (opts.limit !== void 0) params.set("limit", String(opts.limit));
665
+ if (opts.cursor !== void 0) params.set("cursor", opts.cursor);
666
+ const query = params.toString();
667
+ return this.request(`/v1/workflows/${encodeURIComponent(id)}/runs${query ? `?${query}` : ""}`, { method: "GET" });
668
+ }
669
+ /**
670
+ * Enqueue an immediate ("Run now") run and return its `runId`. The run goes
671
+ * through the identical execution path a trigger delivery uses.
672
+ *
673
+ * `inputs` supplies the trigger fields the workflow reads (its
674
+ * {@link HubWorkflow.manualRunInputs}), as a flat `{ path: value }` map — e.g.
675
+ * `{ "pull_request.number": "123" }`. Omit it for a one-click run of a
676
+ * workflow that reads no trigger fields. Throws `HubSdkError`:
677
+ * `MISSING_RUN_INPUTS` when a required field is absent (`details.missing`
678
+ * names them), `WORKFLOW_DISABLED` when the workflow is paused, `NOT_FOUND`
679
+ * for an unknown/foreign id. Pass `opts.signal` to abort a slow request.
680
+ */
681
+ async run(id, inputs, opts = {}) {
682
+ const hasInputs = inputs !== void 0 && Object.keys(inputs).length > 0;
683
+ return this.request(`/v1/workflows/${encodeURIComponent(id)}/run`, {
684
+ method: "POST",
685
+ body: JSON.stringify(hasInputs ? { inputs } : {}),
686
+ headers: { "Content-Type": "application/json" },
687
+ ...opts.signal ? { signal: opts.signal } : {}
688
+ });
689
+ }
690
+ /**
691
+ * A single run's full detail: per-action `output` + `agentRun` execution
692
+ * detail (size-capped server-side) and the trigger context — the deep "why
693
+ * did this run do what it did" view. `NOT_FOUND` when the run is unknown or
694
+ * does not belong to both the caller and this workflow.
695
+ */
696
+ async getRun(id, runId, opts = {}) {
697
+ return this.request(`/v1/workflows/${encodeURIComponent(id)}/runs/${encodeURIComponent(runId)}`, {
698
+ method: "GET",
699
+ ...opts.signal ? { signal: opts.signal } : {}
700
+ });
701
+ }
702
+ /**
703
+ * Stop a queued or in-flight run. A `queued` run is cancelled synchronously
704
+ * and comes back `{ status: "cancelled" }` (already terminal); a `running` run
705
+ * is signalled to abort and comes back `{ status: "cancelling", signalled }` —
706
+ * it settles `cancelled` a moment later as its current action tears down, which
707
+ * a {@link watchRun}/{@link getRun} observes. Throws `HubSdkError`:
708
+ * `RUN_NOT_CANCELLABLE` when the run already finished, `NOT_FOUND` for an
709
+ * unknown/foreign run id. Pass `opts.signal` to abort a slow request.
710
+ */
711
+ async cancel(id, runId, opts = {}) {
712
+ return this.request(`/v1/workflows/${encodeURIComponent(id)}/runs/${encodeURIComponent(runId)}/cancel`, {
713
+ method: "POST",
714
+ ...opts.signal ? { signal: opts.signal } : {}
715
+ });
716
+ }
717
+ /**
718
+ * Stream a run's live progress as an async iterable of typed events. The
719
+ * first event is always a `snapshot` of the current persisted state; then
720
+ * `action.*` / `iteration.*` / `token` ticks arrive as the run executes;
721
+ * `ping` is a keepalive; a terminal `run.done` ends the iteration. If the run
722
+ * is already finished when the stream opens, it yields the snapshot then
723
+ * `run.done` and completes.
724
+ *
725
+ * Live ticks require the worker executing the run to share the API process;
726
+ * across instances only `snapshot` + `run.done` (from the server's terminal
727
+ * poll) arrive — the persisted record, read via {@link getRun}, stays the
728
+ * source of truth. Pass `signal` to cancel; iterating to `run.done` (or
729
+ * breaking early) releases the connection.
730
+ */
731
+ async *watchRun(id, runId, opts = {}) {
732
+ const openStream = this.stream;
733
+ if (!openStream) throw new HubSdkError({
734
+ code: "HUB_CONFIG_INVALID",
735
+ message: "watchRun needs a streaming transport; use HubClient (which wires it up) rather than constructing HubWorkflowsClient directly"
736
+ });
737
+ const reader = (await openStream(`/v1/workflows/${encodeURIComponent(id)}/runs/${encodeURIComponent(runId)}/events`, {
738
+ method: "GET",
739
+ headers: { Accept: "text/event-stream" },
740
+ ...opts.signal ? { signal: opts.signal } : {}
741
+ })).getReader();
742
+ const decoder = new TextDecoder();
743
+ const parser = new SSEChunkParser({ transform: (raw) => {
744
+ try {
745
+ return JSON.parse(raw);
746
+ } catch {
747
+ return null;
748
+ }
749
+ } });
750
+ try {
751
+ for (;;) {
752
+ const { done, value } = await reader.read();
753
+ const text = done ? decoder.decode() : decoder.decode(value, { stream: true });
754
+ const parsedEvents = done ? [...parser.push(text), ...parser.flush()] : parser.push(text);
755
+ for (const parsed of parsedEvents) {
756
+ const event = toRunStreamEvent(parsed.eventType, parsed.data);
757
+ if (!event) continue;
758
+ yield event;
759
+ if (event.type === "run.done" || event.type === "run.waiting") return;
760
+ }
761
+ if (done) return;
762
+ }
763
+ } finally {
764
+ await reader.cancel().catch(() => {});
765
+ }
766
+ }
767
+ /**
768
+ * Poll {@link getRun} until the run reaches a terminal state (`succeeded` or
769
+ * `failed`) and return its detail. The scripting primitive behind "run and
770
+ * print the result": pairs with {@link run} for a one-call trigger-and-wait.
771
+ *
772
+ * Returns as soon as the run leaves the active set (`queued` / `running`) —
773
+ * i.e. on `succeeded`, `failed`, or any future non-active status — so a new
774
+ * terminal state can never hang the wait. Polls every `pollIntervalMs`
775
+ * (default 2000). With `timeoutMs` set, throws
776
+ * `HubSdkError(WORKFLOW_RUN_TIMEOUT)` — carrying the last observed status on
777
+ * `details.status` — only once the deadline has actually passed; the last
778
+ * wait is clamped to the remaining time so a `timeoutMs` shorter than the
779
+ * poll interval still waits the full requested window rather than giving up a
780
+ * poll early. Pass `signal` to cancel the wait between polls.
781
+ */
782
+ async waitForRun(id, runId, opts = {}) {
783
+ const pollIntervalMs = opts.pollIntervalMs ?? 2e3;
784
+ if (!Number.isFinite(pollIntervalMs) || pollIntervalMs <= 0) throw new HubSdkError({
785
+ code: "HUB_CONFIG_INVALID",
786
+ message: `waitForRun pollIntervalMs must be a positive number (got ${opts.pollIntervalMs})`
787
+ });
788
+ if (opts.timeoutMs !== void 0 && (!Number.isFinite(opts.timeoutMs) || opts.timeoutMs <= 0)) throw new HubSdkError({
789
+ code: "HUB_CONFIG_INVALID",
790
+ message: `waitForRun timeoutMs must be a positive number (got ${opts.timeoutMs})`
791
+ });
792
+ const deadline = opts.timeoutMs !== void 0 ? Date.now() + opts.timeoutMs : null;
793
+ const timeoutError = (status) => new HubSdkError({
794
+ code: "WORKFLOW_RUN_TIMEOUT",
795
+ message: `Workflow run ${runId} did not reach a terminal state within ${opts.timeoutMs}ms${status ? ` (last status: ${status})` : ""}`,
796
+ details: {
797
+ runId,
798
+ status,
799
+ timeoutMs: opts.timeoutMs
800
+ }
801
+ });
802
+ let lastStatus;
803
+ for (;;) {
804
+ if (opts.signal?.aborted) throw opts.signal.reason ?? /* @__PURE__ */ new Error("The operation was aborted");
805
+ const remainingMs = deadline !== null ? deadline - Date.now() : null;
806
+ if (remainingMs !== null && remainingMs <= 0) throw timeoutError(lastStatus);
807
+ const pollSignal = combineAbortSignals(opts.signal, remainingMs);
808
+ let run;
809
+ try {
810
+ run = await this.getRun(id, runId, pollSignal ? { signal: pollSignal } : {});
811
+ } catch (err) {
812
+ if (opts.signal?.aborted) throw err;
813
+ if (deadline !== null && isAbortError(err)) throw timeoutError(lastStatus);
814
+ throw err;
815
+ }
816
+ lastStatus = run.status;
817
+ if (run.status !== "queued" && run.status !== "running") return run;
818
+ const delayRemainingMs = deadline !== null ? deadline - Date.now() : null;
819
+ if (delayRemainingMs !== null && delayRemainingMs <= 0) throw timeoutError(lastStatus);
820
+ await delay(delayRemainingMs !== null ? Math.min(pollIntervalMs, delayRemainingMs) : pollIntervalMs, opts.signal);
821
+ }
822
+ }
823
+ async validate(yaml) {
824
+ return this.request("/v1/workflows/validate", {
825
+ method: "POST",
826
+ body: JSON.stringify({ yaml }),
827
+ headers: { "Content-Type": "application/json" }
828
+ });
829
+ }
830
+ async schema() {
831
+ return this.request("/v1/workflows/schema", { method: "GET" });
832
+ }
833
+ };
358
834
  //#endregion
359
- export { HUB_API_KEY_ENV_VAR, HUB_CAPABILITY_TOKEN_ENV_VAR, HUB_URL_ENV_VAR, HubApprovalsClient, HubAuditClient, HubClient, HubConnectionsClient, HubGithubAppClient, HubPermissionsClient, HubSdkError, HubTokensClient, HubToolsClient, redactHubValue, resolveHubAuth, resolveHubBaseUrl };
835
+ export { HUB_API_KEY_ENV_VAR, HUB_CAPABILITY_TOKEN_ENV_VAR, HUB_URL_ENV_VAR, HubApprovalsClient, HubAuditClient, HubClient, HubConnectionsClient, HubGithubAppClient, HubPermissionsClient, HubSdkError, HubTokensClient, HubToolsClient, HubWorkflowsClient, redactHubValue, resolveHubAuth, resolveHubBaseUrl };
360
836
 
361
837
  //# sourceMappingURL=index.js.map