@requence/task 0.8.1 → 0.8.2-edge.1151

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/build/index.js CHANGED
@@ -671,6 +671,29 @@ async function offload(ctx, uploadUrl, json) {
671
671
  }
672
672
  return toClaimCheckObject({ url: data.url, size: data.size });
673
673
  }
674
+ function jsonByteLength(value) {
675
+ const json = JSON.stringify(value);
676
+ return json === undefined ? 0 : Buffer.byteLength(json);
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
+ }
674
697
  function createMessageHandler() {
675
698
  return {
676
699
  async wrapOutbound(body, ctx) {
@@ -678,8 +701,8 @@ function createMessageHandler() {
678
701
  if (maxBytes <= 0 || body === undefined) {
679
702
  return body;
680
703
  }
681
- const json = JSON.stringify(body);
682
- if (json === undefined || Buffer.byteLength(json) <= maxBytes) {
704
+ const measure = ctx.measure ?? jsonByteLength;
705
+ if (measure(body) <= maxBytes) {
683
706
  return body;
684
707
  }
685
708
  const { uploadUrl } = ctx;
@@ -688,25 +711,29 @@ function createMessageHandler() {
688
711
  return body;
689
712
  }
690
713
  if (!isRecord(body)) {
714
+ const json = toOffloadJson(body);
715
+ if (json === undefined) {
716
+ return body;
717
+ }
691
718
  return offload(ctx, uploadUrl, json);
692
719
  }
693
- const entries = Object.entries(body).map(([key, value]) => {
694
- const valueJson = JSON.stringify(value);
695
- return {
696
- key,
697
- valueJson,
698
- size: valueJson === undefined ? 0 : Buffer.byteLength(valueJson)
699
- };
700
- }).sort((a, b) => b.size - a.size);
720
+ const entries = Object.entries(body).map(([key, value]) => ({
721
+ key,
722
+ valueJson: toOffloadJson(value),
723
+ size: measure(value)
724
+ })).sort((a, b) => b.size - a.size);
701
725
  const wrapped = { ...body };
702
- let total = Buffer.byteLength(json);
726
+ let total = measure(body);
703
727
  for (const entry of entries) {
704
- if (total <= maxBytes || entry.valueJson === undefined || entry.size <= 256) {
728
+ if (total <= maxBytes || entry.size <= 256) {
705
729
  break;
706
730
  }
731
+ if (entry.valueJson === undefined) {
732
+ continue;
733
+ }
707
734
  const ref = await offload(ctx, uploadUrl, entry.valueJson);
708
735
  wrapped[entry.key] = ref;
709
- total += Buffer.byteLength(JSON.stringify(ref)) - entry.size;
736
+ total += measure(ref) - entry.size;
710
737
  }
711
738
  return wrapped;
712
739
  }
@@ -1685,5 +1712,5 @@ export {
1685
1712
  RequenceFile
1686
1713
  };
1687
1714
 
1688
- //# debugId=D8638BB13B29F67364756E2164756E21
1715
+ //# debugId=5F76DAE69347258864756E2164756E21
1689
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\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 const json = JSON.stringify(body)\n if (json === undefined || Buffer.byteLength(json) <= 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 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 const valueJson = JSON.stringify(value)\n return {\n key,\n valueJson,\n size: valueJson === undefined ? 0 : Buffer.byteLength(valueJson),\n }\n })\n .sort((a, b) => b.size - a.size)\n\n const wrapped: Record<string, unknown> = { ...body }\n let total = Buffer.byteLength(json)\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 += Buffer.byteLength(JSON.stringify(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": "D8638BB13B29F67364756E2164756E21",
36
+ "mappings": "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",
37
+ "debugId": "5F76DAE69347258864756E2164756E21",
38
38
  "names": []
39
39
  }
@@ -13,7 +13,7 @@ type CriticalGroup = {
13
13
  nodeId: string;
14
14
  name: OutputName;
15
15
  }[];
16
- type DataSet = {
16
+ export type DataSet = {
17
17
  data: unknown;
18
18
  overwrite: boolean;
19
19
  time: number;
@@ -27,6 +27,20 @@ export declare class NodeTree {
27
27
  private edges;
28
28
  private data;
29
29
  private overriddenNodeData;
30
+ /**
31
+ * Payload ids whose own storage field is durable (issue #118). `this.data` is
32
+ * write-once — a fresh UUID per write, an explicit delete to drop one — so the
33
+ * difference against it is exactly what a write has to carry, and a
34
+ * steady-state write carries none of it.
35
+ */
36
+ private persistedDataIds;
37
+ /**
38
+ * Payloads whose field is still in storage although no edge references them
39
+ * any more. Their delete is issued only AFTER the snapshot that dropped them
40
+ * is durable, so they stay in the delta until it actually lands — an
41
+ * interrupted delete leaks a field, it never strands a reference.
42
+ */
43
+ private orphanedDataIds;
30
44
  readonly cycles: {
31
45
  node: Node;
32
46
  name: OutputName;
@@ -34,7 +48,16 @@ export declare class NodeTree {
34
48
  readonly entryNode: Extract<Node, {
35
49
  type: 'entry';
36
50
  }>;
37
- constructor({ nodes, edges }: NodeTreeOptions, _data?: Map<string, DataSet>, _cycles?: Cycle[] | null, _overriddenNodeData?: Map<string, Record<string, unknown>>);
51
+ constructor({ nodes, edges }: NodeTreeOptions, _cycles?: Cycle[] | null, _overriddenNodeData?: Map<string, Record<string, unknown>>);
52
+ /**
53
+ * The GRAPH, never the data that flowed through it (issue #118). `this.data`
54
+ * is deliberately absent: it is persisted per field, so a write is a function
55
+ * of graph size — bounded by the template — instead of a function of
56
+ * everything the task has ever emitted.
57
+ *
58
+ * `nodes` and `edges` mutate as the graph runs and `overriddenNodeData` is
59
+ * mutated by `overrideAggregatedNodeData`, so all three have to stay here.
60
+ */
38
61
  pack(): readonly [({
39
62
  id: string;
40
63
  type: "entry";
@@ -72,6 +95,8 @@ export declare class NodeTree {
72
95
  retryDelay?: number | undefined;
73
96
  mode: "CONTINUOUS" | "LINEAR";
74
97
  privileged: boolean;
98
+ wireCodec?: "json" | "msgpack" | undefined;
99
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
75
100
  configurationServices?: {
76
101
  outputs: {
77
102
  name: string | null;
@@ -104,6 +129,8 @@ export declare class NodeTree {
104
129
  retryDelay?: number | undefined;
105
130
  mode: "CONTINUOUS" | "LINEAR";
106
131
  privileged: boolean;
132
+ wireCodec?: "json" | "msgpack" | undefined;
133
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
107
134
  configurationServices?: /*elided*/ any[] | undefined;
108
135
  }[] | undefined;
109
136
  } | {
@@ -157,11 +184,41 @@ export declare class NodeTree {
157
184
  type: "comment";
158
185
  text: string;
159
186
  alias?: string | undefined;
160
- })[], ExtendedEdge[], Map<string, DataSet>, {
187
+ })[], ExtendedEdge[], {
161
188
  node: Node;
162
189
  name: OutputName;
163
190
  }[][], Map<string, Record<string, unknown>>];
164
- static unpack([nodes, edges, _data, _cycles, _overriddenNodeData]: ReturnType<typeof NodeTree.prototype.pack>): NodeTree;
191
+ static unpack([nodes, edges, _cycles, _overriddenNodeData]: ReturnType<typeof NodeTree.prototype.pack>): NodeTree;
192
+ /**
193
+ * Attaches the write-once payloads read back from their own storage fields
194
+ * (issue #118). They are durable by definition — a restore is reading them —
195
+ * so the delta bookkeeping starts from exactly this set.
196
+ */
197
+ restoreData(data: Map<string, DataSet>): void;
198
+ /**
199
+ * What storage is missing: the payloads written since the last confirmed
200
+ * write, and the durable ones no edge references any more.
201
+ *
202
+ * Call `gc()` first — an entry it would drop is otherwise still in
203
+ * `this.data` and therefore reported as a payload to write.
204
+ */
205
+ dataDelta(): {
206
+ writes: [string, DataSet][];
207
+ obsolete: string[];
208
+ };
209
+ /**
210
+ * The write that carried `writtenIds` and dropped `obsoleteIds` is durable:
211
+ * the first group becomes storage's current content, the second becomes
212
+ * orphans awaiting their delete.
213
+ *
214
+ * Takes both groups explicitly rather than re-deriving them from `this.data`:
215
+ * the machine may have produced further payloads while the write was in
216
+ * flight, and marking one of those durable would drop it from every later
217
+ * delta — it would never be written at all.
218
+ */
219
+ confirmDataWrite(writtenIds: Iterable<string>, obsoleteIds: Iterable<string>): void;
220
+ /** The delete of these fields landed — storage holds nothing for them. */
221
+ confirmDataDelete(deletedIds: Iterable<string>): void;
165
222
  static get ERROR(): string;
166
223
  getCriticalGroups(nodeId: string, allowMultipleOutputs?: boolean): CriticalGroup[];
167
224
  getNodes(condition?: (node: Node) => boolean): ({
@@ -201,6 +258,8 @@ export declare class NodeTree {
201
258
  retryDelay?: number | undefined;
202
259
  mode: "CONTINUOUS" | "LINEAR";
203
260
  privileged: boolean;
261
+ wireCodec?: "json" | "msgpack" | undefined;
262
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
204
263
  configurationServices?: {
205
264
  outputs: {
206
265
  name: string | null;
@@ -233,6 +292,8 @@ export declare class NodeTree {
233
292
  retryDelay?: number | undefined;
234
293
  mode: "CONTINUOUS" | "LINEAR";
235
294
  privileged: boolean;
295
+ wireCodec?: "json" | "msgpack" | undefined;
296
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
236
297
  configurationServices?: /*elided*/ any[] | undefined;
237
298
  }[] | undefined;
238
299
  } | {
@@ -325,6 +386,8 @@ export declare class NodeTree {
325
386
  retryDelay?: number | undefined;
326
387
  mode: "CONTINUOUS" | "LINEAR";
327
388
  privileged: boolean;
389
+ wireCodec?: "json" | "msgpack" | undefined;
390
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
328
391
  configurationServices?: {
329
392
  outputs: {
330
393
  name: string | null;
@@ -357,6 +420,8 @@ export declare class NodeTree {
357
420
  retryDelay?: number | undefined;
358
421
  mode: "CONTINUOUS" | "LINEAR";
359
422
  privileged: boolean;
423
+ wireCodec?: "json" | "msgpack" | undefined;
424
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
360
425
  configurationServices?: /*elided*/ any[] | undefined;
361
426
  }[] | undefined;
362
427
  } | {
@@ -449,6 +514,8 @@ export declare class NodeTree {
449
514
  retryDelay?: number | undefined;
450
515
  mode: "CONTINUOUS" | "LINEAR";
451
516
  privileged: boolean;
517
+ wireCodec?: "json" | "msgpack" | undefined;
518
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
452
519
  configurationServices?: {
453
520
  outputs: {
454
521
  name: string | null;
@@ -481,6 +548,8 @@ export declare class NodeTree {
481
548
  retryDelay?: number | undefined;
482
549
  mode: "CONTINUOUS" | "LINEAR";
483
550
  privileged: boolean;
551
+ wireCodec?: "json" | "msgpack" | undefined;
552
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
484
553
  configurationServices?: /*elided*/ any[] | undefined;
485
554
  }[] | undefined;
486
555
  } | {
@@ -572,6 +641,8 @@ export declare class NodeTree {
572
641
  retryDelay?: number | undefined;
573
642
  mode: "CONTINUOUS" | "LINEAR";
574
643
  privileged: boolean;
644
+ wireCodec?: "json" | "msgpack" | undefined;
645
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
575
646
  configurationServices?: {
576
647
  outputs: {
577
648
  name: string | null;
@@ -604,6 +675,8 @@ export declare class NodeTree {
604
675
  retryDelay?: number | undefined;
605
676
  mode: "CONTINUOUS" | "LINEAR";
606
677
  privileged: boolean;
678
+ wireCodec?: "json" | "msgpack" | undefined;
679
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
607
680
  configurationServices?: /*elided*/ any[] | undefined;
608
681
  }[] | undefined;
609
682
  } | {
@@ -708,6 +781,8 @@ export declare class NodeTree {
708
781
  retryDelay?: number | undefined;
709
782
  mode: "CONTINUOUS" | "LINEAR";
710
783
  privileged: boolean;
784
+ wireCodec?: "json" | "msgpack" | undefined;
785
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
711
786
  configurationServices?: {
712
787
  outputs: {
713
788
  name: string | null;
@@ -740,6 +815,8 @@ export declare class NodeTree {
740
815
  retryDelay?: number | undefined;
741
816
  mode: "CONTINUOUS" | "LINEAR";
742
817
  privileged: boolean;
818
+ wireCodec?: "json" | "msgpack" | undefined;
819
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
743
820
  configurationServices?: /*elided*/ any[] | undefined;
744
821
  }[] | undefined;
745
822
  } | {
@@ -809,6 +886,19 @@ export declare class NodeTree {
809
886
  getAggregatedData(targetNodeId: string): Record<string, unknown>;
810
887
  getAggregatedEdgeData(edgeId: string): Record<string, unknown>;
811
888
  reset(): void;
889
+ /**
890
+ * Drops every payload no edge references any more.
891
+ *
892
+ * A `Set`, not an array (issue #117): this runs first thing in
893
+ * `machinePacker.packMutable`, so once per inbound message under the
894
+ * persist-before-ack contract — 570 flushes/minute on edge during the
895
+ * 2026-08-06 load test. Testing each candidate against an array made the work
896
+ * edges × data on every one of those calls.
897
+ *
898
+ * Deleting straight out of the iteration is safe (a `Map` iterator tolerates
899
+ * removal of the entry it is on) and spares the intermediate array of keys.
900
+ * The deletion behaviour is unchanged; only the lookup moved.
901
+ */
812
902
  gc(): void;
813
903
  overrideAggregatedNodeData(nodeId: string, data: Record<string, unknown>): void;
814
904
  }
@@ -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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"}
@@ -0,0 +1,116 @@
1
+ export declare const CLIENT_PROPERTY_KEYS: {
2
+ readonly libVersion: 'requence_lib_version';
3
+ readonly serviceVersion: 'requence_service_version';
4
+ readonly capabilities: 'requence_capabilities';
5
+ readonly name: 'requence_name';
6
+ readonly devOverlay: 'requence_dev_overlay';
7
+ };
8
+ export declare const MAX_SERVICE_NAME_LENGTH = 64;
9
+ export declare const MAX_CAPABILITIES_LENGTH = 512;
10
+ export declare const WIRE_JSON_1 = "wire:json1";
11
+ export declare const WIRE_MSGPACK_1 = "wire:msgpack1";
12
+ export declare const SERVICE_WIRE_CAPABILITIES: ReadonlyArray<string>;
13
+ export interface BuildServiceClientPropertiesParams {
14
+ /** `<language>@<version>`, e.g. `javascript@1.2.3`. */
15
+ libVersion: string;
16
+ /** The service version this connection consumes, e.g. `v1`. */
17
+ serviceVersion: string;
18
+ /** Optional author-chosen debugging label. */
19
+ name?: string;
20
+ devOverlay?: boolean;
21
+ capabilities?: ReadonlyArray<string>;
22
+ }
23
+ export declare function buildServiceClientProperties({ libVersion, serviceVersion, name, devOverlay, capabilities, }: BuildServiceClientPropertiesParams): Record<string, string>;
24
+ export interface ServiceReplica {
25
+ libVersion: string | null;
26
+ serviceVersion: string | null;
27
+ capabilities: string[];
28
+ name: string | null;
29
+ devOverlay: boolean;
30
+ }
31
+ export declare function readServiceClientProperties(raw: unknown): ServiceReplica;
32
+ export interface FleetVerdict {
33
+ libVersion: string | null;
34
+ capabilities: string[];
35
+ complete: boolean;
36
+ }
37
+ export declare function foldServiceFleet(replicas: ReadonlyArray<ServiceReplica>, attachedCount: number): FleetVerdict;
38
+ export declare function wireCodecForFleet(verdict: FleetVerdict): 'json' | 'msgpack';
39
+ export declare const CAPABILITY_HEADER_KEYS: {
40
+ readonly requires: 'requires';
41
+ readonly mismatch: 'capabilityMismatch';
42
+ readonly reroutes: 'capabilityReroutes';
43
+ };
44
+ export declare function requiredCapabilitiesForCodec(codec: 'json' | 'msgpack'): string[];
45
+ export declare function buildRequiresHeader(capabilities: ReadonlyArray<string>): Record<string, string>;
46
+ export declare function readRequiredCapabilities(headers: unknown): string[];
47
+ export declare function unsupportedCapabilities(required: ReadonlyArray<string>, supported?: ReadonlyArray<string>): string[];
48
+ export declare function unsupportedCapabilityMessage(unsupported: ReadonlyArray<string>): string;
49
+ export declare const IDENTITY_HEADER_KEYS: {
50
+ readonly libVersion: 'libVersion';
51
+ readonly name: 'serviceName';
52
+ readonly capabilities: 'capabilities';
53
+ };
54
+ export interface ServiceIdentity {
55
+ libVersion: string | null;
56
+ name: string | null;
57
+ capabilities: string[];
58
+ }
59
+ export interface BuildServiceIdentityHeadersParams {
60
+ libVersion: string;
61
+ name?: string;
62
+ capabilities?: ReadonlyArray<string>;
63
+ }
64
+ export declare function buildServiceIdentityHeaders({ libVersion, name, capabilities, }: BuildServiceIdentityHeadersParams): Record<string, string>;
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;
116
+ //# sourceMappingURL=clientProperties.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientProperties.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/clientProperties.ts"],"names":[],"mappings":"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"}
@@ -98,6 +98,8 @@ export declare const createCommandSchema: z.ZodPipe<z.ZodObject<{
98
98
  retryDelay?: number | undefined;
99
99
  mode: "CONTINUOUS" | "LINEAR";
100
100
  privileged: boolean;
101
+ wireCodec?: "json" | "msgpack" | undefined;
102
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
101
103
  configurationServices?: {
102
104
  outputs: {
103
105
  name: string | null;
@@ -130,6 +132,8 @@ export declare const createCommandSchema: z.ZodPipe<z.ZodObject<{
130
132
  retryDelay?: number | undefined;
131
133
  mode: "CONTINUOUS" | "LINEAR";
132
134
  privileged: boolean;
135
+ wireCodec?: "json" | "msgpack" | undefined;
136
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
133
137
  configurationServices?: /*elided*/ any[] | undefined;
134
138
  }[] | undefined;
135
139
  } | {
@@ -235,6 +239,8 @@ export declare const createCommandSchema: z.ZodPipe<z.ZodObject<{
235
239
  retryDelay?: number | undefined;
236
240
  mode: "CONTINUOUS" | "LINEAR";
237
241
  privileged: boolean;
242
+ wireCodec?: "json" | "msgpack" | undefined;
243
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
238
244
  configurationServices?: {
239
245
  outputs: {
240
246
  name: string | null;
@@ -267,6 +273,8 @@ export declare const createCommandSchema: z.ZodPipe<z.ZodObject<{
267
273
  retryDelay?: number | undefined;
268
274
  mode: "CONTINUOUS" | "LINEAR";
269
275
  privileged: boolean;
276
+ wireCodec?: "json" | "msgpack" | undefined;
277
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
270
278
  configurationServices?: any[] | undefined;
271
279
  }[] | undefined;
272
280
  } | {
@@ -460,6 +468,8 @@ export declare const commandSchema: z.ZodUnion<readonly [z.ZodObject<{
460
468
  retryDelay?: number | undefined;
461
469
  mode: "CONTINUOUS" | "LINEAR";
462
470
  privileged: boolean;
471
+ wireCodec?: "json" | "msgpack" | undefined;
472
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
463
473
  configurationServices?: {
464
474
  outputs: {
465
475
  name: string | null;
@@ -492,6 +502,8 @@ export declare const commandSchema: z.ZodUnion<readonly [z.ZodObject<{
492
502
  retryDelay?: number | undefined;
493
503
  mode: "CONTINUOUS" | "LINEAR";
494
504
  privileged: boolean;
505
+ wireCodec?: "json" | "msgpack" | undefined;
506
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
495
507
  configurationServices?: /*elided*/ any[] | undefined;
496
508
  }[] | undefined;
497
509
  } | {
@@ -597,6 +609,8 @@ export declare const commandSchema: z.ZodUnion<readonly [z.ZodObject<{
597
609
  retryDelay?: number | undefined;
598
610
  mode: "CONTINUOUS" | "LINEAR";
599
611
  privileged: boolean;
612
+ wireCodec?: "json" | "msgpack" | undefined;
613
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
600
614
  configurationServices?: {
601
615
  outputs: {
602
616
  name: string | null;
@@ -629,6 +643,8 @@ export declare const commandSchema: z.ZodUnion<readonly [z.ZodObject<{
629
643
  retryDelay?: number | undefined;
630
644
  mode: "CONTINUOUS" | "LINEAR";
631
645
  privileged: boolean;
646
+ wireCodec?: "json" | "msgpack" | undefined;
647
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
632
648
  configurationServices?: any[] | undefined;
633
649
  }[] | undefined;
634
650
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAK1B,eAAO,MAAM,kBAAkB;;;iBAG7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6B3B,CAAA;AAEL,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAAqD,CAAA;AAC/E,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAA;AACnD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAA"}
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAK1B,eAAO,MAAM,kBAAkB;;;iBAG7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6B3B,CAAA;AAEL,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAAqD,CAAA;AAC/E,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAA;AACnD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAA"}
@@ -1,3 +1,4 @@
1
+ export * from './clientProperties.ts';
1
2
  export * from './command.ts';
2
3
  export * from './configurationScript.ts';
3
4
  export * from './logicLanguages.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,4BAA4B,CAAA;AAC1C,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,wBAAwB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,4BAA4B,CAAA;AAC1C,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,wBAAwB,CAAA"}
@@ -51,6 +51,17 @@ export declare const serviceNodeSchema: z.ZodObject<{
51
51
  LINEAR: "LINEAR";
52
52
  }>>;
53
53
  privileged: z.ZodDefault<z.ZodBoolean>;
54
+ wireCodec: z.ZodOptional<z.ZodEnum<{
55
+ json: "json";
56
+ msgpack: "msgpack";
57
+ }>>;
58
+ wireCodecReason: z.ZodOptional<z.ZodEnum<{
59
+ "fleet-capable": "fleet-capable";
60
+ "missing-capability": "missing-capability";
61
+ "no-replicas": "no-replicas";
62
+ "presence-unavailable": "presence-unavailable";
63
+ "replicas-unaccounted": "replicas-unaccounted";
64
+ }>>;
54
65
  configurationServices: z.ZodOptional<z.ZodArray<z.ZodObject</*elided*/ any, z.core.$strict>>>;
55
66
  }, z.core.$strict>;
56
67
  export type ServiceNode = z.output<typeof serviceNodeSchema>;
@@ -165,6 +176,17 @@ export declare const nodeSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
165
176
  LINEAR: "LINEAR";
166
177
  }>>;
167
178
  privileged: z.ZodDefault<z.ZodBoolean>;
179
+ wireCodec: z.ZodOptional<z.ZodEnum<{
180
+ json: "json";
181
+ msgpack: "msgpack";
182
+ }>>;
183
+ wireCodecReason: z.ZodOptional<z.ZodEnum<{
184
+ "fleet-capable": "fleet-capable";
185
+ "missing-capability": "missing-capability";
186
+ "no-replicas": "no-replicas";
187
+ "presence-unavailable": "presence-unavailable";
188
+ "replicas-unaccounted": "replicas-unaccounted";
189
+ }>>;
168
190
  configurationServices: z.ZodOptional<z.ZodArray<z.ZodObject</*elided*/ any, z.core.$strict>>>;
169
191
  }, z.core.$strict>, z.ZodObject<{
170
192
  outputs: z.ZodArray<z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"nodeType.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/nodeType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAmC1B,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,MAAM,CAGvD,CAAA;AA4BD,eAAO,MAAM,eAAe;;;;;kBAS1B,CAAA;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,eAAe,CAAC,CAAA;AAUxD,eAAO,MAAM,4BAA4B;;;;;;;mBAQxC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAC3C,OAAO,4BAA4B,CACpC,CAAA;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAuCF,CAAA;AAC5B,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE5D,2DAA2D;AAC3D,eAAO,MAAM,gCAAgC;aAC3C,KAAK,EAAE,CAAC;aACR,UAAU,EAAE,KAAM;aAClB,GAAG;CACK,CAAA;AAEV,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;kBAUA,CAAA;AAC5B,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,eAAe,CAAC,CAAA;AAExD,eAAO,MAAM,YAAY;;;;kBAIvB,CAAA;AACF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,YAAY,CAAC,CAAA;AAElD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;kBASJ,CAAA;AAC5B,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAEhE,eAAO,MAAM,cAAc;;;;;kBAOzB,CAAA;AACF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,cAAc,CAAC,CAAA;AAEtD,eAAO,MAAM,iBAAiB;;;;;iBAK5B,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAG5D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAQrB,CAAA;AAEF,eAAO,MAAM,UAAU;;;;;iBAKrB,CAAA;AAEF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC,CAAA;AAC9C,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC,CAAA"}
1
+ {"version":3,"file":"nodeType.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/nodeType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAoC1B,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,MAAM,CAGvD,CAAA;AA4BD,eAAO,MAAM,eAAe;;;;;kBAS1B,CAAA;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,eAAe,CAAC,CAAA;AAUxD,eAAO,MAAM,4BAA4B;;;;;;;mBAQxC,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAC3C,OAAO,4BAA4B,CACpC,CAAA;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAiEF,CAAA;AAC5B,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE5D,2DAA2D;AAC3D,eAAO,MAAM,gCAAgC;aAC3C,KAAK,EAAE,CAAC;aACR,UAAU,EAAE,KAAM;aAClB,GAAG;CACK,CAAA;AAEV,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;kBAUA,CAAA;AAC5B,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,eAAe,CAAC,CAAA;AAExD,eAAO,MAAM,YAAY;;;;kBAIvB,CAAA;AACF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,YAAY,CAAC,CAAA;AAElD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;kBASJ,CAAA;AAC5B,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAEhE,eAAO,MAAM,cAAc;;;;;kBAOzB,CAAA;AACF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,cAAc,CAAC,CAAA;AAEtD,eAAO,MAAM,iBAAiB;;;;;iBAK5B,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAG5D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAQrB,CAAA;AAEF,eAAO,MAAM,UAAU;;;;;iBAKrB,CAAA;AAEF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC,CAAA;AAC9C,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"templateNodeTypes.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/templateNodeTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AA4B1B,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;iBAEP,CAAA;AAC7B,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAExE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6BT,CAAA;AAC7B,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE5E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;iBAEP,CAAA;AAC7B,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAExE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;iBAEJ,CAAA;AAC7B,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAElE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;iBAMX,CAAA;AAC7B,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAEhF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;iBAEN,CAAA;AAC7B,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAEtE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;iBAET,CAAA;AAC7B,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE5E,eAAO,MAAM,YAAY;;;;;;;;;iBAQvB,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAa7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAC9D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA"}
1
+ {"version":3,"file":"templateNodeTypes.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/templateNodeTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AA4B1B,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;iBAEP,CAAA;AAC7B,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAExE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoCT,CAAA;AAC7B,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE5E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;iBAEP,CAAA;AAC7B,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAExE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;iBAEJ,CAAA;AAC7B,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAElE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;iBAMX,CAAA;AAC7B,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAEhF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;iBAEN,CAAA;AAC7B,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAEtE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;iBAET,CAAA;AAC7B,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE5E,eAAO,MAAM,YAAY;;;;;;;;;iBAQvB,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAa7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAC9D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA"}
@@ -40,6 +40,17 @@ export declare const treeSchema: z.ZodObject<{
40
40
  LINEAR: "LINEAR";
41
41
  }>>;
42
42
  privileged: z.ZodDefault<z.ZodBoolean>;
43
+ wireCodec: z.ZodOptional<z.ZodEnum<{
44
+ json: "json";
45
+ msgpack: "msgpack";
46
+ }>>;
47
+ wireCodecReason: z.ZodOptional<z.ZodEnum<{
48
+ "fleet-capable": "fleet-capable";
49
+ "missing-capability": "missing-capability";
50
+ "no-replicas": "no-replicas";
51
+ "presence-unavailable": "presence-unavailable";
52
+ "replicas-unaccounted": "replicas-unaccounted";
53
+ }>>;
43
54
  configurationServices: z.ZodOptional<z.ZodArray<z.ZodObject</*elided*/ any, z.core.$strict>>>;
44
55
  }, z.core.$strict>, z.ZodObject<{
45
56
  outputs: z.ZodArray<z.ZodObject<{
@@ -146,6 +157,17 @@ declare const extendedTreeSchema: z.ZodObject<{
146
157
  LINEAR: "LINEAR";
147
158
  }>>;
148
159
  privileged: z.ZodDefault<z.ZodBoolean>;
160
+ wireCodec: z.ZodOptional<z.ZodEnum<{
161
+ json: "json";
162
+ msgpack: "msgpack";
163
+ }>>;
164
+ wireCodecReason: z.ZodOptional<z.ZodEnum<{
165
+ "fleet-capable": "fleet-capable";
166
+ "missing-capability": "missing-capability";
167
+ "no-replicas": "no-replicas";
168
+ "presence-unavailable": "presence-unavailable";
169
+ "replicas-unaccounted": "replicas-unaccounted";
170
+ }>>;
149
171
  configurationServices: z.ZodOptional<z.ZodArray<z.ZodObject</*elided*/ any, z.core.$strict>>>;
150
172
  }, z.core.$strict>, z.ZodObject<{
151
173
  outputs: z.ZodArray<z.ZodObject<{
@@ -253,6 +275,17 @@ export declare const validatedTreeSchema: z.ZodPipe<z.ZodObject<{
253
275
  LINEAR: "LINEAR";
254
276
  }>>;
255
277
  privileged: z.ZodDefault<z.ZodBoolean>;
278
+ wireCodec: z.ZodOptional<z.ZodEnum<{
279
+ json: "json";
280
+ msgpack: "msgpack";
281
+ }>>;
282
+ wireCodecReason: z.ZodOptional<z.ZodEnum<{
283
+ "fleet-capable": "fleet-capable";
284
+ "missing-capability": "missing-capability";
285
+ "no-replicas": "no-replicas";
286
+ "presence-unavailable": "presence-unavailable";
287
+ "replicas-unaccounted": "replicas-unaccounted";
288
+ }>>;
256
289
  configurationServices: z.ZodOptional<z.ZodArray<z.ZodObject</*elided*/ any, z.core.$strict>>>;
257
290
  }, z.core.$strict>, z.ZodObject<{
258
291
  outputs: z.ZodArray<z.ZodObject<{
@@ -355,6 +388,8 @@ export declare const validatedTreeSchema: z.ZodPipe<z.ZodObject<{
355
388
  retryDelay?: number | undefined;
356
389
  mode: "CONTINUOUS" | "LINEAR";
357
390
  privileged: boolean;
391
+ wireCodec?: "json" | "msgpack" | undefined;
392
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
358
393
  configurationServices?: {
359
394
  outputs: {
360
395
  name: string | null;
@@ -387,6 +422,8 @@ export declare const validatedTreeSchema: z.ZodPipe<z.ZodObject<{
387
422
  retryDelay?: number | undefined;
388
423
  mode: "CONTINUOUS" | "LINEAR";
389
424
  privileged: boolean;
425
+ wireCodec?: "json" | "msgpack" | undefined;
426
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
390
427
  configurationServices?: /*elided*/ any[] | undefined;
391
428
  }[] | undefined;
392
429
  } | {
@@ -485,6 +522,8 @@ export declare const validatedTreeSchema: z.ZodPipe<z.ZodObject<{
485
522
  retryDelay?: number | undefined;
486
523
  mode: "CONTINUOUS" | "LINEAR";
487
524
  privileged: boolean;
525
+ wireCodec?: "json" | "msgpack" | undefined;
526
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
488
527
  configurationServices?: {
489
528
  outputs: {
490
529
  name: string | null;
@@ -517,6 +556,8 @@ export declare const validatedTreeSchema: z.ZodPipe<z.ZodObject<{
517
556
  retryDelay?: number | undefined;
518
557
  mode: "CONTINUOUS" | "LINEAR";
519
558
  privileged: boolean;
559
+ wireCodec?: "json" | "msgpack" | undefined;
560
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
520
561
  configurationServices?: any[] | undefined;
521
562
  }[] | undefined;
522
563
  } | {
@@ -629,6 +670,17 @@ export declare const treeReferenceSchema: z.ZodObject<{
629
670
  LINEAR: "LINEAR";
630
671
  }>>;
631
672
  privileged: z.ZodDefault<z.ZodBoolean>;
673
+ wireCodec: z.ZodOptional<z.ZodEnum<{
674
+ json: "json";
675
+ msgpack: "msgpack";
676
+ }>>;
677
+ wireCodecReason: z.ZodOptional<z.ZodEnum<{
678
+ "fleet-capable": "fleet-capable";
679
+ "missing-capability": "missing-capability";
680
+ "no-replicas": "no-replicas";
681
+ "presence-unavailable": "presence-unavailable";
682
+ "replicas-unaccounted": "replicas-unaccounted";
683
+ }>>;
632
684
  configurationServices: z.ZodOptional<z.ZodArray<z.ZodObject</*elided*/ any, z.core.$strict>>>;
633
685
  }, z.core.$strict>, z.ZodObject<{
634
686
  outputs: z.ZodArray<z.ZodObject<{
@@ -737,6 +789,17 @@ export declare const treeListSchema: z.ZodObject<{
737
789
  LINEAR: "LINEAR";
738
790
  }>>;
739
791
  privileged: z.ZodDefault<z.ZodBoolean>;
792
+ wireCodec: z.ZodOptional<z.ZodEnum<{
793
+ json: "json";
794
+ msgpack: "msgpack";
795
+ }>>;
796
+ wireCodecReason: z.ZodOptional<z.ZodEnum<{
797
+ "fleet-capable": "fleet-capable";
798
+ "missing-capability": "missing-capability";
799
+ "no-replicas": "no-replicas";
800
+ "presence-unavailable": "presence-unavailable";
801
+ "replicas-unaccounted": "replicas-unaccounted";
802
+ }>>;
740
803
  configurationServices: z.ZodOptional<z.ZodArray<z.ZodObject</*elided*/ any, z.core.$strict>>>;
741
804
  }, z.core.$strict>, z.ZodObject<{
742
805
  outputs: z.ZodArray<z.ZodObject<{
@@ -839,6 +902,8 @@ export declare const treeListSchema: z.ZodObject<{
839
902
  retryDelay?: number | undefined;
840
903
  mode: "CONTINUOUS" | "LINEAR";
841
904
  privileged: boolean;
905
+ wireCodec?: "json" | "msgpack" | undefined;
906
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
842
907
  configurationServices?: {
843
908
  outputs: {
844
909
  name: string | null;
@@ -871,6 +936,8 @@ export declare const treeListSchema: z.ZodObject<{
871
936
  retryDelay?: number | undefined;
872
937
  mode: "CONTINUOUS" | "LINEAR";
873
938
  privileged: boolean;
939
+ wireCodec?: "json" | "msgpack" | undefined;
940
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
874
941
  configurationServices?: /*elided*/ any[] | undefined;
875
942
  }[] | undefined;
876
943
  } | {
@@ -969,6 +1036,8 @@ export declare const treeListSchema: z.ZodObject<{
969
1036
  retryDelay?: number | undefined;
970
1037
  mode: "CONTINUOUS" | "LINEAR";
971
1038
  privileged: boolean;
1039
+ wireCodec?: "json" | "msgpack" | undefined;
1040
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
972
1041
  configurationServices?: {
973
1042
  outputs: {
974
1043
  name: string | null;
@@ -1001,6 +1070,8 @@ export declare const treeListSchema: z.ZodObject<{
1001
1070
  retryDelay?: number | undefined;
1002
1071
  mode: "CONTINUOUS" | "LINEAR";
1003
1072
  privileged: boolean;
1073
+ wireCodec?: "json" | "msgpack" | undefined;
1074
+ wireCodecReason?: "fleet-capable" | "missing-capability" | "no-replicas" | "presence-unavailable" | "replicas-unaccounted" | undefined;
1004
1075
  configurationServices?: any[] | undefined;
1005
1076
  }[] | undefined;
1006
1077
  } | {
@@ -1113,6 +1184,17 @@ export declare const treeListSchema: z.ZodObject<{
1113
1184
  LINEAR: "LINEAR";
1114
1185
  }>>;
1115
1186
  privileged: z.ZodDefault<z.ZodBoolean>;
1187
+ wireCodec: z.ZodOptional<z.ZodEnum<{
1188
+ json: "json";
1189
+ msgpack: "msgpack";
1190
+ }>>;
1191
+ wireCodecReason: z.ZodOptional<z.ZodEnum<{
1192
+ "fleet-capable": "fleet-capable";
1193
+ "missing-capability": "missing-capability";
1194
+ "no-replicas": "no-replicas";
1195
+ "presence-unavailable": "presence-unavailable";
1196
+ "replicas-unaccounted": "replicas-unaccounted";
1197
+ }>>;
1116
1198
  configurationServices: z.ZodOptional<z.ZodArray<z.ZodObject<any, z.core.$strict>>>;
1117
1199
  }, z.core.$strict>, z.ZodObject<{
1118
1200
  outputs: z.ZodArray<z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"treeNodes.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/treeNodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAmB1B,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAGrB,CAAA;AAEF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC,CAAA;AAE9C,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAEtB,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE/D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0O/B,CAAA;AACD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAU9B,CAAA;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAEhE,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqBvB,CAAA;AAEJ,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,cAAc,CAAC,CAAA;AACtD,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA"}
1
+ {"version":3,"file":"treeNodes.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/treeNodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAmB1B,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAGrB,CAAA;AAEF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC,CAAA;AAE9C,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAEtB,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE/D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0O/B,CAAA;AACD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAU9B,CAAA;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAEhE,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqBvB,CAAA;AAEJ,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,cAAc,CAAC,CAAA;AACtD,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA"}
@@ -35,7 +35,22 @@ declare const nodeStartUpdateSchema: z.ZodObject<{
35
35
  alias: z.ZodOptional<z.ZodString>;
36
36
  }, z.core.$strip>;
37
37
  type: z.ZodLiteral<"NODE_START">;
38
- libVersion: z.ZodDefault<z.ZodNullable<z.ZodString>>;
38
+ service: z.ZodDefault<z.ZodNullable<z.ZodObject<{
39
+ libVersion: z.ZodNullable<z.ZodString>;
40
+ name: z.ZodNullable<z.ZodString>;
41
+ capabilities: z.ZodArray<z.ZodString>;
42
+ }, z.core.$strip>>>;
43
+ wireCodec: z.ZodDefault<z.ZodNullable<z.ZodEnum<{
44
+ json: "json";
45
+ msgpack: "msgpack";
46
+ }>>>;
47
+ wireCodecReason: z.ZodDefault<z.ZodNullable<z.ZodEnum<{
48
+ "fleet-capable": "fleet-capable";
49
+ "missing-capability": "missing-capability";
50
+ "no-replicas": "no-replicas";
51
+ "presence-unavailable": "presence-unavailable";
52
+ "replicas-unaccounted": "replicas-unaccounted";
53
+ }>>>;
39
54
  triggers: z.ZodArray<z.ZodString>;
40
55
  }, z.core.$strip>;
41
56
  export type NodeStartUpdate = z.infer<typeof nodeStartUpdateSchema>;
@@ -241,7 +256,22 @@ export declare const updateSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
241
256
  alias: z.ZodOptional<z.ZodString>;
242
257
  }, z.core.$strip>;
243
258
  type: z.ZodLiteral<"NODE_START">;
244
- libVersion: z.ZodDefault<z.ZodNullable<z.ZodString>>;
259
+ service: z.ZodDefault<z.ZodNullable<z.ZodObject<{
260
+ libVersion: z.ZodNullable<z.ZodString>;
261
+ name: z.ZodNullable<z.ZodString>;
262
+ capabilities: z.ZodArray<z.ZodString>;
263
+ }, z.core.$strip>>>;
264
+ wireCodec: z.ZodDefault<z.ZodNullable<z.ZodEnum<{
265
+ json: "json";
266
+ msgpack: "msgpack";
267
+ }>>>;
268
+ wireCodecReason: z.ZodDefault<z.ZodNullable<z.ZodEnum<{
269
+ "fleet-capable": "fleet-capable";
270
+ "missing-capability": "missing-capability";
271
+ "no-replicas": "no-replicas";
272
+ "presence-unavailable": "presence-unavailable";
273
+ "replicas-unaccounted": "replicas-unaccounted";
274
+ }>>>;
245
275
  triggers: z.ZodArray<z.ZodString>;
246
276
  }, z.core.$strip>, z.ZodObject<{
247
277
  timestamp: z.ZodPipe<z.ZodNumber, z.ZodTransform<Date, number>>;
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAoB1B,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;iBAIxB,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;iBAIzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;iBAKpB,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMtB,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;iBAEvB,CAAA;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;iBAIzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;iBAYzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,mBAAmB;;;;;;;;iBAIvB,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAO/D,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAavB,CAAA;AAEF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/protocol/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAsB1B,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;iBAIxB,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAYjE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAezB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;iBAKpB,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMtB,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;iBAEvB,CAAA;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;iBAIzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;iBAYzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,qBAAqB;;;;;;;iBAGzB,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,QAAA,MAAM,mBAAmB;;;;;;;;iBAIvB,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAO/D,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAavB,CAAA;AAEF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA"}
@@ -1,5 +1,45 @@
1
1
  export declare const DEFAULT_AMQP_PUBLISH_TIMEOUT_MS = 10000;
2
2
  export declare const DEFAULT_AMQP_PUBLISH_RETRY_ATTEMPTS = 3;
3
+ /**
4
+ * How long the loop must have been unable to run a callback during a publish's
5
+ * in-flight window for its confirm deadline to be treated as spurious rather
6
+ * than as a lost message.
7
+ *
8
+ * Mirrors the operator's event-loop stall threshold: a full second in which no
9
+ * callback could run is a stall, not scheduling jitter. Comfortably above normal
10
+ * GC pauses (so a genuinely unresponsive broker on a healthy loop still times
11
+ * out and retries) and far below the incident's multi-second stalls.
12
+ */
13
+ export declare const PUBLISH_STARVATION_THRESHOLD_MS = 1000;
14
+ export interface LoopStarvationProbe {
15
+ /**
16
+ * Stop sampling and return the longest stretch (ms) during which the loop
17
+ * could not run a callback since the probe started. Idempotent — subsequent
18
+ * calls return the same value without re-reading the clock.
19
+ */
20
+ stop: () => number;
21
+ }
22
+ /**
23
+ * Measure how long the event loop was starved while a single publish is in
24
+ * flight. It runs a self-rescheduling timer and, crucially, also reads the
25
+ * pending gap synchronously at `stop()`: a stall that blocked the loop right up
26
+ * to `stop()` is caught by `now() - expected` even though the timer never got a
27
+ * chance to fire. That makes the reading immune to the very stall it measures
28
+ * and independent of callback ordering after the loop resumes.
29
+ *
30
+ * The clock is monotonic (`performance.now`), never wall time — the operator's
31
+ * lag monitor uses the same, and a wall-clock step (NTP) must not read as
32
+ * starvation and suppress a legitimate retry. `now` is injectable for tests.
33
+ */
34
+ export declare function createLoopStarvationProbe({ now, }?: {
35
+ now?: () => number;
36
+ }): LoopStarvationProbe;
37
+ /**
38
+ * Whether a confirm deadline that elapsed should be read as loop starvation
39
+ * rather than a lost publish. When it returns true the publish must NOT be
40
+ * re-sent: the message is in the broker's hands and only the confirm was late.
41
+ */
42
+ export declare function isStarvedPublishTimeout(starvedMs: number): boolean;
3
43
  export declare function isRetryablePublishError(error: unknown): boolean;
4
44
  export declare function computeAmqpPublishRetryDelay(attempt: number): number;
5
45
  //# sourceMappingURL=amqpPublishRetry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"amqpPublishRetry.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/utils/amqpPublishRetry.ts"],"names":[],"mappings":"AA8BA,eAAO,MAAM,+BAA+B,QAAS,CAAA;AACrD,eAAO,MAAM,mCAAmC,IAAI,CAAA;AAKpD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,WAQrD;AAID,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,UAM3D"}
1
+ {"version":3,"file":"amqpPublishRetry.d.ts","sourceRoot":"","sources":["../../../../../../helpers/src/utils/amqpPublishRetry.ts"],"names":[],"mappings":"AA8BA,eAAO,MAAM,+BAA+B,QAAS,CAAA;AACrD,eAAO,MAAM,mCAAmC,IAAI,CAAA;AAqBpD;;;;;;;;;GASG;AACH,eAAO,MAAM,+BAA+B,OAAQ,CAAA;AAEpD,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,IAAI,EAAE,MAAM,MAAM,CAAA;CACnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,GAA6B,GAC9B,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CAAO,GAAG,mBAAmB,CAyBnD;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,WAExD;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,WAQrD;AAID,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,UAM3D"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@requence/task",
3
3
  "type": "module",
4
- "version": "0.8.1",
4
+ "version": "0.8.2-edge.1151",
5
5
  "bin": {
6
6
  "requence-task": "build/cli.js"
7
7
  },