@requence/task 0.8.2-edge.1149 → 0.8.2-edge.1154

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 (26) hide show
  1. package/build/index.js +26 -4
  2. package/build/index.js.map +3 -3
  3. package/build/types/helpers/src/index.d.ts +1 -0
  4. package/build/types/helpers/src/index.d.ts.map +1 -1
  5. package/build/types/helpers/src/protocol/NodeTree.d.ts +21 -0
  6. package/build/types/helpers/src/protocol/NodeTree.d.ts.map +1 -1
  7. package/build/types/helpers/src/protocol/clientProperties.d.ts +50 -0
  8. package/build/types/helpers/src/protocol/clientProperties.d.ts.map +1 -1
  9. package/build/types/helpers/src/protocol/command.d.ts +799 -0
  10. package/build/types/helpers/src/protocol/command.d.ts.map +1 -1
  11. package/build/types/helpers/src/protocol/index.d.ts +1 -0
  12. package/build/types/helpers/src/protocol/index.d.ts.map +1 -1
  13. package/build/types/helpers/src/protocol/nodeType.d.ts +14 -0
  14. package/build/types/helpers/src/protocol/nodeType.d.ts.map +1 -1
  15. package/build/types/helpers/src/protocol/sliceTreeList.d.ts +81 -0
  16. package/build/types/helpers/src/protocol/sliceTreeList.d.ts.map +1 -0
  17. package/build/types/helpers/src/protocol/templateNodeTypes.d.ts.map +1 -1
  18. package/build/types/helpers/src/protocol/treeNodes.d.ts +629 -4
  19. package/build/types/helpers/src/protocol/treeNodes.d.ts.map +1 -1
  20. package/build/types/helpers/src/protocol/update.d.ts +14 -0
  21. package/build/types/helpers/src/protocol/update.d.ts.map +1 -1
  22. package/build/types/helpers/src/utils/amqpPublishRetry.d.ts +113 -18
  23. package/build/types/helpers/src/utils/amqpPublishRetry.d.ts.map +1 -1
  24. package/build/types/helpers/src/utils/sliceClock.d.ts +61 -0
  25. package/build/types/helpers/src/utils/sliceClock.d.ts.map +1 -0
  26. package/package.json +1 -1
package/build/index.js CHANGED
@@ -675,6 +675,25 @@ function jsonByteLength(value) {
675
675
  const json = JSON.stringify(value);
676
676
  return json === undefined ? 0 : Buffer.byteLength(json);
677
677
  }
678
+
679
+ class UnserializableValue extends Error {
680
+ }
681
+ function toOffloadJson(value) {
682
+ try {
683
+ return JSON.stringify(value, function(key, encoded) {
684
+ const raw = this[key];
685
+ if (ArrayBuffer.isView(raw) || raw instanceof ArrayBuffer) {
686
+ throw new UnserializableValue;
687
+ }
688
+ return encoded;
689
+ });
690
+ } catch (error) {
691
+ if (error instanceof UnserializableValue) {
692
+ return;
693
+ }
694
+ throw error;
695
+ }
696
+ }
678
697
  function createMessageHandler() {
679
698
  return {
680
699
  async wrapOutbound(body, ctx) {
@@ -692,7 +711,7 @@ function createMessageHandler() {
692
711
  return body;
693
712
  }
694
713
  if (!isRecord(body)) {
695
- const json = JSON.stringify(body);
714
+ const json = toOffloadJson(body);
696
715
  if (json === undefined) {
697
716
  return body;
698
717
  }
@@ -700,15 +719,18 @@ function createMessageHandler() {
700
719
  }
701
720
  const entries = Object.entries(body).map(([key, value]) => ({
702
721
  key,
703
- valueJson: JSON.stringify(value),
722
+ valueJson: toOffloadJson(value),
704
723
  size: measure(value)
705
724
  })).sort((a, b) => b.size - a.size);
706
725
  const wrapped = { ...body };
707
726
  let total = measure(body);
708
727
  for (const entry of entries) {
709
- if (total <= maxBytes || entry.valueJson === undefined || entry.size <= 256) {
728
+ if (total <= maxBytes || entry.size <= 256) {
710
729
  break;
711
730
  }
731
+ if (entry.valueJson === undefined) {
732
+ continue;
733
+ }
712
734
  const ref = await offload(ctx, uploadUrl, entry.valueJson);
713
735
  wrapped[entry.key] = ref;
714
736
  total += measure(ref) - entry.size;
@@ -1690,5 +1712,5 @@ export {
1690
1712
  RequenceFile
1691
1713
  };
1692
1714
 
1693
- //# debugId=F96A579BA4EB8E1D64756E2164756E21
1715
+ //# debugId=5F76DAE69347258864756E2164756E21
1694
1716
  //# sourceMappingURL=index.js.map
@@ -16,7 +16,7 @@
16
16
  "import type { FileObject } from '@requence/helpers'\nimport { isFileObject, toFileObject } from '@requence/helpers'\nimport type { TransformContext, ValueHandler } from '@requence/transformer'\n\nimport type { FileEgressContext } from './context.ts'\nimport { assertOk } from './transport.ts'\nimport { RequenceFile } from '../RequenceFile.ts'\n\nasync function upload(\n ctx: TransformContext,\n uploadUrl: string,\n body: BodyInit | null,\n contentType?: string | null,\n maxFileSize?: number,\n): Promise<FileObject> {\n const uploadResponse = await ctx.fetch(uploadUrl, {\n method: 'POST',\n signal: ctx.signal,\n headers: {\n ...(contentType ? { 'Content-Type': contentType } : {}),\n // Per-task cap transmitted via task options; the files service\n // enforces it (absent ⇒ its hardcoded fallback cap).\n ...(maxFileSize !== undefined\n ? { 'file-size': String(maxFileSize) }\n : {}),\n },\n body,\n })\n\n await assertOk(uploadResponse, uploadUrl, 'upload')\n\n const data = await uploadResponse.json()\n // Explicit field checks rather than `isFileObject`: the FileObject schema\n // requires a positive size, but a legitimate 0-byte file is valid here.\n if (\n !data ||\n typeof data !== 'object' ||\n typeof (data as { url?: unknown }).url !== 'string' ||\n !(data as { url: string }).url ||\n typeof (data as { mime?: unknown }).mime !== 'string' ||\n typeof (data as { size?: unknown }).size !== 'number'\n ) {\n throw new Error(`malformed upload response (${uploadUrl})`)\n }\n\n return toFileObject(data as { size: number; mime: string; url: string })\n}\n\n/**\n * Value handler owning `RequenceFile` — and, through it, raw `Blob`s (a Blob\n * adapts through RequenceFile; no separate Blob branch exists anywhere else).\n *\n * Egress uploads the bytes via the injected transport and returns the\n * `FileObject` reference (idempotent for an already-remote file). Ingress\n * reconstructs the lazy remote instance.\n */\nexport function createRequenceFileHandler(): ValueHandler<\n RequenceFile | Blob,\n FileObject | null,\n FileEgressContext\n> {\n return {\n tag: 'RequenceFile',\n\n canHandle: (value) => RequenceFile.canHandle(value),\n\n async serialize(value, ctx) {\n // Idempotent: an already-remote file keeps its existing reference.\n if (value instanceof RequenceFile && value.fileObject) {\n return value.fileObject\n }\n\n if (!ctx.uploadUrl) {\n ctx.onOffloadSkip?.()\n return null\n }\n\n try {\n if (value instanceof RequenceFile) {\n return await upload(\n ctx,\n ctx.uploadUrl,\n await value.blob(),\n value.mimeType,\n ctx.maxFileSize,\n )\n }\n return await upload(\n ctx,\n ctx.uploadUrl,\n value,\n value.type,\n ctx.maxFileSize,\n )\n } catch (error) {\n if (!(error instanceof Error)) {\n throw error\n }\n // Fail-hard by default: only swallow (to null) when a caller opts in\n // with `onOffloadFail`. Otherwise propagate so the node/task fails loudly.\n if (ctx.onOffloadFail) {\n ctx.onOffloadFail(error)\n return null\n }\n throw error\n }\n },\n\n isReference: (value): value is FileObject => isFileObject(value),\n\n deserialize(ref, ctx) {\n return RequenceFile.fromFileObject(ref as FileObject, ctx.signal)\n },\n }\n}\n",
17
17
  "import { AsyncLocalStorage } from 'node:async_hooks'\n\n/**\n * Ambient collection scope for background stream-body uploads.\n *\n * A `RequenceStream` serializes in two beats: the reference (`StreamObject`) is\n * known right after registration, but the body keeps uploading in the\n * background — that is what lets a consumer join the stream *while* the\n * producer is still pushing. The caller, however, must not treat the transform\n * as durably complete (ack the task, mark it done) until every background body\n * upload has settled.\n *\n * `withRequenceStreams` is that collection point: the stream handler registers\n * its background upload into the ambient store, and the caller receives a\n * single `done` promise to feed its completion gate.\n */\nconst pendingUploads = new AsyncLocalStorage<Array<Promise<void>>>()\n\n/**\n * Run `fn` (typically a `transformOutbound` call) collecting every background\n * stream-body upload started within it. Returns the function's result together\n * with a `done` promise that resolves when all collected uploads settle and\n * rejects on the first failure. `value` is available immediately — publish it\n * while the bodies still stream; await `done` before acking.\n */\nexport async function withRequenceStreams<T>(\n fn: () => Promise<T> | T,\n): Promise<{ value: T; done: Promise<void> }> {\n const uploads: Array<Promise<void>> = []\n const value = await pendingUploads.run(uploads, fn)\n return { value, done: Promise.all(uploads).then(() => undefined) }\n}\n\n/**\n * Hand a background upload to the ambient scope. Returns false when no scope\n * is active — the caller (the stream handler) must then await the work inline:\n * still correct, just not live. Never fire-and-forget.\n *\n * @internal\n */\nexport function registerPendingUpload(work: Promise<void>): boolean {\n const store = pendingUploads.getStore()\n if (!store) {\n return false\n }\n store.push(work)\n return true\n}\n",
18
18
  "import type { StreamObject } from '@requence/helpers'\nimport { isStreamObject, toStreamObject } from '@requence/helpers'\nimport type { TransformContext, ValueHandler } from '@requence/transformer'\n\nimport type { StreamEgressContext } from './context.ts'\nimport { assertOk } from './transport.ts'\nimport { RequenceStream } from '../RequenceStream.ts'\nimport { registerPendingUpload } from '../withRequenceStreams.ts'\n\nasync function registerAndUpload(\n ctx: TransformContext,\n streamUrl: string,\n stream: ReadableStream,\n contentType?: string | null,\n maxFileSize?: number,\n): Promise<{ ref: StreamObject; bodyUpload?: Promise<void> }> {\n const [testStream, dataStream] = stream.tee()\n\n // Read the first chunk before firing the body upload: nodejs closes an empty\n // duplex `half` body before the fetch executes, so we must know whether any\n // data exists. `dataStream` keeps the buffered chunk (tee), so no bytes are\n // lost. (Obsolete once we move to bun.)\n const reader = testStream.getReader()\n const { done: isEmpty } = await reader.read()\n reader.cancel()\n\n const streamResponse = await ctx.fetch(streamUrl, {\n method: 'POST',\n signal: ctx.signal,\n headers: {\n ...(contentType ? { 'Content-Type': contentType } : {}),\n // Per-task cap transmitted via task options; the files service stores\n // it with the stream and enforces it during the body upload (absent ⇒\n // its hardcoded fallback cap).\n ...(maxFileSize !== undefined\n ? { 'file-size': String(maxFileSize) }\n : {}),\n },\n })\n\n await assertOk(streamResponse, streamUrl, 'stream registration')\n\n const data = await streamResponse.json()\n if (!isStreamObject(toStreamObject(data as { mime: string; url: string }))) {\n throw new Error(`malformed stream registration response (${streamUrl})`)\n }\n\n const { mime, url } = data as { mime: string; url: string }\n\n if (isEmpty) {\n // Legitimate zero-byte stream: POST a static empty body. The duplex\n // \"wait for first byte\" workaround only applies to a streaming body.\n const emptyResponse = await ctx.fetch(url, {\n method: 'POST',\n signal: ctx.signal,\n headers: contentType ? { 'Content-Type': contentType } : {},\n body: new Uint8Array(0),\n })\n await assertOk(emptyResponse, url, 'stream body upload')\n await emptyResponse.body?.cancel()\n return { ref: toStreamObject({ mime, url }) }\n }\n\n // Not awaited here: the body streams in the background so the reference can\n // be published while data still flows. Completion/failure surfaces through\n // the returned promise, collected by `withRequenceStreams`.\n const bodyUpload = (async () => {\n const bodyResponse = await ctx.fetch(url, {\n method: 'POST',\n signal: ctx.signal,\n duplex: 'half', // not typed but needed for nodejs to handle readable streams\n body: dataStream,\n } as RequestInit)\n await assertOk(bodyResponse, url, 'stream body upload')\n await bodyResponse.body?.cancel()\n })()\n\n return { ref: toStreamObject({ mime, url }), bodyUpload }\n}\n\n/**\n * Value handler owning `RequenceStream` — and, through it, raw `Response`s (a\n * Response body adapts through RequenceStream; no separate Response branch\n * exists anywhere else).\n *\n * Egress registers the stream, returns the `StreamObject` reference\n * immediately, and pushes the body in the background (collected by the ambient\n * `withRequenceStreams` scope; without a scope the upload is awaited inline —\n * still correct, just not live). Ingress reconstructs a lazy stream that reads\n * live-or-durable.\n */\nexport function createRequenceStreamHandler(): ValueHandler<\n RequenceStream | Response,\n StreamObject | null,\n StreamEgressContext\n> {\n return {\n tag: 'RequenceStream',\n\n canHandle: (value) => RequenceStream.canHandle(value),\n\n async serialize(value, ctx) {\n // Idempotent: an already-remote stream keeps its existing reference.\n if (value instanceof RequenceStream && value.streamObject) {\n return value.streamObject\n }\n\n if (!ctx.streamUrl) {\n ctx.onOffloadSkip?.()\n return null\n }\n\n const body =\n value instanceof Response\n ? // A body-less Response is a legitimate empty stream.\n (value.body ??\n new ReadableStream({\n start(controller) {\n controller.close()\n },\n }))\n : value.stream()\n const contentType =\n value instanceof Response\n ? value.headers.get('Content-Type')\n : value.mimeType\n\n try {\n const { ref, bodyUpload } = await registerAndUpload(\n ctx,\n ctx.streamUrl,\n body,\n contentType,\n ctx.maxFileSize,\n )\n if (bodyUpload && !registerPendingUpload(bodyUpload)) {\n // No ambient scope collecting background work: await inline. Correct,\n // just not live — never fire-and-forget.\n await bodyUpload\n }\n return ref\n } catch (error) {\n if (!(error instanceof Error)) {\n throw error\n }\n // Fail-hard by default: only swallow (to null) when a caller opts in\n // with `onOffloadFail`. Otherwise propagate so the node/task fails loudly.\n if (ctx.onOffloadFail) {\n ctx.onOffloadFail(error)\n return null\n }\n throw error\n }\n },\n\n isReference: (value): value is StreamObject => isStreamObject(value),\n\n deserialize(ref, ctx) {\n return RequenceStream.fromStreamObject(ref as StreamObject, ctx.signal)\n },\n }\n}\n",
19
- "import { Buffer } from 'node:buffer'\n\nimport type { ClaimCheckObject } from '@requence/helpers'\nimport { isClaimCheckObject, toClaimCheckObject } from '@requence/helpers'\nimport type {\n HandlerBundle,\n MessageHandler,\n TransformContext,\n ValueHandler,\n} from '@requence/transformer'\n\nimport type { ClaimCheckEgressContext } from './context.ts'\nimport { assertOk } from './transport.ts'\n\n/**\n * Oversized-message claim-check — one `withHandler` bundle carrying both\n * contract halves:\n *\n * - **Egress** is the bundle's `messageHandler`: it size-checks the already\n * value-serialized body and offloads oversized top-level values to the\n * files service, preserving a record body's top-level keys (the transformer\n * asserts this). A non-record body is offloaded wholesale.\n * - **Ingress** is the bundle's `valueHandler`: a reference can resurface at\n * any depth of a later message once a forwarding hop merged it into other\n * data — only the value walk finds it there.\n *\n * Offload failure always **throws** — deliberately ignoring the\n * `onOffloadFail` swallow-to-null contract, which means \"null *reference*\n * for one value\": a silently nulled body part would corrupt the message, and\n * an oversized body that cannot be offloaded fails at the broker anyway.\n * Without an `uploadUrl` on the ctx the handler skips (status quo: the broker\n * rejects the message exactly as it does today).\n */\n\n/**\n * Fallback offload threshold in bytes when the ctx carries no\n * `maxPayloadSize` (safe headroom under RabbitMQ's 16 MiB default\n * `max_message_size`). The per-task value is minted by the ui backend and\n * arrives via task options, like the upload URL.\n */\nconst DEFAULT_MAX_PAYLOAD_SIZE = 4 * 1024 * 1024\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value)\n}\n\nasync function offload(\n ctx: TransformContext,\n uploadUrl: string,\n json: string,\n): Promise<ClaimCheckObject> {\n const response = await ctx.fetch(uploadUrl, {\n method: 'POST',\n signal: ctx.signal,\n headers: { 'Content-Type': 'application/json' },\n body: json,\n })\n await assertOk(response, uploadUrl, 'claim-check offload')\n\n const data = (await response.json()) as { url?: unknown; size?: unknown }\n if (\n !data ||\n typeof data !== 'object' ||\n typeof data.url !== 'string' ||\n !data.url ||\n typeof data.size !== 'number'\n ) {\n throw new Error(`malformed claim-check offload response (${uploadUrl})`)\n }\n return toClaimCheckObject({ url: data.url, size: data.size })\n}\n\n/** The historical sizer: correct for any caller still publishing JSON. */\nfunction jsonByteLength(value: unknown) {\n const json = JSON.stringify(value)\n return json === undefined ? 0 : Buffer.byteLength(json)\n}\n\nfunction createMessageHandler(): MessageHandler<ClaimCheckEgressContext> {\n return {\n async wrapOutbound(body, ctx) {\n const maxBytes = ctx.maxPayloadSize ?? DEFAULT_MAX_PAYLOAD_SIZE\n if (maxBytes <= 0 || body === undefined) {\n return body\n }\n\n // Two different questions about the same value, and they no longer have the\n // same answer:\n // - how big will this be ON THE WIRE → `measure`, the publisher's codec;\n // - what bytes do we PUT in the offloaded object → JSON, always.\n // The stored object is an HTTP/S3 payload read back by `JSON.parse` in the\n // ingress half below, so it stays JSON regardless of the wire codec. Only\n // the threshold arithmetic follows the codec.\n const measure = ctx.measure ?? jsonByteLength\n\n if (measure(body) <= maxBytes) {\n return body\n }\n const { uploadUrl } = ctx\n if (!uploadUrl) {\n ctx.onOffloadSkip?.()\n return body\n }\n\n if (!isRecord(body)) {\n const json = JSON.stringify(body)\n if (json === undefined) {\n return body\n }\n return offload(ctx, uploadUrl, json)\n }\n\n // Record body: offload oversized top-level values largest-first until\n // the body fits, keys preserved. If every value is offloaded and the\n // body still exceeds the threshold there is nothing more a\n // key-preserving wrap can do — return it and let the broker decide.\n const entries = Object.entries(body)\n .map(([key, value]) => ({\n key,\n valueJson: JSON.stringify(value),\n size: measure(value),\n }))\n .sort((a, b) => b.size - a.size)\n\n const wrapped: Record<string, unknown> = { ...body }\n let total = measure(body)\n for (const entry of entries) {\n // A reference is ~100–150 bytes; offloading a value that small can\n // only grow the body. Entries are sorted largest-first, so stop.\n if (\n total <= maxBytes ||\n entry.valueJson === undefined ||\n entry.size <= 256\n ) {\n break\n }\n const ref = await offload(ctx, uploadUrl, entry.valueJson)\n wrapped[entry.key] = ref\n total += measure(ref) - entry.size\n }\n return wrapped\n },\n }\n}\n\n/**\n * Ingress half: fetch the offloaded value back and hand it to the walk. The\n * result is re-walked to a fixpoint, so references nested *inside* the\n * offloaded value (files, streams, callbacks) rehydrate as usual.\n * Reconstruction needs only `ctx.fetch`, so transport-less consumers (task\n * watchers, ui) can always unwrap.\n */\nfunction createValueHandler(): ValueHandler<unknown, ClaimCheckObject> {\n return {\n tag: 'ClaimCheck',\n\n canHandle: () => false, // egress happens at message level, never per value\n\n serialize() {\n throw new Error(\n 'ClaimCheck egress is the bundled MessageHandler (wrapOutbound); it never reaches the value walk',\n )\n },\n\n isReference: (value): value is ClaimCheckObject =>\n isClaimCheckObject(value),\n\n async deserialize(ref, ctx) {\n const response = await ctx.fetch(ref.url, { signal: ctx.signal })\n await assertOk(response, ref.url, 'claim-check fetch')\n const text = await response.text()\n try {\n return JSON.parse(text)\n } catch {\n throw new Error(`malformed claim-check payload (${ref.url})`)\n }\n },\n }\n}\n\n/** The claim-check as one composable bundle: message-wrap egress + value-walk ingress. */\nexport function createClaimCheckHandler(): HandlerBundle<\n object,\n object,\n ClaimCheckEgressContext\n> & {\n valueHandler: ValueHandler<unknown, ClaimCheckObject>\n messageHandler: MessageHandler<ClaimCheckEgressContext>\n} {\n return {\n valueHandler: createValueHandler(),\n messageHandler: createMessageHandler(),\n }\n}\n",
19
+ "import { Buffer } from 'node:buffer'\n\nimport type { ClaimCheckObject } from '@requence/helpers'\nimport { isClaimCheckObject, toClaimCheckObject } from '@requence/helpers'\nimport type {\n HandlerBundle,\n MessageHandler,\n TransformContext,\n ValueHandler,\n} from '@requence/transformer'\n\nimport type { ClaimCheckEgressContext } from './context.ts'\nimport { assertOk } from './transport.ts'\n\n/**\n * Oversized-message claim-check — one `withHandler` bundle carrying both\n * contract halves:\n *\n * - **Egress** is the bundle's `messageHandler`: it size-checks the already\n * value-serialized body and offloads oversized top-level values to the\n * files service, preserving a record body's top-level keys (the transformer\n * asserts this). A non-record body is offloaded wholesale.\n * - **Ingress** is the bundle's `valueHandler`: a reference can resurface at\n * any depth of a later message once a forwarding hop merged it into other\n * data — only the value walk finds it there.\n *\n * Offload failure always **throws** — deliberately ignoring the\n * `onOffloadFail` swallow-to-null contract, which means \"null *reference*\n * for one value\": a silently nulled body part would corrupt the message, and\n * an oversized body that cannot be offloaded fails at the broker anyway.\n * Without an `uploadUrl` on the ctx the handler skips (status quo: the broker\n * rejects the message exactly as it does today).\n */\n\n/**\n * Fallback offload threshold in bytes when the ctx carries no\n * `maxPayloadSize` (safe headroom under RabbitMQ's 16 MiB default\n * `max_message_size`). The per-task value is minted by the ui backend and\n * arrives via task options, like the upload URL.\n */\nconst DEFAULT_MAX_PAYLOAD_SIZE = 4 * 1024 * 1024\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value)\n}\n\nasync function offload(\n ctx: TransformContext,\n uploadUrl: string,\n json: string,\n): Promise<ClaimCheckObject> {\n const response = await ctx.fetch(uploadUrl, {\n method: 'POST',\n signal: ctx.signal,\n headers: { 'Content-Type': 'application/json' },\n body: json,\n })\n await assertOk(response, uploadUrl, 'claim-check offload')\n\n const data = (await response.json()) as { url?: unknown; size?: unknown }\n if (\n !data ||\n typeof data !== 'object' ||\n typeof data.url !== 'string' ||\n !data.url ||\n typeof data.size !== 'number'\n ) {\n throw new Error(`malformed claim-check offload response (${uploadUrl})`)\n }\n return toClaimCheckObject({ url: data.url, size: data.size })\n}\n\n/** The historical sizer: correct for any caller still publishing JSON. */\nfunction jsonByteLength(value: unknown) {\n const json = JSON.stringify(value)\n return json === undefined ? 0 : Buffer.byteLength(json)\n}\n\n/** Thrown by the replacer below, caught by its own `toOffloadJson`, never escapes. */\nclass UnserializableValue extends Error {}\n\n/**\n * The bytes PUT in an offloaded object — always JSON, whatever the wire codec,\n * because the ingress half reads them back with `JSON.parse`. `undefined` means\n * JSON cannot carry this value, so it must not be offloaded at all.\n *\n * The msgpack wire made that case reachable: it carries a `Uint8Array` as\n * msgpack `bin`, and the value walk does not claim binary (`RequenceFile`\n * handles only `RequenceFile | Blob`). `JSON.stringify` does not refuse it\n * either — it renders a `Uint8Array` as `{\"0\":1,…}` and a `Buffer` as\n * `{\"type\":\"Buffer\",\"data\":[…]}`. Offloading either is silent corruption (the\n * consumer gets a plain object where bytes were) on top of a ~4x size increase,\n * so binary is rejected at any depth instead. The Python handler gets this for\n * free — `json.dumps` refuses `bytes`.\n *\n * The replacer reads `this[key]` rather than its own second argument because\n * `toJSON` runs BEFORE the replacer: a `Buffer` has already become that plain\n * object by the time the replacer is called. At the root, the holder is\n * `{ '': value }` and the key is `''`, so one expression covers both.\n */\nfunction toOffloadJson(value: unknown) {\n try {\n return JSON.stringify(\n value,\n function (this: Record<string, unknown>, key: string, encoded: unknown) {\n const raw = this[key]\n if (ArrayBuffer.isView(raw) || raw instanceof ArrayBuffer) {\n throw new UnserializableValue()\n }\n return encoded\n },\n )\n } catch (error) {\n if (error instanceof UnserializableValue) {\n return undefined\n }\n throw error\n }\n}\n\nfunction createMessageHandler(): MessageHandler<ClaimCheckEgressContext> {\n return {\n async wrapOutbound(body, ctx) {\n const maxBytes = ctx.maxPayloadSize ?? DEFAULT_MAX_PAYLOAD_SIZE\n if (maxBytes <= 0 || body === undefined) {\n return body\n }\n\n // Two different questions about the same value, and they no longer have the\n // same answer:\n // - how big will this be ON THE WIRE → `measure`, the publisher's codec;\n // - what bytes do we PUT in the offloaded object → JSON, always.\n // The stored object is an HTTP/S3 payload read back by `JSON.parse` in the\n // ingress half below, so it stays JSON regardless of the wire codec. Only\n // the threshold arithmetic follows the codec.\n const measure = ctx.measure ?? jsonByteLength\n\n if (measure(body) <= maxBytes) {\n return body\n }\n const { uploadUrl } = ctx\n if (!uploadUrl) {\n ctx.onOffloadSkip?.()\n return body\n }\n\n if (!isRecord(body)) {\n const json = toOffloadJson(body)\n if (json === undefined) {\n return body\n }\n return offload(ctx, uploadUrl, json)\n }\n\n // Record body: offload oversized top-level values largest-first until\n // the body fits, keys preserved. If every value is offloaded and the\n // body still exceeds the threshold there is nothing more a\n // key-preserving wrap can do — return it and let the broker decide.\n const entries = Object.entries(body)\n .map(([key, value]) => ({\n key,\n valueJson: toOffloadJson(value),\n size: measure(value),\n }))\n .sort((a, b) => b.size - a.size)\n\n const wrapped: Record<string, unknown> = { ...body }\n let total = measure(body)\n for (const entry of entries) {\n // A reference is ~100–150 bytes; offloading a value that small can\n // only grow the body. Entries are sorted largest-first, so stop.\n if (total <= maxBytes || entry.size <= 256) {\n break\n }\n if (entry.valueJson === undefined) {\n // A value JSON cannot carry cannot be offloaded (see `toOffloadJson`).\n // SKIP it rather than stop: entries are largest-first, so stopping here\n // would strand every smaller value that CAN be offloaded — and the whole\n // oversized body would reach the broker.\n continue\n }\n const ref = await offload(ctx, uploadUrl, entry.valueJson)\n wrapped[entry.key] = ref\n total += measure(ref) - entry.size\n }\n return wrapped\n },\n }\n}\n\n/**\n * Ingress half: fetch the offloaded value back and hand it to the walk. The\n * result is re-walked to a fixpoint, so references nested *inside* the\n * offloaded value (files, streams, callbacks) rehydrate as usual.\n * Reconstruction needs only `ctx.fetch`, so transport-less consumers (task\n * watchers, ui) can always unwrap.\n */\nfunction createValueHandler(): ValueHandler<unknown, ClaimCheckObject> {\n return {\n tag: 'ClaimCheck',\n\n canHandle: () => false, // egress happens at message level, never per value\n\n serialize() {\n throw new Error(\n 'ClaimCheck egress is the bundled MessageHandler (wrapOutbound); it never reaches the value walk',\n )\n },\n\n isReference: (value): value is ClaimCheckObject =>\n isClaimCheckObject(value),\n\n async deserialize(ref, ctx) {\n const response = await ctx.fetch(ref.url, { signal: ctx.signal })\n await assertOk(response, ref.url, 'claim-check fetch')\n const text = await response.text()\n try {\n return JSON.parse(text)\n } catch {\n throw new Error(`malformed claim-check payload (${ref.url})`)\n }\n },\n }\n}\n\n/** The claim-check as one composable bundle: message-wrap egress + value-walk ingress. */\nexport function createClaimCheckHandler(): HandlerBundle<\n object,\n object,\n ClaimCheckEgressContext\n> & {\n valueHandler: ValueHandler<unknown, ClaimCheckObject>\n messageHandler: MessageHandler<ClaimCheckEgressContext>\n} {\n return {\n valueHandler: createValueHandler(),\n messageHandler: createMessageHandler(),\n }\n}\n",
20
20
  "import { withRequenceStreams } from '@requence/files'\nimport { callbackToAsyncIterable } from '@requence/helpers'\nimport chalk from 'chalk'\nimport { type FetchLike, createEventSource } from 'eventsource-client'\n\nimport { abortTask } from './abortTask.ts'\nimport { ackTask } from './ackTask.ts'\nimport {\n RequenceUnreachableError,\n isUnreachableStatus,\n reachableFetch,\n} from './errors.ts'\nimport {\n forbidCallbacks,\n inbound,\n observeOnlyCallbacks,\n transformer,\n} from './ingress.ts'\nimport { protectTask } from './protectTask.ts'\nimport {\n type CreateTaskOptions,\n type Result,\n type Update,\n eventSchema,\n prioritySchema,\n} from './types.ts'\nimport getAccessToken from './utils/getAccessToken.ts'\n\nclass TaskPrepareError extends Error {\n constructor(\n message: string,\n public readonly taskTemplate: string,\n ) {\n super(message)\n }\n}\n\nexport class TaskError extends TaskPrepareError {\n constructor(\n message: string,\n public readonly taskTemplate: string,\n public readonly taskId: string,\n ) {\n super(message, taskTemplate)\n }\n}\n\ntype TaskUpdateHandler<T> = (update: Update<T>) => void\n\ntype Task<T extends keyof RequenceTask.TaskTemplate | (string & {})> =\n AsyncIterable<Update<T>> &\n Pick<Promise<Result<T>>, 'then' | 'catch' | 'finally'> & {\n getTaskId(): Promise<string>\n getTaskUrl(): Promise<string | null>\n abort(reason?: string): Promise<void>\n protect(): Promise<void>\n }\n\nexport function createTask<\n T extends keyof RequenceTask.TaskTemplate | (string & {}),\n>(options: CreateTaskOptions<T>, onUpdate?: TaskUpdateHandler<T>): Task<T> {\n const taskUpdateHandlers = new Set<TaskUpdateHandler<T>>()\n const priority = prioritySchema.parse(options.priority)\n const { apiBaseUrl, token } = getAccessToken(options.accessToken)\n\n const prepareUrl = `${apiBaseUrl}/task/prepare/${options.taskTemplate}`\n\n const payloadPromiseWithResolvers = Promise.withResolvers<{\n taskId: string\n urls?: { watch: string; show: string }\n }>()\n\n let isMonitoring = false\n const startMonitoring = async () => {\n if (isMonitoring) {\n return\n }\n\n isMonitoring = true\n const payload = await payloadPromiseWithResolvers.promise\n\n if (!payload.urls) {\n resultPromiseWithResolvers.resolve({\n input: options.input,\n taskId: payload.taskId,\n taskUrl: '',\n result: null,\n getNodeData(_alias) {\n return null\n },\n getNodeError(_alias) {\n return null\n },\n } as Result<T>)\n return\n }\n\n const taskStorage: {\n input: unknown\n data: Record<string, unknown>\n errors: Record<string, string>\n result: unknown\n } = { input: null, data: {}, errors: {}, result: null }\n\n let since: Date | null = null\n let lastPosition: number | null = null\n let lastResponse: Response | undefined\n // Sequentializes async update application so events apply in arrival order.\n let processing: Promise<void> = Promise.resolve()\n const customFetch: FetchLike = async (url, init) => {\n const response = await fetch(url, init)\n lastResponse = response\n return response\n }\n const eventSource = createEventSource({\n method: 'POST',\n fetch: customFetch,\n url: payload.urls.watch,\n headers: {\n Authorization: `Bearer ${token}`,\n 'Content-Type': 'application/json',\n },\n get body() {\n return JSON.stringify({\n since: since ? since.toISOString() : null,\n lastPosition,\n })\n },\n onScheduleReconnect() {\n // Only advance `since` when we have never received an event yet.\n // Once lastPosition is set it acts as the primary cursor and\n // prevents gaps in the event stream on reconnect.\n if (lastPosition === null) {\n since = new Date()\n }\n },\n async onDisconnect() {\n if (lastResponse?.status === 200) {\n eventSource.close()\n return\n }\n // A gateway status is an unambiguous \"system unavailable\" signal (the\n // watch endpoint never returns these), so surface it as retryable\n // instead of reconnecting forever. Bare connection drops keep the\n // resilient auto-reconnect below.\n if (lastResponse && isUnreachableStatus(lastResponse.status)) {\n eventSource.close()\n resultPromiseWithResolvers.reject(\n new RequenceUnreachableError(lastResponse.status),\n )\n }\n },\n onMessage({ id, event, data }) {\n if (id) {\n lastPosition = Number(id)\n }\n\n const updateResult = eventSchema.safeParse({ event, data })\n\n if (!updateResult.success) {\n eventSource.close()\n resultPromiseWithResolvers.reject(\n new TaskError(\n `Invalid ${event} update received`,\n options.taskTemplate,\n payload.taskId,\n ),\n )\n return\n }\n\n const update = updateResult.data\n\n // The inbound transform is async; queue update application so events\n // still apply strictly in arrival order (taskStart before nodeUpdate\n // before taskEnd), exactly as the previous synchronous handler did.\n processing = processing\n .then(() => applyUpdate(update))\n .catch((error: unknown) => {\n eventSource.close()\n resultPromiseWithResolvers.reject(\n new TaskError(\n error instanceof Error ? error.message : String(error),\n options.taskTemplate,\n payload.taskId,\n ),\n )\n })\n },\n })\n\n async function applyUpdate(\n update: ReturnType<typeof eventSchema.parse>,\n ): Promise<void> {\n switch (update.type) {\n case 'taskStart': {\n taskStorage.input = await inbound(update.input, forbidCallbacks)\n break\n }\n case 'nodeUpdate': {\n if (update.node.alias) {\n taskStorage.data[update.node.alias] = await inbound(\n update.data,\n observeOnlyCallbacks,\n )\n }\n break\n }\n case 'nodeError': {\n if (update.node.alias) {\n taskStorage.errors[update.node.alias] = update.error\n }\n break\n }\n case 'taskEnd': {\n taskStorage.result = await inbound(\n update.result,\n observeOnlyCallbacks,\n )\n eventSource.close()\n if (update.requireAck) {\n ackTask({\n taskId: payload.taskId,\n accessToken: options.accessToken,\n }).catch(() => {})\n }\n break\n }\n case 'taskError':\n case 'taskAborted': {\n eventSource.close()\n if (update.requireAck) {\n ackTask({\n taskId: payload.taskId,\n accessToken: options.accessToken,\n }).catch(() => {})\n }\n break\n }\n }\n\n const context: Update<unknown>['context'] = {\n taskId: update.taskId,\n input: taskStorage.input,\n getNodeData(alias) {\n return taskStorage.data[alias] ?? null\n },\n getNodeError(alias) {\n return taskStorage.errors[alias] ?? null\n },\n result: taskStorage.result,\n }\n\n const contextUpdate = {\n ...update,\n context,\n }\n\n if (contextUpdate.type === 'taskEnd') {\n resultPromiseWithResolvers.resolve({\n ...context,\n taskUrl: payload.urls?.show ?? '',\n } as Result<T>)\n }\n\n if (\n contextUpdate.type === 'taskError' ||\n contextUpdate.type === 'taskAborted'\n ) {\n resultPromiseWithResolvers.reject(\n new TaskError(\n contextUpdate.reason ??\n (contextUpdate.type === 'taskError'\n ? 'Task failed'\n : 'Task aborted'),\n options.taskTemplate,\n payload.taskId,\n ),\n )\n }\n\n taskUpdateHandlers.forEach((handler) =>\n handler(contextUpdate as Update<T>),\n )\n }\n }\n\n const taskIdPromiseWithResolvers = Promise.withResolvers<string>()\n // Internal, prepared-phase id used by abort()/protect() (and the monitoring\n // setup) while the task is still being uploaded/finalized. The *public*\n // getTaskId() promise (taskIdPromiseWithResolvers) is only resolved once\n // finalize succeeds, so a caller never receives an id for a task that failed\n // to finalize — and therefore never one for a task the server discarded.\n const preparedTaskIdPromiseWithResolvers = Promise.withResolvers<string>()\n preparedTaskIdPromiseWithResolvers.promise.catch(() => {})\n const taskUrlPromiseWithResolvers = Promise.withResolvers<string | null>()\n const resultPromiseWithResolvers = Promise.withResolvers<Result<T>>()\n\n let rejectTaskIdPromise = false\n let rejectTaskUrlPromise = false\n\n ;(async () => {\n try {\n const prepareResponse = await reachableFetch(prepareUrl, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${token}`,\n },\n })\n\n if (!prepareResponse.ok) {\n const error = new TaskPrepareError(\n await prepareResponse.text(),\n options.taskTemplate,\n )\n // prepare failed: no id will ever exist, so unblock abort()/protect().\n preparedTaskIdPromiseWithResolvers.reject(error)\n if (rejectTaskIdPromise) {\n taskIdPromiseWithResolvers.reject(error)\n }\n if (rejectTaskUrlPromise) {\n taskUrlPromiseWithResolvers.reject(error)\n }\n if (isMonitoring) {\n resultPromiseWithResolvers.reject(error)\n }\n return\n }\n\n const prepareData = (await prepareResponse.json()) as {\n taskId: string\n finalizeUrl: string\n branch: string\n fileUrls?: { uploadUrl: string; streamUrl: string }\n limits?: { maxPayloadSize: number; maxFileSize: number }\n }\n\n if (prepareData.branch !== 'live' && !options.suppressBranchWarning) {\n console.warn(\n chalk.hex('#eab308')(\n 'task is executed in',\n chalk.bold(prepareData.branch),\n 'branch',\n ),\n )\n }\n\n preparedTaskIdPromiseWithResolvers.resolve(prepareData.taskId)\n\n // Surfaces a failed background stream-body upload of the task input.\n const streamDone = Promise.withResolvers<void>()\n // Guard against an unhandled rejection before we await streamDone below.\n streamDone.promise.catch(() => {})\n\n let mappedParams: unknown\n try {\n const { value, done } = await withRequenceStreams(() =>\n transformer.outbound(\n {\n name: options.name,\n input: options.input,\n priority,\n requireAck: options.requireAck ?? false,\n },\n {\n fetch: globalThis.fetch,\n uploadUrl: prepareData.fileUrls?.uploadUrl,\n streamUrl: prepareData.fileUrls?.streamUrl,\n maxPayloadSize: prepareData.limits?.maxPayloadSize,\n maxFileSize: prepareData.limits?.maxFileSize,\n },\n ),\n )\n mappedParams = value\n done.then(\n () => streamDone.resolve(),\n (error: unknown) =>\n streamDone.reject(\n error instanceof Error ? error : new Error(String(error)),\n ),\n )\n } catch (error) {\n // A failed input upload now fails hard (was silently nulled).\n const taskError = new TaskError(\n error instanceof Error ? error.message : String(error),\n options.taskTemplate,\n prepareData.taskId,\n )\n if (rejectTaskIdPromise) {\n taskIdPromiseWithResolvers.reject(taskError)\n }\n if (rejectTaskUrlPromise) {\n taskUrlPromiseWithResolvers.reject(taskError)\n }\n if (isMonitoring) {\n resultPromiseWithResolvers.reject(taskError)\n }\n return\n }\n\n const finalizeResponse = await reachableFetch(prepareData.finalizeUrl, {\n method: 'POST',\n body: JSON.stringify(mappedParams),\n headers: {\n Authorization: `Bearer ${token}`,\n 'Content-Type': 'application/json',\n },\n })\n\n if (!finalizeResponse.ok) {\n const error = new TaskError(\n await finalizeResponse.text(),\n options.taskTemplate,\n prepareData.taskId,\n )\n if (rejectTaskIdPromise) {\n taskIdPromiseWithResolvers.reject(error)\n }\n if (rejectTaskUrlPromise) {\n taskUrlPromiseWithResolvers.reject(error)\n }\n if (isMonitoring) {\n resultPromiseWithResolvers.reject(error)\n }\n return\n }\n\n // Ensure the background input uploads actually completed. A failed upload\n // means the task's input is incomplete, so fail the task rather than report\n // success with a dangling reference.\n try {\n await streamDone.promise\n } catch (error) {\n const taskError = new TaskError(\n error instanceof Error ? error.message : String(error),\n options.taskTemplate,\n prepareData.taskId,\n )\n if (rejectTaskIdPromise) {\n taskIdPromiseWithResolvers.reject(taskError)\n }\n if (rejectTaskUrlPromise) {\n taskUrlPromiseWithResolvers.reject(taskError)\n }\n if (isMonitoring) {\n resultPromiseWithResolvers.reject(taskError)\n }\n return\n }\n\n const payload = (await finalizeResponse.json()) as {\n taskId: string\n urls?: {\n show: string\n watch: string\n }\n }\n // Finalize succeeded: only now is the id safe to hand out publicly.\n taskIdPromiseWithResolvers.resolve(prepareData.taskId)\n taskUrlPromiseWithResolvers.resolve(payload.urls?.show ?? null)\n payloadPromiseWithResolvers.resolve(payload)\n if (onUpdate) {\n taskUpdateHandlers.add(onUpdate)\n startMonitoring()\n }\n } catch (error) {\n // Routes a thrown error (e.g. RequenceUnreachableError from a failed\n // prepare/finalize during maintenance) to the same rejection paths the\n // inline `!ok` branches use. Rejecting an already-settled promise is a\n // no-op, so this is safe regardless of how far the flow progressed.\n // Unblock abort()/protect() if prepare never resolved the id (no-op once\n // it has); the public getTaskId() rejects only when it was requested.\n preparedTaskIdPromiseWithResolvers.reject(error)\n if (rejectTaskIdPromise) {\n taskIdPromiseWithResolvers.reject(error)\n }\n if (rejectTaskUrlPromise) {\n taskUrlPromiseWithResolvers.reject(error)\n }\n if (isMonitoring) {\n resultPromiseWithResolvers.reject(error)\n }\n }\n })()\n\n const asyncIterable = callbackToAsyncIterable<Update<T>>(\n (push, _fail, done) => {\n const handleUpdate = (update: Update<T>) => {\n push(update)\n if (\n update.type === 'taskEnd' ||\n update.type === 'taskError' ||\n update.type === 'taskAborted'\n ) {\n done()\n taskUpdateHandlers.delete(handleUpdate)\n }\n }\n taskUpdateHandlers.add(handleUpdate)\n\n startMonitoring()\n\n return () => {\n taskUpdateHandlers.delete(handleUpdate)\n }\n },\n )\n\n const methods = {\n get catch() {\n startMonitoring()\n return resultPromiseWithResolvers.promise.catch.bind(\n resultPromiseWithResolvers.promise,\n )\n },\n get finally() {\n startMonitoring()\n return resultPromiseWithResolvers.promise.finally.bind(\n resultPromiseWithResolvers.promise,\n )\n },\n get then() {\n startMonitoring()\n return resultPromiseWithResolvers.promise.then.bind(\n resultPromiseWithResolvers.promise,\n )\n },\n async getTaskId() {\n rejectTaskIdPromise = true\n return taskIdPromiseWithResolvers.promise\n },\n async getTaskUrl() {\n rejectTaskUrlPromise = true\n return taskUrlPromiseWithResolvers.promise\n },\n async abort(reason?: string) {\n const taskId = await preparedTaskIdPromiseWithResolvers.promise\n await abortTask({\n taskId,\n accessToken: options.accessToken,\n reason,\n })\n },\n async protect() {\n const taskId = await preparedTaskIdPromiseWithResolvers.promise\n await protectTask({\n taskId,\n accessToken: options.accessToken,\n })\n },\n }\n\n return Object.defineProperties(\n asyncIterable,\n Object.getOwnPropertyDescriptors(methods),\n ) as any\n}\n",
21
21
  "import { readFileSync } from 'node:fs'\n\nimport { deobfuscate } from '@requence/helpers'\n\nexport default function getAccessToken(accessToken?: string) {\n let token =\n accessToken ??\n process.env.REQUENCE_TASK_ACCESS_TOKEN ??\n process.env.REQUENCE_ACCESS_TOKEN\n\n if (!token) {\n const pkgJson = JSON.parse(readFileSync('package.json', 'utf-8'))\n token = pkgJson.requence?.task?.accessToken ?? pkgJson.requence?.accessToken\n }\n\n if (!token) {\n throw new Error(\n 'No access token found\\nYou can provide the access token as argument to createTask,\\nas environment variable REQUENCE_ACCESS_TOKEN or\\nin your package.json in requence.accessToken',\n )\n }\n\n const parts = deobfuscate(token)\n if (parts.length < 2 || parts[0] !== 'api') {\n throw new Error('Invalid access token')\n }\n\n return {\n token: parts[1],\n apiBaseUrl: parts[2],\n }\n}\n",
22
22
  "import { reachableFetch } from './errors.ts'\nimport getAccessToken from './utils/getAccessToken.ts'\n\nclass TaskAbortError extends Error {\n constructor(\n message: string,\n public readonly taskId: string,\n ) {\n super(message)\n }\n}\n\ninterface AbortTaskOptions {\n accessToken?: string\n reason?: string\n taskId: string\n}\nexport async function abortTask(options: AbortTaskOptions) {\n const { apiBaseUrl, token } = getAccessToken(options.accessToken)\n\n const abortUrl = `${apiBaseUrl}/task/abort/${options.taskId}`\n\n const response = await reachableFetch(abortUrl, {\n method: 'POST',\n body: options.reason ?? '',\n headers: {\n Authorization: `Bearer ${token}`,\n },\n })\n\n if (!response.ok) {\n throw new TaskAbortError(await response.text(), options.taskId)\n }\n}\n",
@@ -33,7 +33,7 @@
33
33
  "import { z } from 'zod/v4'\n\nimport { reachableFetch } from './errors.ts'\nimport { forbidCallbacks, inbound, observeOnlyCallbacks } from './ingress.ts'\nimport type { Update } from './types.ts'\nimport getAccessToken from './utils/getAccessToken.ts'\n\nconst taskSchema = z.object({\n status: z.literal([\n 'SUCCESSFUL',\n 'FAILED',\n 'IDLE',\n 'PENDING',\n 'RUNNING',\n 'STOPPED',\n 'AWAITING_DELIVERY',\n ]),\n statusText: z.string().nullable(),\n input: z.unknown(),\n result: z.unknown(),\n taskTemplate: z.string(),\n name: z.string(),\n nodesData: z.array(z.object({ alias: z.string(), data: z.unknown() })),\n nodesError: z.array(z.object({ alias: z.string(), error: z.string() })),\n branch: z.union([z.literal('live'), z.string()]) as z.ZodType<\n 'live' | (string & {})\n >,\n})\n\ninterface GetTaskOptions {\n accessToken?: string\n taskId: string\n}\n\nexport async function getTask(taskIdOrOptions: string | GetTaskOptions) {\n const taskId =\n typeof taskIdOrOptions === 'string'\n ? taskIdOrOptions\n : taskIdOrOptions.taskId\n const { apiBaseUrl, token } = getAccessToken(\n typeof taskIdOrOptions === 'string'\n ? undefined\n : taskIdOrOptions.accessToken,\n )\n\n const response = await reachableFetch(\n new URL(`${apiBaseUrl}/task/${taskId}`),\n {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n },\n )\n\n if (!response.ok) {\n throw new Error('Task not found')\n }\n\n const taskData = taskSchema.parse(await response.json())\n\n // Rehydrate references up front so the context accessors stay synchronous.\n const [input, result, nodesData] = await Promise.all([\n inbound(taskData.input, forbidCallbacks),\n inbound(taskData.result, observeOnlyCallbacks),\n Promise.all(\n taskData.nodesData.map(async ({ alias, data }) => ({\n alias,\n data: await inbound(data, observeOnlyCallbacks),\n })),\n ),\n ])\n\n const context: Update<unknown>['context'] = {\n taskId,\n input,\n getNodeData(alias) {\n return nodesData.find((d) => d.alias === alias)?.data ?? null\n },\n getNodeError(alias) {\n return taskData.nodesError.find((d) => d.alias === alias)?.error ?? null\n },\n result,\n }\n\n return {\n status: taskData.status,\n statusText: taskData.statusText,\n taskTemplate: taskData.taskTemplate,\n name: taskData.name,\n branch: taskData.branch,\n context,\n }\n}\n",
34
34
  "import { createTask } from './createTask.ts'\nimport { getTask } from './getTask.ts'\n\ninterface RecreateTaskOptions {\n taskId: string\n name?: string\n accessToken?: string\n priority?: number\n}\nexport async function recreateTask(\n options: RecreateTaskOptions,\n onUpdate?: Parameters<typeof createTask>[1],\n) {\n const task = await getTask(options.taskId)\n return createTask(\n {\n taskTemplate: task.taskTemplate,\n accessToken: options.accessToken,\n name: options.name ?? task.name,\n priority: options.priority,\n input: task.context.input,\n },\n onUpdate,\n )\n}\n"
35
35
  ],
36
- "mappings": "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",
37
- "debugId": "F96A579BA4EB8E1D64756E2164756E21",
36
+ "mappings": "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",
37
+ "debugId": "5F76DAE69347258864756E2164756E21",
38
38
  "names": []
39
39
  }
@@ -16,4 +16,5 @@ export * from './utils/debounce.ts';
16
16
  export * from './utils/obj.ts';
17
17
  export * from './utils/amqpHeartbeat.ts';
18
18
  export * from './utils/amqpPublishRetry.ts';
19
+ export * from './utils/sliceClock.ts';
19
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../helpers/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,oCAAoC,CAAA;AAClD,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,wBAAwB,CAAA;AACtC,cAAc,mCAAmC,CAAA;AACjD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,0BAA0B,CAAA;AACxC,cAAc,6BAA6B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../helpers/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,oCAAoC,CAAA;AAClD,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,wBAAwB,CAAA;AACtC,cAAc,mCAAmC,CAAA;AACjD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,0BAA0B,CAAA;AACxC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,uBAAuB,CAAA"}
@@ -96,6 +96,7 @@ export declare class NodeTree {
96
96
  mode: "CONTINUOUS" | "LINEAR";
97
97
  privileged: boolean;
98
98
  wireCodec?: "json" | "msgpack" | undefined;
99
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
99
100
  configurationServices?: {
100
101
  outputs: {
101
102
  name: string | null;
@@ -129,6 +130,7 @@ export declare class NodeTree {
129
130
  mode: "CONTINUOUS" | "LINEAR";
130
131
  privileged: boolean;
131
132
  wireCodec?: "json" | "msgpack" | undefined;
133
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
132
134
  configurationServices?: /*elided*/ any[] | undefined;
133
135
  }[] | undefined;
134
136
  } | {
@@ -257,6 +259,7 @@ export declare class NodeTree {
257
259
  mode: "CONTINUOUS" | "LINEAR";
258
260
  privileged: boolean;
259
261
  wireCodec?: "json" | "msgpack" | undefined;
262
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
260
263
  configurationServices?: {
261
264
  outputs: {
262
265
  name: string | null;
@@ -290,6 +293,7 @@ export declare class NodeTree {
290
293
  mode: "CONTINUOUS" | "LINEAR";
291
294
  privileged: boolean;
292
295
  wireCodec?: "json" | "msgpack" | undefined;
296
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
293
297
  configurationServices?: /*elided*/ any[] | undefined;
294
298
  }[] | undefined;
295
299
  } | {
@@ -383,6 +387,7 @@ export declare class NodeTree {
383
387
  mode: "CONTINUOUS" | "LINEAR";
384
388
  privileged: boolean;
385
389
  wireCodec?: "json" | "msgpack" | undefined;
390
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
386
391
  configurationServices?: {
387
392
  outputs: {
388
393
  name: string | null;
@@ -416,6 +421,7 @@ export declare class NodeTree {
416
421
  mode: "CONTINUOUS" | "LINEAR";
417
422
  privileged: boolean;
418
423
  wireCodec?: "json" | "msgpack" | undefined;
424
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
419
425
  configurationServices?: /*elided*/ any[] | undefined;
420
426
  }[] | undefined;
421
427
  } | {
@@ -509,6 +515,7 @@ export declare class NodeTree {
509
515
  mode: "CONTINUOUS" | "LINEAR";
510
516
  privileged: boolean;
511
517
  wireCodec?: "json" | "msgpack" | undefined;
518
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
512
519
  configurationServices?: {
513
520
  outputs: {
514
521
  name: string | null;
@@ -542,6 +549,7 @@ export declare class NodeTree {
542
549
  mode: "CONTINUOUS" | "LINEAR";
543
550
  privileged: boolean;
544
551
  wireCodec?: "json" | "msgpack" | undefined;
552
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
545
553
  configurationServices?: /*elided*/ any[] | undefined;
546
554
  }[] | undefined;
547
555
  } | {
@@ -634,6 +642,7 @@ export declare class NodeTree {
634
642
  mode: "CONTINUOUS" | "LINEAR";
635
643
  privileged: boolean;
636
644
  wireCodec?: "json" | "msgpack" | undefined;
645
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
637
646
  configurationServices?: {
638
647
  outputs: {
639
648
  name: string | null;
@@ -667,6 +676,7 @@ export declare class NodeTree {
667
676
  mode: "CONTINUOUS" | "LINEAR";
668
677
  privileged: boolean;
669
678
  wireCodec?: "json" | "msgpack" | undefined;
679
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
670
680
  configurationServices?: /*elided*/ any[] | undefined;
671
681
  }[] | undefined;
672
682
  } | {
@@ -772,6 +782,7 @@ export declare class NodeTree {
772
782
  mode: "CONTINUOUS" | "LINEAR";
773
783
  privileged: boolean;
774
784
  wireCodec?: "json" | "msgpack" | undefined;
785
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
775
786
  configurationServices?: {
776
787
  outputs: {
777
788
  name: string | null;
@@ -805,6 +816,7 @@ export declare class NodeTree {
805
816
  mode: "CONTINUOUS" | "LINEAR";
806
817
  privileged: boolean;
807
818
  wireCodec?: "json" | "msgpack" | undefined;
819
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
808
820
  configurationServices?: /*elided*/ any[] | undefined;
809
821
  }[] | undefined;
810
822
  } | {
@@ -863,6 +875,15 @@ export declare class NodeTree {
863
875
  }[];
864
876
  getTriggers(nodeId: string): string[];
865
877
  getTraceIds(nodeId: string): string[];
878
+ /**
879
+ * The mirror of `getTraceIds`, reading the edges this node FEEDS rather than
880
+ * the ones that fed it.
881
+ *
882
+ * Needed for the entry node, which nothing targets: the trace a task is born
883
+ * with is stamped on its outgoing edges by `start()`'s `traverseWithData`, so
884
+ * incoming-edge reads see nothing at all there.
885
+ */
886
+ getOutgoingTraceIds(nodeId: string): string[];
866
887
  traverse(nodeId: string, outputName: OutputName, traceIds?: string[]): void;
867
888
  traverseWithData(nodeId: string, outputName: OutputName, data: unknown, overwrite?: boolean, traceIds?: string[]): void;
868
889
  disconnect(sourceNodeId: string, sourceNodeOutputName: OutputName, targetNodeId: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"NodeTree.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/NodeTree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeTree.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/NodeTree.ts"],"names":[],"mappings":"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"}
@@ -63,4 +63,54 @@ export interface BuildServiceIdentityHeadersParams {
63
63
  }
64
64
  export declare function buildServiceIdentityHeaders({ libVersion, name, capabilities, }: BuildServiceIdentityHeadersParams): Record<string, string>;
65
65
  export declare function readServiceIdentity(raw: unknown): ServiceIdentity | null;
66
+ /**
67
+ * WHY a service node got the codec it got.
68
+ *
69
+ * `wireCodecForFleet` answers `json` for several distinct situations that matter
70
+ * very differently in an incident: a service that is simply offline looks nothing
71
+ * like a management API that is down, which in turn looks nothing like a genuine
72
+ * mixed fleet. Recording only the codec makes "why is this json?" unanswerable
73
+ * without shell access to the box, so the reason travels beside it.
74
+ *
75
+ * A compact token rather than prose: it is baked into every service node of every
76
+ * task, and the wording belongs to the UI, which can then change without touching
77
+ * the tree or the operator.
78
+ */
79
+ export declare const WIRE_CODEC_REASON_VALUES: readonly [
80
+ /** msgpack: every attached replica claimed the capability. */
81
+ 'fleet-capable',
82
+ /** The broker's management API is unreachable, so no fleet can be judged. */
83
+ 'presence-unavailable',
84
+ /** Nothing is attached to this service version's queue at all. */
85
+ 'no-replicas',
86
+ /**
87
+ * Something IS consuming the queue that never announced itself. An SDK too old
88
+ * to announce is also too old to decode, so this folds to json — and it is the
89
+ * one reason that looks like a bug but is the design working.
90
+ */
91
+ 'replicas-unaccounted',
92
+ /** A complete fleet, but at least one replica cannot decode msgpack. */
93
+ 'missing-capability'];
94
+ export type WireCodecReason = (typeof WIRE_CODEC_REASON_VALUES)[number];
95
+ /** Named accessors, so call sites read as intent rather than as string literals. */
96
+ export declare const WIRE_CODEC_REASONS: {
97
+ readonly fleetCapable: 'fleet-capable';
98
+ readonly presenceUnavailable: 'presence-unavailable';
99
+ readonly noReplicas: 'no-replicas';
100
+ readonly replicasUnaccounted: 'replicas-unaccounted';
101
+ readonly missingCapability: 'missing-capability';
102
+ };
103
+ /**
104
+ * Explains a `json` verdict from the facts the fleet monitor holds.
105
+ *
106
+ * Split from `wireCodecForFleet` rather than folded into it because the codec
107
+ * decision needs only the verdict, while the explanation needs the counts behind
108
+ * it — and the codec must stay trivially checkable.
109
+ */
110
+ export declare function wireCodecReason({ codec, presenceAvailable, replicaCount, consumerCount, }: {
111
+ codec: 'json' | 'msgpack';
112
+ presenceAvailable: boolean;
113
+ replicaCount: number;
114
+ consumerCount: number;
115
+ }): WireCodecReason;
66
116
  //# sourceMappingURL=clientProperties.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"clientProperties.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/clientProperties.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clientProperties.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/clientProperties.ts"],"names":[],"mappings":"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"}