@pipelex/sdk 0.26.0 → 0.28.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/README.md CHANGED
@@ -6,7 +6,7 @@ TypeScript SDK for the **Pipelex hosted API** — execute MTHDS methods, manage
6
6
 
7
7
  ## Status
8
8
 
9
- Early. `PipelexApiClient` implements the MTHDS protocol-execution routes (`execute` / `start` / `validate` / `models` / `version`), the build helpers (`/v1/build/*`), the crate routes (`resolve` / `codegen`), the durable run lifecycle (`start` → poll → result), and the Pipelex product routes (user profile, methods catalog, organizations, billing, API keys, onboarding, storage, runs list/update).
9
+ Early. `PipelexApiClient` implements the MTHDS protocol-execution routes (`execute` / `start` / `validate` / `models` / `version`), the build helpers (`/v1/build/*`), the crate routes (`resolve` / `codegen` / `pipeIo`), the durable run lifecycle (`start` → poll → result), and the Pipelex product routes (user profile, methods catalog, organizations, billing, API keys, onboarding, storage, runs list/update).
10
10
 
11
11
  Besides the client, the package exports `runCodegenCheck` — a **pure** offline check that verifies a committed `codegen()` tree still matches its `codegen.lock`. It needs no server, no key, and no client instance, so it fits a CI job. See [`docs/crate-routes.md`](./docs/crate-routes.md#the-offline-check--runcodegencheck).
12
12
 
@@ -135,7 +135,7 @@ These pages ship inside the published package, so a reader who has only installe
135
135
  | [`docs/run-usage.md`](./docs/run-usage.md) | What a run consumed, record by record, and `summarizeUsage` which folds them into one reading |
136
136
  | [`docs/artifact-download.md`](./docs/artifact-download.md) | Turning the `pipelex-storage://` references a run produced back into bytes: `locateArtifacts`, `collectArtifacts`, `resolveArtifacts`, `fetchArtifact`, `downloadArtifacts`, and how a saved file is named after the field it fills |
137
137
  | [`docs/input-preparation.md`](./docs/input-preparation.md) | The other direction — `uploadFile` and `prepareInputs`, which turn local files into references a run can take, and the upload grant a browser page sends a file with |
138
- | [`docs/crate-routes.md`](./docs/crate-routes.md) | `resolve` and `codegen`, and the offline `runCodegenCheck` that guards a committed tree |
138
+ | [`docs/crate-routes.md`](./docs/crate-routes.md) | `resolve`, `codegen` and `pipeIo` — the normalized crate, the stamped types, and a method's I/O artifacts without a validation — and the offline `runCodegenCheck` that guards a committed tree |
139
139
  | [`docs/build-routes.md`](./docs/build-routes.md) | The `/v1/build/*` projections: `buildInputs`, `buildOutput`, `buildRunner` |
140
140
  | [`docs/client-identification.md`](./docs/client-identification.md) | The `User-Agent` every API request carries, and `appInfo`, the option that puts your program's name in front of it |
141
141
  | [`docs/errors.md`](./docs/errors.md) | A failed run's stored error report on `RunFailedError` and `RunRead`, and every member of a refused request's `ApiResponseError`, with the fields to branch on |
@@ -25,7 +25,7 @@
25
25
  * runs anywhere the global `fetch` does (the dispatcher is a Node refinement), and
26
26
  * only `downloadArtifacts` touches a filesystem.
27
27
  */
28
- import type { RunResults, RunResultState } from "./runs.js";
28
+ import type { GetRunResultOptions, RunResults, RunResultState } from "./runs.js";
29
29
  /** The scheme of a durable storage reference. */
30
30
  export declare const PIPELEX_STORAGE_SCHEME = "pipelex-storage://";
31
31
  /**
@@ -209,9 +209,7 @@ export interface ArtifactCapableClient {
209
209
  resolveStorageUrls(input: BulkResolveStorageUrlsInput, options?: {
210
210
  signal?: AbortSignal;
211
211
  }): Promise<BulkResolvedStorageUrls>;
212
- getRunResult(runId: string, options?: {
213
- signal?: AbortSignal;
214
- }): Promise<RunResultState>;
212
+ getRunResult(runId: string, options?: GetRunResultOptions): Promise<RunResultState>;
215
213
  }
216
214
  /**
217
215
  * Every `pipelex-storage://` reference inside a JSON-shaped value, each with
package/dist/artifacts.js CHANGED
@@ -741,9 +741,13 @@ function isExpired(expiresAt) {
741
741
  function isCredentialRefusal(err) {
742
742
  return err instanceof ApiResponseError && (err.status === 401 || err.status === 403);
743
743
  }
744
- /** Read a run's results by id, turning a run that has not completed into its typed error. */
745
- async function readCompletedResults(client, runId, signal) {
746
- const state = await client.getRunResult(runId, { signal });
744
+ /**
745
+ * Read a run's results by id, turning a run that has not completed into its typed error. Only the
746
+ * walked scope's artifact is asked for — the scope names are result artifact names — so the
747
+ * platform reads and re-signs nothing the download does not walk.
748
+ */
749
+ async function readCompletedResults(client, runId, scope, signal) {
750
+ const state = await client.getRunResult(runId, { signal, artifacts: [scope] });
747
751
  if (state.state === "running") {
748
752
  throw new RunStillRunningError(`Run ${runId} is still running, so it has no artifacts to download yet` +
749
753
  (state.retry_after_seconds != null ? ` — retry in ${state.retry_after_seconds}s.` : "."), runId, state.retry_after_seconds);
@@ -797,7 +801,7 @@ export async function downloadArtifacts(client, request) {
797
801
  }
798
802
  const results = hasResults
799
803
  ? request.results
800
- : await readCompletedResults(client, request.run_id, request.signal);
804
+ : await readCompletedResults(client, request.run_id, scope, request.signal);
801
805
  const runId = results.pipeline_run_id;
802
806
  // `working_memory` is read off the parsed body: the platform relays it whether
803
807
  // or not `RunResults` declares the field.
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../src/artifacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../src/artifacts.ts"],"names":[],"mappings":"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"}
package/dist/client.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type { MTHDSProtocol, ModelCategory, ModelDeck, RunOptions, StartOptions, VersionInfo } from "mthds/protocol";
2
- import type { BuildInputsRequest, BuildInputsResponse, BuildOutputRequest, BuildOutputResponse, BuildRunnerRequest, BuildRunnerResponse, CodegenRequest, CodegenResponse, ConceptRequest, ConceptResponse, DictPipeOutput, FormatResponse, LintResponse, MthdsFileItem, PipeSpecRequest, PipeSpecResponse, PipelexRunResultStart, PipelexValidationResult, ResolveRequest, ResolveResponse, ValidateMethodSelector } from "./models.js";
3
- import { type RunRead, type RunResults, type RunResultState, type WaitForResultOptions } from "./runs.js";
4
- import type { BillingPortalResponse, ChangePlanResponse, CheckoutResponse, InvoiceView, Membership, MembershipsResponse, ListMethodsQuery, MethodData, MethodDeletionAccepted, MethodPage, MethodSummary, MethodWriteInput, OnboardingSubmission, PipelexApiKeyCreated, PipelexApiKeyList, ListRunsQuery, PipelineRun, RunDetail, RunPage, PlanView, ResolvedStorageUrl, SubscriptionResponse, UpdateRunInput, UploadGrant, UploadGrantInput, UploadInput, UploadedFile, UserProfile } from "./product-models.js";
2
+ import type { BuildInputsRequest, BuildInputsResponse, BuildOutputRequest, BuildOutputResponse, BuildRunnerRequest, BuildRunnerResponse, CodegenRequest, CodegenResponse, ConceptRequest, ConceptResponse, DictPipeOutput, FormatResponse, LintResponse, MthdsFileItem, PipeIORequest, PipeIOResponse, PipeSpecRequest, PipeSpecResponse, PipelexRunResultStart, PipelexValidationResult, ResolveRequest, ResolveResponse, ValidateMethodSelector } from "./models.js";
3
+ import { type GetRunResultOptions, type RunRead, type RunResults, type RunResultState, type WaitForResultOptions } from "./runs.js";
4
+ import type { BillingPortalResponse, ChangePlanResponse, CheckoutResponse, InvoiceView, Membership, MembershipsResponse, ListMethodsQuery, MethodData, MethodDeletionAccepted, MethodPage, MethodSummary, MethodWriteInput, OnboardingSubmission, PipelexApiKeyCreated, PipelexApiKeyList, ListRunsQuery, RunHistoryItem, RunDetail, RunPage, PlanView, ResolvedStorageUrl, SubscriptionResponse, UpdateRunInput, UploadGrant, UploadGrantInput, UploadInput, UploadedFile, UserProfile } from "./product-models.js";
5
5
  import type { AppInfo } from "./user-agent.js";
6
6
  import type { UploadableAsset, UploadFileOptions, UploadRecord } from "./upload.js";
7
7
  import type { PrepareInputsRequest, PreparedInputs } from "./prepare-inputs.js";
@@ -323,13 +323,13 @@ export declare class PipelexApiClient implements MTHDSProtocol<DictPipeOutput> {
323
323
  format(content: string, options?: Record<string, unknown>): Promise<FormatResponse>;
324
324
  /**
325
325
  * POST one of the Pipelex-API extension routes — the tools (`lint`, `format`), the
326
- * crate routes (`resolve`, `codegen`), and the build projections (`build/*`). Their
326
+ * crate routes (`resolve`, `codegen`, `pipe-io`), and the build projections (`build/*`). Their
327
327
  * non-2xx bodies are RFC 7807 problems, mapped to the typed `ApiResponseError` like
328
328
  * the product routes.
329
329
  *
330
330
  * The mapping is what makes their no-verdict arms usable: a crate-family route
331
331
  * answers `422` for a request it cannot act on (an unresolvable pipe selector on the
332
- * build routes; an unknown `kind`/`target`, or a `pipe_ref` on the concept-set-wide
332
+ * build routes and `pipe-io`; an unknown `kind`/`target`, or a `pipe_ref` on the concept-set-wide
333
333
  * `types` kind, on `codegen`) and `501` for the reserved registry-form `method_ref`
334
334
  * (the address form is resolved server-side as of pipelex-api 0.21.0). A caller
335
335
  * branches on `ApiResponseError.status`, never on a message.
@@ -405,6 +405,37 @@ export declare class PipelexApiClient implements MTHDSProtocol<DictPipeOutput> {
405
405
  * a malformed selector is a 422; a registry-form `method_ref` is a `501`.
406
406
  */
407
407
  codegen(request: CodegenRequest): Promise<CodegenResponse>;
408
+ /**
409
+ * Read a method's three I/O artifacts — `POST /v1/pipe-io`.
410
+ *
411
+ * Resolves the closure exactly like {@link resolve}, selects a pipe, and returns its
412
+ * pipe I/O contracts, input form and output form — the MTHDS standard's artifacts,
413
+ * typed from `mthds/protocol` — beside the resolved `pipe_ref`, the method's own
414
+ * `default_pipe_ref`, and the runnability facts (`pending_signatures`, `is_runnable`).
415
+ * It runs NO dry-run sweep, so it costs one load and one derivation where `validate`
416
+ * dry-runs every pipe; a caller that shows a method, prepares its inputs or generates
417
+ * types for it reads this, and one that needs the dry-run verdict stays on `validate`.
418
+ *
419
+ * Selection: the request's qualified `pipe_ref`, else a fetched package's manifest
420
+ * `main_pipe`, else the closure's single `main_pipe` declaration. `all_pipes: true`
421
+ * describes every pipe instead, and never refuses for want of an entry pipe.
422
+ * `include_files: true` echoes the resolved closure's `.mthds` files as `files`.
423
+ *
424
+ * Same 200-verdict discipline and same three-form closure selector as {@link resolve}
425
+ * (the request is posted verbatim, and the selector XOR is the server's to enforce).
426
+ * Only a no-verdict condition throws `ApiResponseError`: a malformed selector and an
427
+ * over-limit file are `ValidationError` `422`s; a selection the route refuses is a
428
+ * `422` whose `errorType` is `EntryPipeNotFoundError` (an unknown `pipe_ref`, no entry
429
+ * pipe) or `EntryPipeAmbiguousError` (an ambiguous code, several entry pipes), the
430
+ * candidates in its `serverMessage`; a registry-form `method_ref` is a `501`; a pipe
431
+ * whose artifacts cannot be derived is a `500`.
432
+ *
433
+ * A `method_ref` gets the fetch-sized budget, as on the other crate routes. On the
434
+ * hosted API the gateway caps a request at about 30 seconds whatever the client
435
+ * allows, so a cold `method_ref` clone can answer a `502` that a retry clears once the
436
+ * runner has cached the clone.
437
+ */
438
+ pipeIo(request: PipeIORequest): Promise<PipeIOResponse>;
408
439
  /**
409
440
  * Project a pipe's declared inputs as a fill-in template — `POST /v1/build/inputs`.
410
441
  *
@@ -421,14 +452,14 @@ export declare class PipelexApiClient implements MTHDSProtocol<DictPipeOutput> {
421
452
  * model {@link BuildInputsRequest}; the address form is server-resolved, the
422
453
  * registry form `501`s) — exactly one of the two, like `buildOutput` /
423
454
  * `buildRunner`. There is NO by-id form: the build routes take no `method_id`
424
- * (the hosted tooling selector covers `validate`/`resolve`/`codegen` only), so a
455
+ * (the hosted tooling selector covers `validate`/`resolve`/`codegen`/`pipe-io` only), so a
425
456
  * stored method is expanded first — `buildInputs({ files: await
426
457
  * client.getMethodClosure(methodId) })`. That expansion stays the answer here
427
458
  * because a `buildInputs` caller wants this route's template; it is not what
428
459
  * `prepareInputs` does any more.
429
460
  *
430
461
  * Nothing inside this SDK calls this route: `prepareInputs` reads its signature
431
- * from the input-form descriptor on the validate report. It survives for the
462
+ * from the input-form descriptor `pipeIo` returns. It survives for the
432
463
  * consumers that still render a template over HTTP, and is retired with the rest
433
464
  * of `/v1/build/*` once they project it client-side.
434
465
  */
@@ -488,12 +519,18 @@ export declare class PipelexApiClient implements MTHDSProtocol<DictPipeOutput> {
488
519
  * as `error`
489
520
  * - HTTP 503 → `running` (Temporal degraded — retry, never fail a poller)
490
521
  *
522
+ * `options.artifacts` narrows the read to the named artifacts, sent as one
523
+ * comma-separated `?artifacts=` parameter: only those are read, and an
524
+ * unselected artifact is absent from the result (`undefined`) while a
525
+ * selected one the run never wrote is `null`. Omitted, every artifact is
526
+ * read. An empty selection or an unknown name throws a `RangeError` before
527
+ * any request. `MissingMainStuffError` is thrown only for a read that asked
528
+ * for `main_stuff` — no selection, or one naming it.
529
+ *
491
530
  * Throws `RunLifecycleUnavailableError` when the lifecycle routes are absent
492
531
  * (a bare runner).
493
532
  */
494
- getRunResult(runId: string, options?: {
495
- signal?: AbortSignal;
496
- }): Promise<RunResultState>;
533
+ getRunResult(runId: string, options?: GetRunResultOptions): Promise<RunResultState>;
497
534
  /** Poll an already-started run (by id) until it reaches a terminal state. */
498
535
  waitForResult(runId: string, options?: WaitForResultOptions): Promise<RunResults>;
499
536
  /**
@@ -564,8 +601,8 @@ export declare class PipelexApiClient implements MTHDSProtocol<DictPipeOutput> {
564
601
  * This is the LOCAL expansion utility — for callers that want the files in
565
602
  * hand (to edit, to diff, to feed a route with no by-id form, the `/v1/build/*`
566
603
  * family being the last of those). The operations that accept `method_id`
567
- * natively (`execute`/`start`, `validate`/`resolve`/`codegen`, and
568
- * `prepareInputs`, which composes a `validate` of its own) take the id as a
604
+ * natively (`execute`/`start`, `validate`/`resolve`/`codegen`/`pipeIo`, and
605
+ * `prepareInputs`, which composes a `pipeIo` of its own) take the id as a
569
606
  * pass-through instead; nothing in this client expands an id behind your back.
570
607
  *
571
608
  * Requires an API key: the methods catalog is org-scoped to the key's org, so
@@ -729,17 +766,18 @@ export declare class PipelexApiClient implements MTHDSProtocol<DictPipeOutput> {
729
766
  * through unchanged; all failures are raised before any run is created.
730
767
  *
731
768
  * Name the method exactly one of three ways, all server-resolved through the
732
- * one `validate` call this composes:
769
+ * one `pipeIo` call this composes:
733
770
  *
734
771
  * - `files` — the inline MTHDS closure;
735
772
  * - `method_ref` — a published method's address, fetched by the runner;
736
773
  * - `method_id` — a stored method's catalog id, resolved by the platform
737
774
  * (hosted only; requires an API key).
738
775
  *
739
- * The signature itself is the input-form descriptor on the validate report
740
- * (`views: ["input_form", "output_form"]`), which states the kind of every input at every
741
- * depth — so a file position is a fact of the method, never a guess from the
742
- * value's shape. See `docs/input-preparation.md`.
776
+ * The route also selects the pipe — the caller's qualified `pipe_ref`, else the
777
+ * method's own entry pipe — and the signature is the input-form descriptor it
778
+ * answers with, which states the kind of every input at every depth, so a file
779
+ * position is a fact of the method, never a guess from the value's shape. It
780
+ * needs an API serving `POST /v1/pipe-io`. See `docs/input-preparation.md`.
743
781
  */
744
782
  prepareInputs(request: PrepareInputsRequest): Promise<PreparedInputs>;
745
783
  /**
@@ -756,6 +794,10 @@ export declare class PipelexApiClient implements MTHDSProtocol<DictPipeOutput> {
756
794
  * either read `page.items` (accepting the first page) or follow the cursor.
757
795
  * `iterateRuns` does the latter for you.
758
796
  *
797
+ * Each item is a `RunHistoryItem` — the id, status, timestamps, pipe and,
798
+ * for a failed run, its error report. The run's organization, creator,
799
+ * method and workflow id are not on the list; `getRunDetail` returns them.
800
+ *
759
801
  * `createdFrom` / `createdTo` are applied server-side as index key
760
802
  * conditions, so a bounded page genuinely reads less. They are INSTANTS,
761
803
  * not days — see `ListRunsQuery`.
@@ -773,7 +815,7 @@ export declare class PipelexApiClient implements MTHDSProtocol<DictPipeOutput> {
773
815
  * **Prefer `listRuns`** for anything user-facing: this is O(history) by
774
816
  * construction and makes as many round trips as the data demands.
775
817
  *
776
- * An iterator rather than a `listAllRuns(): Promise<PipelineRun[]>`, and that
818
+ * An iterator rather than a `listAllRuns(): Promise<RunHistoryItem[]>`, and that
777
819
  * is not stylistic. An all-at-once helper needs a page cap so a misbehaving
778
820
  * server cannot spin it forever — and a cap means it returns a TRUNCATED list
779
821
  * with no error and no flag, a method with 6,000 runs quietly yielding 5,000.
@@ -783,7 +825,7 @@ export declare class PipelexApiClient implements MTHDSProtocol<DictPipeOutput> {
783
825
  * when to stop, and only one page is ever in memory. If you truly want an
784
826
  * array, `Array.fromAsync` makes that your explicit choice.
785
827
  */
786
- iterateRuns(methodId: string, query?: Omit<ListRunsQuery, "cursor">): AsyncGenerator<PipelineRun, void, undefined>;
828
+ iterateRuns(methodId: string, query?: Omit<ListRunsQuery, "cursor">): AsyncGenerator<RunHistoryItem, void, undefined>;
787
829
  /**
788
830
  * The whole record for one run — `GET /v1/runs/{id}`.
789
831
  *
package/dist/client.js CHANGED
@@ -2,7 +2,7 @@
2
2
  // source combinations are legal is an invariant of `RunRequest` itself, so this
3
3
  // client and the MTHDS runners cannot disagree about what they reject.
4
4
  import { assertExclusiveRunSources, hasBundlePayload, parseMethodFiles, serializeMethodFiles, } from "mthds/protocol";
5
- import { assertWaitOptions, pollUntilResult, } from "./runs.js";
5
+ import { assertArtifactSelection, assertWaitOptions, pollUntilResult, selectionIncludesMainStuff, } from "./runs.js";
6
6
  import { ApiResponseError, ApiUnreachableError, EmptyMethodSourceError, MissingMainStuffError, PipelineExecuteTimeoutError, PipelineRequestError, RunLifecycleUnavailableError, RunStillRunningError, } from "./errors.js";
7
7
  import { methodSourceToContents } from "./method-source.js";
8
8
  import { buildUserAgent } from "./user-agent.js";
@@ -558,7 +558,7 @@ export class PipelexApiClient {
558
558
  // published package's documented fallback against a runner. The crate
559
559
  // routes (`resolve`/`codegen`) shared this gap and are now exposed everywhere;
560
560
  // these two were not included, a known non-critical item on the platform's list.
561
- // Tracked in `wip/hosted-exposure-crate-and-tools-routes.md`.
561
+ // Tracked in L-260929-b58f26.
562
562
  /**
563
563
  * Lint one `.mthds` file against the embedded MTHDS schema — `POST /v1/lint`.
564
564
  *
@@ -601,13 +601,13 @@ export class PipelexApiClient {
601
601
  }
602
602
  /**
603
603
  * POST one of the Pipelex-API extension routes — the tools (`lint`, `format`), the
604
- * crate routes (`resolve`, `codegen`), and the build projections (`build/*`). Their
604
+ * crate routes (`resolve`, `codegen`, `pipe-io`), and the build projections (`build/*`). Their
605
605
  * non-2xx bodies are RFC 7807 problems, mapped to the typed `ApiResponseError` like
606
606
  * the product routes.
607
607
  *
608
608
  * The mapping is what makes their no-verdict arms usable: a crate-family route
609
609
  * answers `422` for a request it cannot act on (an unresolvable pipe selector on the
610
- * build routes; an unknown `kind`/`target`, or a `pipe_ref` on the concept-set-wide
610
+ * build routes and `pipe-io`; an unknown `kind`/`target`, or a `pipe_ref` on the concept-set-wide
611
611
  * `types` kind, on `codegen`) and `501` for the reserved registry-form `method_ref`
612
612
  * (the address form is resolved server-side as of pipelex-api 0.21.0). A caller
613
613
  * branches on `ApiResponseError.status`, never on a message.
@@ -670,7 +670,7 @@ export class PipelexApiClient {
670
670
  }
671
671
  return JSON.parse(res.body);
672
672
  }
673
- // ── Crate extensions (Pipelex API — `/v1/resolve`, `/v1/codegen`) ─────
673
+ // ── Crate extensions (Pipelex API — `/v1/resolve`, `/v1/codegen`, `/v1/pipe-io`) ──
674
674
  //
675
675
  // Served by any `pipelex-api` runner AND on every hosted origin. On the hosted
676
676
  // plane a route is reachable only when the gateway's API-key allowlist and the
@@ -682,11 +682,16 @@ export class PipelexApiClient {
682
682
  // Measured 2026-08-23 with a real key: api.pipelex.com (pipelex-hosted@0.10.1)
683
683
  // serves both, verdict discipline intact (200 `is_valid:false`, 501, 422);
684
684
  // api-dev.pipelex.com has since 2026-08-13. `lint`/`format` are the two still
685
- // unexposed — see their section above for why that blocks nothing.
685
+ // unexposed — see their section above for why that blocks nothing. `pipe-io` is
686
+ // newer: a runner serves it from `pipelex-api` v0.33.0, and types its selection
687
+ // refusals `EntryPipeNotFoundError` / `EntryPipeAmbiguousError` from v0.33.1
688
+ // (v0.33.0 typed them `ValidationError`), and a hosted origin
689
+ // serves it once the platform's proxy and the gateway list it (see
690
+ // `docs/crate-routes.md`).
686
691
  //
687
- // Both are STATIC routes (no dry-run sweep), so like every static sibling they take
688
- // no `timeoutMs`/`signal` — see the policy note on `requestExtension` before adding
689
- // one here.
692
+ // All three are STATIC routes (no dry-run sweep), so like every static sibling they
693
+ // take no `timeoutMs`/`signal` — see the policy note on `requestExtension` before
694
+ // adding one here.
690
695
  /**
691
696
  * Resolve a closure into its normalized library crate — `POST /v1/resolve`.
692
697
  *
@@ -735,6 +740,41 @@ export class PipelexApiClient {
735
740
  timeoutMs: crateRequestTimeoutMs(request),
736
741
  });
737
742
  }
743
+ /**
744
+ * Read a method's three I/O artifacts — `POST /v1/pipe-io`.
745
+ *
746
+ * Resolves the closure exactly like {@link resolve}, selects a pipe, and returns its
747
+ * pipe I/O contracts, input form and output form — the MTHDS standard's artifacts,
748
+ * typed from `mthds/protocol` — beside the resolved `pipe_ref`, the method's own
749
+ * `default_pipe_ref`, and the runnability facts (`pending_signatures`, `is_runnable`).
750
+ * It runs NO dry-run sweep, so it costs one load and one derivation where `validate`
751
+ * dry-runs every pipe; a caller that shows a method, prepares its inputs or generates
752
+ * types for it reads this, and one that needs the dry-run verdict stays on `validate`.
753
+ *
754
+ * Selection: the request's qualified `pipe_ref`, else a fetched package's manifest
755
+ * `main_pipe`, else the closure's single `main_pipe` declaration. `all_pipes: true`
756
+ * describes every pipe instead, and never refuses for want of an entry pipe.
757
+ * `include_files: true` echoes the resolved closure's `.mthds` files as `files`.
758
+ *
759
+ * Same 200-verdict discipline and same three-form closure selector as {@link resolve}
760
+ * (the request is posted verbatim, and the selector XOR is the server's to enforce).
761
+ * Only a no-verdict condition throws `ApiResponseError`: a malformed selector and an
762
+ * over-limit file are `ValidationError` `422`s; a selection the route refuses is a
763
+ * `422` whose `errorType` is `EntryPipeNotFoundError` (an unknown `pipe_ref`, no entry
764
+ * pipe) or `EntryPipeAmbiguousError` (an ambiguous code, several entry pipes), the
765
+ * candidates in its `serverMessage`; a registry-form `method_ref` is a `501`; a pipe
766
+ * whose artifacts cannot be derived is a `500`.
767
+ *
768
+ * A `method_ref` gets the fetch-sized budget, as on the other crate routes. On the
769
+ * hosted API the gateway caps a request at about 30 seconds whatever the client
770
+ * allows, so a cold `method_ref` clone can answer a `502` that a retry clears once the
771
+ * runner has cached the clone.
772
+ */
773
+ async pipeIo(request) {
774
+ return this.requestExtension("pipe-io", request, {
775
+ timeoutMs: crateRequestTimeoutMs(request),
776
+ });
777
+ }
738
778
  // ── Build extensions (Pipelex API layer 2 — `/v1/build/*`) ────────
739
779
  /**
740
780
  * Project a pipe's declared inputs as a fill-in template — `POST /v1/build/inputs`.
@@ -752,14 +792,14 @@ export class PipelexApiClient {
752
792
  * model {@link BuildInputsRequest}; the address form is server-resolved, the
753
793
  * registry form `501`s) — exactly one of the two, like `buildOutput` /
754
794
  * `buildRunner`. There is NO by-id form: the build routes take no `method_id`
755
- * (the hosted tooling selector covers `validate`/`resolve`/`codegen` only), so a
795
+ * (the hosted tooling selector covers `validate`/`resolve`/`codegen`/`pipe-io` only), so a
756
796
  * stored method is expanded first — `buildInputs({ files: await
757
797
  * client.getMethodClosure(methodId) })`. That expansion stays the answer here
758
798
  * because a `buildInputs` caller wants this route's template; it is not what
759
799
  * `prepareInputs` does any more.
760
800
  *
761
801
  * Nothing inside this SDK calls this route: `prepareInputs` reads its signature
762
- * from the input-form descriptor on the validate report. It survives for the
802
+ * from the input-form descriptor `pipeIo` returns. It survives for the
763
803
  * consumers that still render a template over HTTP, and is retired with the rest
764
804
  * of `/v1/build/*` once they project it client-side.
765
805
  */
@@ -853,11 +893,25 @@ export class PipelexApiClient {
853
893
  * as `error`
854
894
  * - HTTP 503 → `running` (Temporal degraded — retry, never fail a poller)
855
895
  *
896
+ * `options.artifacts` narrows the read to the named artifacts, sent as one
897
+ * comma-separated `?artifacts=` parameter: only those are read, and an
898
+ * unselected artifact is absent from the result (`undefined`) while a
899
+ * selected one the run never wrote is `null`. Omitted, every artifact is
900
+ * read. An empty selection or an unknown name throws a `RangeError` before
901
+ * any request. `MissingMainStuffError` is thrown only for a read that asked
902
+ * for `main_stuff` — no selection, or one naming it.
903
+ *
856
904
  * Throws `RunLifecycleUnavailableError` when the lifecycle routes are absent
857
905
  * (a bare runner).
858
906
  */
859
907
  async getRunResult(runId, options = {}) {
860
- const endpoint = `${RUNS}/${encodeURIComponent(runId)}/results`;
908
+ assertArtifactSelection(options.artifacts);
909
+ const base = `${RUNS}/${encodeURIComponent(runId)}/results`;
910
+ // Deduplicated, in the caller's order; the platform reads `a,b` as the set {a, b}. The names
911
+ // are the validated vocabulary above, so they need no escaping and the comma stays literal.
912
+ const endpoint = options.artifacts === undefined
913
+ ? base
914
+ : `${base}?artifacts=${[...new Set(options.artifacts)].join(",")}`;
861
915
  const url = this.url(endpoint);
862
916
  const res = await this.requestRaw("GET", url, {
863
917
  timeoutMs: POLL_REQUEST_TIMEOUT_MS,
@@ -878,7 +932,7 @@ export class PipelexApiClient {
878
932
  this.throwApiResponseError("GET", endpoint, res);
879
933
  }
880
934
  const result = JSON.parse(res.body);
881
- if (result.main_stuff == null) {
935
+ if (selectionIncludesMainStuff(options.artifacts) && result.main_stuff == null) {
882
936
  throw new MissingMainStuffError(`Completed run '${runId}' returned no main stuff — a completed run always delivers a main stuff.`, runId);
883
937
  }
884
938
  return { state: "completed", pipeline_run_id: runId, result };
@@ -1052,8 +1106,8 @@ export class PipelexApiClient {
1052
1106
  * This is the LOCAL expansion utility — for callers that want the files in
1053
1107
  * hand (to edit, to diff, to feed a route with no by-id form, the `/v1/build/*`
1054
1108
  * family being the last of those). The operations that accept `method_id`
1055
- * natively (`execute`/`start`, `validate`/`resolve`/`codegen`, and
1056
- * `prepareInputs`, which composes a `validate` of its own) take the id as a
1109
+ * natively (`execute`/`start`, `validate`/`resolve`/`codegen`/`pipeIo`, and
1110
+ * `prepareInputs`, which composes a `pipeIo` of its own) take the id as a
1057
1111
  * pass-through instead; nothing in this client expands an id behind your back.
1058
1112
  *
1059
1113
  * Requires an API key: the methods catalog is org-scoped to the key's org, so
@@ -1258,17 +1312,18 @@ export class PipelexApiClient {
1258
1312
  * through unchanged; all failures are raised before any run is created.
1259
1313
  *
1260
1314
  * Name the method exactly one of three ways, all server-resolved through the
1261
- * one `validate` call this composes:
1315
+ * one `pipeIo` call this composes:
1262
1316
  *
1263
1317
  * - `files` — the inline MTHDS closure;
1264
1318
  * - `method_ref` — a published method's address, fetched by the runner;
1265
1319
  * - `method_id` — a stored method's catalog id, resolved by the platform
1266
1320
  * (hosted only; requires an API key).
1267
1321
  *
1268
- * The signature itself is the input-form descriptor on the validate report
1269
- * (`views: ["input_form", "output_form"]`), which states the kind of every input at every
1270
- * depth — so a file position is a fact of the method, never a guess from the
1271
- * value's shape. See `docs/input-preparation.md`.
1322
+ * The route also selects the pipe — the caller's qualified `pipe_ref`, else the
1323
+ * method's own entry pipe — and the signature is the input-form descriptor it
1324
+ * answers with, which states the kind of every input at every depth, so a file
1325
+ * position is a fact of the method, never a guess from the value's shape. It
1326
+ * needs an API serving `POST /v1/pipe-io`. See `docs/input-preparation.md`.
1272
1327
  */
1273
1328
  async prepareInputs(request) {
1274
1329
  return prepareInputsImpl(this, request);
@@ -1287,6 +1342,10 @@ export class PipelexApiClient {
1287
1342
  * either read `page.items` (accepting the first page) or follow the cursor.
1288
1343
  * `iterateRuns` does the latter for you.
1289
1344
  *
1345
+ * Each item is a `RunHistoryItem` — the id, status, timestamps, pipe and,
1346
+ * for a failed run, its error report. The run's organization, creator,
1347
+ * method and workflow id are not on the list; `getRunDetail` returns them.
1348
+ *
1290
1349
  * `createdFrom` / `createdTo` are applied server-side as index key
1291
1350
  * conditions, so a bounded page genuinely reads less. They are INSTANTS,
1292
1351
  * not days — see `ListRunsQuery`.
@@ -1321,7 +1380,7 @@ export class PipelexApiClient {
1321
1380
  * **Prefer `listRuns`** for anything user-facing: this is O(history) by
1322
1381
  * construction and makes as many round trips as the data demands.
1323
1382
  *
1324
- * An iterator rather than a `listAllRuns(): Promise<PipelineRun[]>`, and that
1383
+ * An iterator rather than a `listAllRuns(): Promise<RunHistoryItem[]>`, and that
1325
1384
  * is not stylistic. An all-at-once helper needs a page cap so a misbehaving
1326
1385
  * server cannot spin it forever — and a cap means it returns a TRUNCATED list
1327
1386
  * with no error and no flag, a method with 6,000 runs quietly yielding 5,000.