@relayflows/sdk 2.0.14 → 2.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/dist/agent-artifacts.d.ts +20 -0
  2. package/dist/agent-artifacts.d.ts.map +1 -0
  3. package/dist/agent-artifacts.js +81 -0
  4. package/dist/agent-artifacts.js.map +1 -0
  5. package/dist/authored-flow-executor.d.ts +33 -3
  6. package/dist/authored-flow-executor.d.ts.map +1 -1
  7. package/dist/authored-flow-executor.js +56 -10
  8. package/dist/authored-flow-executor.js.map +1 -1
  9. package/dist/authored-node-runner.d.ts.map +1 -1
  10. package/dist/authored-node-runner.js +11 -4
  11. package/dist/authored-node-runner.js.map +1 -1
  12. package/dist/authored-root.d.ts.map +1 -1
  13. package/dist/authored-root.js +2 -2
  14. package/dist/authored-root.js.map +1 -1
  15. package/dist/authored-step-output.d.ts +2 -0
  16. package/dist/authored-step-output.d.ts.map +1 -1
  17. package/dist/authored-step-output.js +5 -1
  18. package/dist/authored-step-output.js.map +1 -1
  19. package/dist/authored-worker-step.d.ts.map +1 -1
  20. package/dist/authored-worker-step.js +19 -1
  21. package/dist/authored-worker-step.js.map +1 -1
  22. package/dist/cli/check-triggers.d.ts.map +1 -1
  23. package/dist/cli/check-triggers.js +14 -3
  24. package/dist/cli/check-triggers.js.map +1 -1
  25. package/dist/cli/check.js +6 -1
  26. package/dist/cli/check.js.map +1 -1
  27. package/dist/cli/cloud-deploy.d.ts +30 -0
  28. package/dist/cli/cloud-deploy.d.ts.map +1 -0
  29. package/dist/cli/cloud-deploy.js +162 -0
  30. package/dist/cli/cloud-deploy.js.map +1 -0
  31. package/dist/cli/cloud-run.d.ts +3 -1
  32. package/dist/cli/cloud-run.d.ts.map +1 -1
  33. package/dist/cli/cloud-run.js +37 -5
  34. package/dist/cli/cloud-run.js.map +1 -1
  35. package/dist/cli/cloud-sync.d.ts +13 -0
  36. package/dist/cli/cloud-sync.d.ts.map +1 -0
  37. package/dist/cli/cloud-sync.js +39 -0
  38. package/dist/cli/cloud-sync.js.map +1 -0
  39. package/dist/cli/direct-run.d.ts.map +1 -1
  40. package/dist/cli/direct-run.js +2 -26
  41. package/dist/cli/direct-run.js.map +1 -1
  42. package/dist/cli/run.d.ts +20 -1
  43. package/dist/cli/run.d.ts.map +1 -1
  44. package/dist/cli/run.js +77 -15
  45. package/dist/cli/run.js.map +1 -1
  46. package/dist/cli.d.ts.map +1 -1
  47. package/dist/cli.js +82 -12
  48. package/dist/cli.js.map +1 -1
  49. package/dist/cloud-deploy.d.ts +70 -0
  50. package/dist/cloud-deploy.d.ts.map +1 -0
  51. package/dist/cloud-deploy.js +181 -0
  52. package/dist/cloud-deploy.js.map +1 -0
  53. package/dist/cloud-http.d.ts +37 -2
  54. package/dist/cloud-http.d.ts.map +1 -1
  55. package/dist/cloud-http.js +98 -8
  56. package/dist/cloud-http.js.map +1 -1
  57. package/dist/cloud-run.d.ts +23 -0
  58. package/dist/cloud-run.d.ts.map +1 -1
  59. package/dist/cloud-run.js +30 -1
  60. package/dist/cloud-run.js.map +1 -1
  61. package/dist/cloud-sync.d.ts +66 -0
  62. package/dist/cloud-sync.d.ts.map +1 -0
  63. package/dist/cloud-sync.js +287 -0
  64. package/dist/cloud-sync.js.map +1 -0
  65. package/dist/failure-kinds.d.ts +8 -1
  66. package/dist/failure-kinds.d.ts.map +1 -1
  67. package/dist/failure-kinds.js +8 -0
  68. package/dist/failure-kinds.js.map +1 -1
  69. package/dist/index.d.ts +2 -0
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +2 -0
  72. package/dist/index.js.map +1 -1
  73. package/dist/provider-trigger-contract.d.ts +27 -0
  74. package/dist/provider-trigger-contract.d.ts.map +1 -0
  75. package/dist/provider-trigger-contract.js +0 -0
  76. package/dist/provider-trigger-contract.js.map +1 -0
  77. package/package.json +2 -2
  78. package/src/agent-artifacts.ts +76 -0
  79. package/src/authored-flow-executor.ts +77 -15
  80. package/src/authored-node-runner.ts +11 -4
  81. package/src/authored-root.ts +2 -2
  82. package/src/authored-step-output.ts +6 -1
  83. package/src/authored-worker-step.ts +19 -1
  84. package/src/cli/check-triggers.ts +14 -5
  85. package/src/cli/check.ts +6 -1
  86. package/src/cli/cloud-deploy.ts +157 -0
  87. package/src/cli/cloud-run.ts +37 -6
  88. package/src/cli/cloud-sync.ts +37 -0
  89. package/src/cli/direct-run.ts +2 -25
  90. package/src/cli/run.ts +86 -16
  91. package/src/cli.ts +75 -12
  92. package/src/cloud-deploy.ts +236 -0
  93. package/src/cloud-http.ts +129 -9
  94. package/src/cloud-run.ts +47 -1
  95. package/src/cloud-sync.ts +315 -0
  96. package/src/failure-kinds.ts +8 -0
  97. package/src/index.ts +8 -0
  98. package/src/provider-trigger-contract.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-http.js","sourceRoot":"","sources":["../src/cloud-http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud-http.js","sourceRoot":"","sources":["../src/cloud-http.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,23 @@ export interface RunInCloudOptions extends CloudConnectionOptions {
11
11
  workspaceId?: string;
12
12
  /** Exact JSON input. Required at runtime for authored .flow.ts; refused for declarative source. */
13
13
  input?: JsonValue;
14
+ /**
15
+ * Upload this working tree before submission so the hosted run executes
16
+ * inside it (v1's `--sync-code`). Cloud-API storage only; see cloud-sync.ts.
17
+ * The submitted flow still travels as source in the request body, so it
18
+ * must remain self-contained: sibling imports inside the tree are not
19
+ * resolved by the hosted runner.
20
+ */
21
+ syncCode?: {
22
+ root: string;
23
+ };
24
+ /**
25
+ * Called immediately before the one non-idempotent request, the run
26
+ * submission. Everything before it (prepare, pack, upload) is safe to
27
+ * retry, so a caller classifying an interruption can tell "nothing was
28
+ * admitted" from "admission unknown".
29
+ */
30
+ onSubmit?: () => void;
14
31
  }
15
32
  export interface CloudRunReceipt {
16
33
  runId: string;
@@ -19,6 +36,12 @@ export interface CloudRunReceipt {
19
36
  specHash: string;
20
37
  /** Authenticated run API resource; this is not a public sharing URL. */
21
38
  apiUrl: string;
39
+ /** Present when a working tree was synced: what was uploaded, by count and size. */
40
+ synced?: {
41
+ files: number;
42
+ bytes: number;
43
+ skippedLinks: string[];
44
+ };
22
45
  }
23
46
  export interface CloudAuthoredAuthority {
24
47
  readonly schemaVersion: 1;
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-run.d.ts","sourceRoot":"","sources":["../src/cloud-run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAOzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAoB,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,iBAAiB,CAAC;AAEzB,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAC1D,MAAM,WAAW,iBAAkB,SAAQ,sBAAsB;IAC/D,0FAA0F;IAC1F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mGAAmG;IACnG,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AACD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B,qGAAqG;IACrG,QAAQ,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;CAC1C;AACD,MAAM,MAAM,aAAa,GACrB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAAA;CAAE,GAC9D;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAAC,gBAAgB,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAE3G;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,eAAe,EACrB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,eAAe,CAAC,CAsF1B;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,aAAa,CAAC,CAoBxB;AAED,4FAA4F;AAC5F,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,sBAAsB,GAAG;IAAE,cAAc,CAAC,EAAE,MAAM,CAAA;CAAO,GACjE,OAAO,CAAC,aAAa,CAAC,CAuBxB"}
1
+ {"version":3,"file":"cloud-run.d.ts","sourceRoot":"","sources":["../src/cloud-run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAOzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAoB,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,iBAAiB,CAAC;AAGzB,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAC1D,MAAM,WAAW,iBAAkB,SAAQ,sBAAsB;IAC/D,0FAA0F;IAC1F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mGAAmG;IACnG,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AACD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;IAC9B,qGAAqG;IACrG,QAAQ,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IACf,oFAAoF;IACpF,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CACnE;AACD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;CAC1C;AACD,MAAM,MAAM,aAAa,GACrB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAAA;CAAE,GAC9D;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAAC,gBAAgB,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAE3G;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,eAAe,EACrB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,eAAe,CAAC,CAkH1B;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,aAAa,CAAC,CAoBxB;AAED,4FAA4F;AAC5F,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,sBAAsB,GAAG;IAAE,cAAc,CAAC,EAAE,MAAM,CAAA;CAAO,GACjE,OAAO,CAAC,aAAa,CAAC,CAuBxB"}
package/dist/cloud-run.js CHANGED
@@ -8,6 +8,7 @@ import { CompileError, compileSpec, kernelToAuthoring, toKernelSpec } from './co
8
8
  import { snapshotJsonValue } from './json-value.js';
9
9
  import { loadAuthoredFlow } from './authored-flow-loader.js';
10
10
  import { CloudFlowError, cloudConnection, cloudRequest, cloudRunId, isCloudRecord, } from './cloud-http.js';
11
+ import { packWorkingTree, prepareCloudSync, uploadCloudCode } from './cloud-sync.js';
11
12
  /**
12
13
  * Submit a declarative flow to Cloud's pinned v2 runtime. Compilation only
13
14
  * happens here; Cloud owns provisioning and the Rust engine owns execution.
@@ -91,6 +92,27 @@ export async function runInCloud(flow, options = {}) {
91
92
  authority: authored.authority,
92
93
  input: authoredInput,
93
94
  })).digest('hex');
95
+ // Sync before submission: `prepare` reserves the run ID and the upload lands
96
+ // under it, so the run request below names code Cloud already holds. A
97
+ // refused backend or failed upload therefore never leaves a launched run
98
+ // pointing at a tree that is not there.
99
+ let synced;
100
+ if (options.syncCode !== undefined) {
101
+ const prepared = await prepareCloudSync(options);
102
+ options.signal?.throwIfAborted();
103
+ const packed = await packWorkingTree(options.syncCode.root);
104
+ try {
105
+ options.signal?.throwIfAborted();
106
+ await uploadCloudCode(prepared, packed, options);
107
+ }
108
+ finally {
109
+ packed.dispose();
110
+ }
111
+ synced = { runId: prepared.runId, codeKey: prepared.codeKey, files: packed.files.length, bytes: packed.bytes,
112
+ skippedLinks: packed.skippedLinks };
113
+ }
114
+ options.signal?.throwIfAborted();
115
+ options.onSubmit?.();
94
116
  const result = await cloudRequest('/api/v1/workflows/run', options, {
95
117
  // JSON is a YAML subset. Sending canonical data preserves the exact spec
96
118
  // while using the server's existing YAML-to-config admission path.
@@ -100,12 +122,19 @@ export async function runInCloud(flow, options = {}) {
100
122
  ...(authored === undefined ? {} : { authoredAuthority: authored.authority }),
101
123
  ...(authored === undefined ? {} : { inputs: authoredInput }),
102
124
  ...(options.workspaceId === undefined ? {} : { workspaceId: options.workspaceId }),
125
+ ...(synced === undefined ? {} : { runId: synced.runId, s3CodeKey: synced.codeKey }),
103
126
  });
104
127
  if (!isCloudRecord(result) || (result.status !== 'pending' && result.status !== 'running')) {
105
128
  throw new CloudFlowError('invalid_response', 'Cloud did not return an accepted run.');
106
129
  }
107
130
  const runId = cloudRunId(result.runId);
108
- return { runId, status: result.status, specHash: hash, apiUrl: `${baseUrl}/api/v1/workflows/runs/${runId}` };
131
+ if (synced !== undefined && runId !== synced.runId) {
132
+ throw new CloudFlowError('invalid_response', `Cloud accepted run ${runId} but the synced code was uploaded for ${synced.runId}.`);
133
+ }
134
+ return {
135
+ runId, status: result.status, specHash: hash, apiUrl: `${baseUrl}/api/v1/workflows/runs/${runId}`,
136
+ ...(synced === undefined ? {} : { synced: { files: synced.files, bytes: synced.bytes, skippedLinks: synced.skippedLinks } }),
137
+ };
109
138
  }
110
139
  export async function getCloudFlowRun(runId, options = {}) {
111
140
  cloudRunId(runId);
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-run.js","sourceRoot":"","sources":["../src/cloud-run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud-run.js","sourceRoot":"","sources":["../src/cloud-run.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ import { type CloudConnectionOptions } from './cloud-http.js';
2
+ /**
3
+ * Code sync for hosted v2 runs, Cloud-API transport only.
4
+ *
5
+ * v1's `--sync-code` had two transports: an S3 client with STS credentials and
6
+ * the Cloud API's own storage route. v2 runs on Cloudflare, so this module
7
+ * speaks only the second: `prepare` must answer with a `cloud-api` storage
8
+ * backend, the tarball is `PUT` to `/workflows/runs/<id>/storage/<key>`, and
9
+ * the sandbox's post-run patch is read from `/workflows/runs/<id>/patch`. A
10
+ * `prepare` that hands back anything else is refused before any upload — the
11
+ * SDK never carries an AWS dependency and never sends code to a bucket it did
12
+ * not get through the Cloud API.
13
+ */
14
+ /** Uncompressed bytes. Matches the sandbox's extraction budget with headroom. */
15
+ export declare const MAX_SYNC_BYTES: number;
16
+ export interface PreparedCloudSync {
17
+ runId: string;
18
+ codeKey: string;
19
+ /** Run-scoped upload credential from `prepare`; falls back to the session token. */
20
+ uploadToken?: string;
21
+ }
22
+ /** `POST /api/v1/workflows/prepare`, refusing every non-Cloud-API storage backend. */
23
+ export declare function prepareCloudSync(options: CloudConnectionOptions): Promise<PreparedCloudSync>;
24
+ export interface PackedTree {
25
+ /** The gzip'd ustar, spooled to a temporary file; `dispose()` removes it. */
26
+ archivePath: string;
27
+ /** Archive members, `root`-relative POSIX paths, sorted. */
28
+ files: string[];
29
+ /** Uncompressed byte total across regular files. */
30
+ bytes: number;
31
+ /** Symlinks left out because their target resolves outside `root`. */
32
+ skippedLinks: string[];
33
+ dispose(): void;
34
+ }
35
+ /**
36
+ * gzip'd ustar of the working tree at `root`, streamed to a temporary file so
37
+ * the peak footprint is one file plus the compressor's window, never the
38
+ * whole tree. Inside a Git checkout the member list is `git ls-files --cached
39
+ * --others --exclude-standard`, so `.gitignore` governs and untracked-but-
40
+ * not-ignored files ride along, as they do in v1. Outside Git, every regular
41
+ * file and in-tree symlink except `.git`/`node_modules`. A Git failure other
42
+ * than "not a repository" is refused rather than silently widened to the walk:
43
+ * an ignored `.env` must never reach Cloud because `git` was missing or the
44
+ * index was locked. Executable bits survive; symlinks whose target leaves the
45
+ * tree are dropped and reported, since on the host they would point at
46
+ * whatever happens to live at that path. Ordering and mtimes are
47
+ * deterministic, so the same tree packs to the same bytes.
48
+ */
49
+ export declare function packWorkingTree(root: string): Promise<PackedTree>;
50
+ /** `PUT` the archive through the Cloud API; the run-scoped credential wins when present. */
51
+ export declare function uploadCloudCode(prepared: PreparedCloudSync, packed: PackedTree, options: CloudConnectionOptions): Promise<void>;
52
+ export interface CloudPatch {
53
+ patch: string;
54
+ hasChanges: boolean;
55
+ }
56
+ /** The sandbox's post-run diff. Multi-path runs carry several patches and are refused here. */
57
+ export declare function downloadCloudPatch(runId: string, options: CloudConnectionOptions): Promise<CloudPatch>;
58
+ /** Every path a unified diff touches, deletions included, in order of first appearance. */
59
+ export declare function patchedPaths(patch: string): string[];
60
+ /**
61
+ * `git apply --check` then `git apply`; a conflict leaves the tree untouched.
62
+ * The patch lands in the working tree uncommitted, so what the run changed is
63
+ * reviewed with `git diff` before anything is kept — the same contract as v1.
64
+ */
65
+ export declare function applyCloudPatch(root: string, patch: string): void;
66
+ //# sourceMappingURL=cloud-sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloud-sync.d.ts","sourceRoot":"","sources":["../src/cloud-sync.ts"],"names":[],"mappings":"AAQA,OAAO,EACgE,KAAK,sBAAsB,EACjG,MAAM,iBAAiB,CAAC;AAEzB;;;;;;;;;;;GAWG;AAEH,iFAAiF;AACjF,eAAO,MAAM,cAAc,QAAoB,CAAC;AAIhD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,sFAAsF;AACtF,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAqBlG;AAED,MAAM,WAAW,UAAU;IACzB,6EAA6E;IAC7E,WAAW,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CA6CvE;AA0HD,4FAA4F;AAC5F,wBAAsB,eAAe,CACnC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,sBAAsB,GAC/E,OAAO,CAAC,IAAI,CAAC,CAUf;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,+FAA+F;AAC/F,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC,CAY5G;AAED,2FAA2F;AAC3F,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAMpD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAWjE"}
@@ -0,0 +1,287 @@
1
+ import { spawnSync } from 'node:child_process';
2
+ import { createReadStream, createWriteStream, existsSync, lstatSync, mkdtempSync, readdirSync, readlinkSync, rmSync } from 'node:fs';
3
+ import { readFile } from 'node:fs/promises';
4
+ import { tmpdir } from 'node:os';
5
+ import { dirname, isAbsolute, join, relative, resolve, sep } from 'node:path';
6
+ import { Readable } from 'node:stream';
7
+ import { pipeline } from 'node:stream/promises';
8
+ import { createGzip } from 'node:zlib';
9
+ import { CloudFlowError, cloudFetch, cloudRequest, cloudRunId, isCloudRecord, } from './cloud-http.js';
10
+ /**
11
+ * Code sync for hosted v2 runs, Cloud-API transport only.
12
+ *
13
+ * v1's `--sync-code` had two transports: an S3 client with STS credentials and
14
+ * the Cloud API's own storage route. v2 runs on Cloudflare, so this module
15
+ * speaks only the second: `prepare` must answer with a `cloud-api` storage
16
+ * backend, the tarball is `PUT` to `/workflows/runs/<id>/storage/<key>`, and
17
+ * the sandbox's post-run patch is read from `/workflows/runs/<id>/patch`. A
18
+ * `prepare` that hands back anything else is refused before any upload — the
19
+ * SDK never carries an AWS dependency and never sends code to a bucket it did
20
+ * not get through the Cloud API.
21
+ */
22
+ /** Uncompressed bytes. Matches the sandbox's extraction budget with headroom. */
23
+ export const MAX_SYNC_BYTES = 256 * 1024 * 1024;
24
+ const ALWAYS_SKIPPED = new Set(['.git', 'node_modules']);
25
+ const CODE_KEY = /^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/u;
26
+ /** `POST /api/v1/workflows/prepare`, refusing every non-Cloud-API storage backend. */
27
+ export async function prepareCloudSync(options) {
28
+ const receipt = await cloudFetch('/api/v1/workflows/prepare', options, { method: 'POST' });
29
+ if (!isCloudRecord(receipt))
30
+ throw new CloudFlowError('invalid_response', 'Cloud prepare returned a non-object.');
31
+ const storage = isCloudRecord(receipt.workflowStorage) ? receipt.workflowStorage : undefined;
32
+ const credentials = isCloudRecord(receipt.s3Credentials) ? receipt.s3Credentials : undefined;
33
+ const backend = storage?.backend ?? credentials?.backend;
34
+ if (backend !== 'cloud-api') {
35
+ throw new CloudFlowError('unsupported_storage_backend', 'Cloud offered a workflow storage backend other than the Cloud API (R2). '
36
+ + 'flows v2 syncs code only through the Cloud API; it never uploads to AWS directly.');
37
+ }
38
+ const codeKey = typeof receipt.s3CodeKey === 'string' ? receipt.s3CodeKey : '';
39
+ if (!CODE_KEY.test(codeKey))
40
+ throw new CloudFlowError('invalid_response', 'Cloud prepare returned an unusable code key.');
41
+ const uploadToken = credentials?.cloudApiAccessToken;
42
+ if (uploadToken !== undefined && typeof uploadToken !== 'string') {
43
+ throw new CloudFlowError('invalid_response', 'Cloud prepare returned an unusable storage credential.');
44
+ }
45
+ return {
46
+ runId: cloudRunId(receipt.runId), codeKey,
47
+ ...(uploadToken === undefined ? {} : { uploadToken }),
48
+ };
49
+ }
50
+ /**
51
+ * gzip'd ustar of the working tree at `root`, streamed to a temporary file so
52
+ * the peak footprint is one file plus the compressor's window, never the
53
+ * whole tree. Inside a Git checkout the member list is `git ls-files --cached
54
+ * --others --exclude-standard`, so `.gitignore` governs and untracked-but-
55
+ * not-ignored files ride along, as they do in v1. Outside Git, every regular
56
+ * file and in-tree symlink except `.git`/`node_modules`. A Git failure other
57
+ * than "not a repository" is refused rather than silently widened to the walk:
58
+ * an ignored `.env` must never reach Cloud because `git` was missing or the
59
+ * index was locked. Executable bits survive; symlinks whose target leaves the
60
+ * tree are dropped and reported, since on the host they would point at
61
+ * whatever happens to live at that path. Ordering and mtimes are
62
+ * deterministic, so the same tree packs to the same bytes.
63
+ */
64
+ export async function packWorkingTree(root) {
65
+ const absoluteRoot = resolve(root);
66
+ const files = listTreeFiles(absoluteRoot);
67
+ const spool = mkdtempSync(join(tmpdir(), 'flows-sync-'));
68
+ const archivePath = join(spool, 'code.tar.gz');
69
+ const dispose = () => rmSync(spool, { recursive: true, force: true });
70
+ const members = [];
71
+ const skippedLinks = [];
72
+ let bytes = 0;
73
+ async function* entries() {
74
+ for (const path of files) {
75
+ const absolute = join(absoluteRoot, ...path.split('/'));
76
+ const stat = lstatSync(absolute);
77
+ if (stat.isSymbolicLink()) {
78
+ const target = readlinkSync(absolute);
79
+ const relativeTarget = relative(absoluteRoot, resolve(dirname(absolute), target));
80
+ if (isAbsolute(target) || relativeTarget === '..' || relativeTarget.startsWith(`..${sep}`)) {
81
+ skippedLinks.push(path);
82
+ continue;
83
+ }
84
+ members.push(path);
85
+ yield ustarHeader(path, 0, '2', 0o777, target);
86
+ continue;
87
+ }
88
+ if (!stat.isFile())
89
+ continue;
90
+ bytes += stat.size;
91
+ if (bytes > MAX_SYNC_BYTES) {
92
+ throw new CloudFlowError('sync_too_large', `The working tree exceeds the ${MAX_SYNC_BYTES}-byte code sync limit; narrow it with .gitignore.`);
93
+ }
94
+ members.push(path);
95
+ yield ustarHeader(path, stat.size, '0', stat.mode & 0o111 ? 0o755 : 0o644);
96
+ yield createReadStream(absolute);
97
+ const padding = (512 - (stat.size % 512)) % 512;
98
+ if (padding)
99
+ yield Buffer.alloc(padding);
100
+ }
101
+ yield Buffer.alloc(1024);
102
+ }
103
+ try {
104
+ await pipeline(Readable.from(flatten(entries())), createGzip({ level: 6 }), createWriteStream(archivePath));
105
+ }
106
+ catch (error) {
107
+ dispose();
108
+ throw error;
109
+ }
110
+ return { archivePath, files: members, bytes, skippedLinks, dispose };
111
+ }
112
+ /** Yield file streams chunk by chunk so `Readable.from` never buffers a whole file. */
113
+ async function* flatten(source) {
114
+ for await (const part of source) {
115
+ if (Buffer.isBuffer(part)) {
116
+ yield part;
117
+ continue;
118
+ }
119
+ for await (const chunk of part)
120
+ yield chunk;
121
+ }
122
+ }
123
+ /** The nearest `.git` entry at `root` or any ancestor — the checkout a .gitignore would belong to. */
124
+ function nearestGitEntry(root) {
125
+ let directory = root;
126
+ while (true) {
127
+ if (existsSync(join(directory, '.git')))
128
+ return join(directory, '.git');
129
+ const parent = dirname(directory);
130
+ if (parent === directory)
131
+ return undefined;
132
+ directory = parent;
133
+ }
134
+ }
135
+ function listTreeFiles(root) {
136
+ const inside = spawnSync('git', ['-C', root, 'rev-parse', '--is-inside-work-tree'], { encoding: 'utf8' });
137
+ if (inside.error !== undefined) {
138
+ // Without git there is no way to honour a .gitignore, so a tree that has
139
+ // one anywhere above it cannot be described honestly; a tree with none is
140
+ // a plain directory and can be walked.
141
+ const entry = nearestGitEntry(root);
142
+ if (entry !== undefined) {
143
+ throw new CloudFlowError('sync_unsupported', `git is not available (${summarize(inside.error.message)}) but ${entry} exists; `
144
+ + 'refusing to upload a checkout without its .gitignore.');
145
+ }
146
+ }
147
+ const notARepository = inside.error !== undefined
148
+ || (inside.status !== 0 && /not a git repository/iu.test(inside.stderr));
149
+ let candidates;
150
+ if (notARepository) {
151
+ // A `.git` that git itself cannot read — here or in a parent — is a broken
152
+ // checkout, not a plain directory: its .gitignore was meant to apply, so
153
+ // walking would upload exactly what it excluded.
154
+ const entry = nearestGitEntry(root);
155
+ if (entry !== undefined) {
156
+ throw new CloudFlowError('sync_unsupported', `${entry} exists but git cannot read it (${summarize(inside.stderr ?? inside.error?.message)}); `
157
+ + 'refusing to upload a checkout without its .gitignore.');
158
+ }
159
+ candidates = [];
160
+ walk(root, root, candidates);
161
+ }
162
+ else {
163
+ if (inside.status !== 0 || inside.stdout.trim() !== 'true') {
164
+ throw new CloudFlowError('sync_unsupported', `git could not describe ${root} (${summarize(inside.stderr)}); refusing to guess which files to upload.`);
165
+ }
166
+ const git = spawnSync('git', ['-C', root, 'ls-files', '-z', '--cached', '--others', '--exclude-standard'], { encoding: 'utf8', maxBuffer: 256 * 1024 * 1024 });
167
+ if (git.status !== 0) {
168
+ throw new CloudFlowError('sync_unsupported', `git ls-files failed in ${root} (${summarize(git.stderr)}); refusing to upload without .gitignore.`);
169
+ }
170
+ candidates = git.stdout.split('\0').filter(Boolean);
171
+ }
172
+ const files = new Set();
173
+ for (const candidate of candidates) {
174
+ const path = candidate.split(sep).join('/');
175
+ const segments = path.split('/');
176
+ if (segments.some(segment => ALWAYS_SKIPPED.has(segment) || segment === '..' || segment === ''))
177
+ continue;
178
+ let stat;
179
+ try {
180
+ stat = lstatSync(join(root, ...segments));
181
+ }
182
+ catch {
183
+ continue;
184
+ }
185
+ if (stat.isFile() || stat.isSymbolicLink())
186
+ files.add(path);
187
+ }
188
+ return [...files].sort();
189
+ }
190
+ function summarize(stderr) {
191
+ const line = (stderr ?? '').split('\n').map(l => l.trim()).find(Boolean) ?? 'no diagnostic';
192
+ return line.length > 160 ? `${line.slice(0, 157)}...` : line;
193
+ }
194
+ function walk(root, current, out) {
195
+ for (const entry of readdirSync(current, { withFileTypes: true })) {
196
+ if (ALWAYS_SKIPPED.has(entry.name))
197
+ continue;
198
+ const path = join(current, entry.name);
199
+ if (entry.isDirectory())
200
+ walk(root, path, out);
201
+ else if (entry.isFile() || entry.isSymbolicLink())
202
+ out.push(relative(root, path));
203
+ }
204
+ }
205
+ /** POSIX ustar header. Names beyond the 100+155 split are refused, not truncated. */
206
+ function ustarHeader(path, size, type, mode, link = '') {
207
+ let name = path;
208
+ let prefix = '';
209
+ if (Buffer.byteLength(name) > 100) {
210
+ const cut = name.lastIndexOf('/', 154);
211
+ if (cut <= 0 || Buffer.byteLength(name.slice(cut + 1)) > 100 || Buffer.byteLength(name.slice(0, cut)) > 155) {
212
+ throw new CloudFlowError('sync_unsupported', `Path "${path}" is too long for the code sync archive.`);
213
+ }
214
+ prefix = name.slice(0, cut);
215
+ name = name.slice(cut + 1);
216
+ }
217
+ if (Buffer.byteLength(link) > 100) {
218
+ throw new CloudFlowError('sync_unsupported', `Symlink target of "${path}" is too long for the code sync archive.`);
219
+ }
220
+ const header = Buffer.alloc(512);
221
+ header.write(name, 0, 100);
222
+ header.write(mode.toString(8).padStart(7, '0'), 100, 8);
223
+ header.write('0000000', 108, 8);
224
+ header.write('0000000', 116, 8);
225
+ header.write(size.toString(8).padStart(11, '0'), 124, 12);
226
+ header.write('00000000000', 136, 12);
227
+ header.write(' ', 148, 8);
228
+ header.write(type, 156, 1);
229
+ header.write(link, 157, 100);
230
+ header.write('ustar\0', 257, 6);
231
+ header.write('00', 263, 2);
232
+ header.write(prefix, 345, 155);
233
+ let checksum = 0;
234
+ for (const byte of header)
235
+ checksum += byte;
236
+ header.write(checksum.toString(8).padStart(6, '0') + '\0 ', 148, 8);
237
+ return header;
238
+ }
239
+ /** `PUT` the archive through the Cloud API; the run-scoped credential wins when present. */
240
+ export async function uploadCloudCode(prepared, packed, options) {
241
+ // The request needs a sized body, so the compressed archive is read back
242
+ // once; that is the one copy that has to exist, and it is the small one.
243
+ const tarball = await readFile(packed.archivePath);
244
+ await cloudFetch(`/api/v1/workflows/runs/${encodeURIComponent(prepared.runId)}/storage/${encodeURIComponent(prepared.codeKey)}`, { ...options, requestTimeoutMs: options.requestTimeoutMs ?? 300_000 }, { method: 'PUT', body: tarball, contentType: 'application/gzip',
245
+ ...(prepared.uploadToken === undefined ? {} : { bearerToken: prepared.uploadToken }) });
246
+ }
247
+ /** The sandbox's post-run diff. Multi-path runs carry several patches and are refused here. */
248
+ export async function downloadCloudPatch(runId, options) {
249
+ const payload = await cloudRequest(`/api/v1/workflows/runs/${encodeURIComponent(cloudRunId(runId))}/patch`, options);
250
+ if (!isCloudRecord(payload))
251
+ throw new CloudFlowError('invalid_response', 'Cloud patch response was not an object.');
252
+ if (isCloudRecord(payload.patches)) {
253
+ const names = Object.keys(payload.patches);
254
+ throw new CloudFlowError('sync_unsupported', `Run ${runId} produced ${names.length} path-scoped patches (${names.join(', ')}); flows sync applies single-tree runs only.`);
255
+ }
256
+ if (typeof payload.patch !== 'string' || typeof payload.hasChanges !== 'boolean') {
257
+ throw new CloudFlowError('invalid_response', 'Cloud patch response is missing patch or hasChanges.');
258
+ }
259
+ return { patch: payload.patch, hasChanges: payload.hasChanges };
260
+ }
261
+ /** Every path a unified diff touches, deletions included, in order of first appearance. */
262
+ export function patchedPaths(patch) {
263
+ const paths = [];
264
+ for (const match of patch.matchAll(/^diff --git a\/(.+?) b\/(.+)$/gmu)) {
265
+ for (const path of [match[1], match[2]])
266
+ if (!paths.includes(path))
267
+ paths.push(path);
268
+ }
269
+ return paths;
270
+ }
271
+ /**
272
+ * `git apply --check` then `git apply`; a conflict leaves the tree untouched.
273
+ * The patch lands in the working tree uncommitted, so what the run changed is
274
+ * reviewed with `git diff` before anything is kept — the same contract as v1.
275
+ */
276
+ export function applyCloudPatch(root, patch) {
277
+ const args = ['-C', resolve(root), 'apply', '--whitespace=nowarn'];
278
+ const check = spawnSync('git', [...args, '--check'], { input: patch, encoding: 'utf8' });
279
+ if (check.status !== 0) {
280
+ throw new CloudFlowError('patch_conflict', `The patch does not apply cleanly to ${resolve(root)}:\n${check.stderr.trim()}`);
281
+ }
282
+ const apply = spawnSync('git', args, { input: patch, encoding: 'utf8' });
283
+ if (apply.status !== 0) {
284
+ throw new CloudFlowError('patch_conflict', `git apply failed:\n${apply.stderr.trim()}`);
285
+ }
286
+ }
287
+ //# sourceMappingURL=cloud-sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloud-sync.js","sourceRoot":"","sources":["../src/cloud-sync.ts"],"names":[],"mappings":"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"}
@@ -30,8 +30,15 @@ export declare const PREFLIGHT_WARNING_KINDS: readonly ["unprovable_effects", "c
30
30
  * serving and this invocation was told not to start one" (`--no-spawn`), while
31
31
  * a spawn that was attempted and did not produce a serving daemon names which
32
32
  * step failed. All of them are still exit 2 — refused before a journal write.
33
+ *
34
+ * Despite the name, this list is the run-outcome diagnostic vocabulary rather
35
+ * than failures alone. `run_parked` has always sat here and exits 3 under
36
+ * severity `parked`; `run_declined` joins it, exiting 0 under severity
37
+ * `declined`. The mismatch between the constant's name and its non-failure
38
+ * members is pre-existing — renaming it is a separate change, and neither this
39
+ * list nor `RunDiagnostic` is exported from the package index.
33
40
  */
34
- export declare const RUN_FAILURE_KINDS: readonly ["bucket_unconfigured", "bucket_unreachable", "bundle_signature_invalid", "bundle_unsupported", "human_influenced_run", "reuse_spec_mismatch", "reuse_run_not_found", "reuse_journal_read_failed", "daemon_unreachable", "daemon_protocol_mismatch", "daemon_start_failed", "daemon_start_timeout", "relayflowd_not_found", "protocol_error", "run_parked", "run_unavailable"];
41
+ export declare const RUN_FAILURE_KINDS: readonly ["bucket_unconfigured", "bucket_unreachable", "bundle_signature_invalid", "bundle_unsupported", "human_influenced_run", "reuse_spec_mismatch", "reuse_run_not_found", "reuse_journal_read_failed", "daemon_unreachable", "daemon_protocol_mismatch", "daemon_start_failed", "daemon_start_timeout", "relayflowd_not_found", "protocol_error", "run_parked", "run_declined", "run_unavailable"];
35
42
  /**
36
43
  * Non-refusing outcomes of the attach step. `connection_file_stale` is
37
44
  * DAEMON-LIFECYCLE.md §2 row 2: the socket answered while `connection.json`
@@ -1 +1 @@
1
- {"version":3,"file":"failure-kinds.d.ts","sourceRoot":"","sources":["../src/failure-kinds.ts"],"names":[],"mappings":"AA+BA,qEAAqE;AACrE,eAAO,MAAM,uBAAuB,+0BAG1B,CAAC;AAEX,+EAA+E;AAC/E,eAAO,MAAM,yBAAyB,4IAQ5B,CAAC;AAEX,eAAO,MAAM,mBAAmB,g8BAGtB,CAAC;AAEX;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,uBAAuB,iHAM1B,CAAC;AAEX;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,yXAiBpB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,oCAEpB,CAAC;AAEX,8EAA8E;AAC9E,eAAO,MAAM,mBAAmB,oCAAqC,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC5E,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AACpE,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC5E,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAChE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhE;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAKD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,gBAAgB,CAE3E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,cAAc,CAEvE"}
1
+ {"version":3,"file":"failure-kinds.d.ts","sourceRoot":"","sources":["../src/failure-kinds.ts"],"names":[],"mappings":"AA+BA,qEAAqE;AACrE,eAAO,MAAM,uBAAuB,+0BAG1B,CAAC;AAEX,+EAA+E;AAC/E,eAAO,MAAM,yBAAyB,4IAQ5B,CAAC;AAEX,eAAO,MAAM,mBAAmB,g8BAGtB,CAAC;AAEX;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,uBAAuB,iHAM1B,CAAC;AAEX;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,iBAAiB,yYAkBpB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,oCAEpB,CAAC;AAEX,8EAA8E;AAC9E,eAAO,MAAM,mBAAmB,oCAAqC,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC5E,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AACpE,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC5E,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAChE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhE;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAKD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,gBAAgB,CAE3E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,cAAc,CAEvE"}
@@ -79,6 +79,13 @@ export const PREFLIGHT_WARNING_KINDS = [
79
79
  * serving and this invocation was told not to start one" (`--no-spawn`), while
80
80
  * a spawn that was attempted and did not produce a serving daemon names which
81
81
  * step failed. All of them are still exit 2 — refused before a journal write.
82
+ *
83
+ * Despite the name, this list is the run-outcome diagnostic vocabulary rather
84
+ * than failures alone. `run_parked` has always sat here and exits 3 under
85
+ * severity `parked`; `run_declined` joins it, exiting 0 under severity
86
+ * `declined`. The mismatch between the constant's name and its non-failure
87
+ * members is pre-existing — renaming it is a separate change, and neither this
88
+ * list nor `RunDiagnostic` is exported from the package index.
82
89
  */
83
90
  export const RUN_FAILURE_KINDS = [
84
91
  'bucket_unconfigured',
@@ -96,6 +103,7 @@ export const RUN_FAILURE_KINDS = [
96
103
  'relayflowd_not_found',
97
104
  'protocol_error',
98
105
  'run_parked',
106
+ 'run_declined',
99
107
  'run_unavailable',
100
108
  ];
101
109
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"failure-kinds.js","sourceRoot":"","sources":["../src/failure-kinds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,MAAM,yBAAyB,GAAG,CAAC,cAAc,CAAU,CAAC;AAE5D,yEAAyE;AACzE,MAAM,mCAAmC,GAAG;IAC1C,GAAG,wBAAwB;IAC3B,GAAG,oBAAoB;IACvB,gCAAgC;IAChC,6BAA6B;IAC7B,iCAAiC;IACjC,6BAA6B;IAC7B,uBAAuB;IACvB,uBAAuB;IACvB,iBAAiB;IACjB,uBAAuB;IACvB,aAAa;IACb,qBAAqB;IACrB,gBAAgB;IAChB,iBAAiB;IACjB,iBAAiB;IACjB,mBAAmB;IACnB,eAAe;IACf,oBAAoB;IACpB,aAAa;IACb,cAAc;IACd,sBAAsB;IACtB,eAAe;IACf,mBAAmB;CACX,CAAC;AAEX,qEAAqE;AACrE,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,GAAG,yBAAyB;IAC5B,GAAG,mCAAmC;CAC9B,CAAC;AAEX,+EAA+E;AAC/E,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,gBAAgB;IAChB,eAAe;IACf,eAAe;IACf,iBAAiB;IACjB,kBAAkB;IAClB,oBAAoB;IACpB,GAAG,yBAAyB;CACpB,CAAC;AAEX,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,GAAG,yBAAyB;IAC5B,GAAG,mCAAmC;CAC9B,CAAC;AAEX;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,oBAAoB;IACpB,oBAAoB;IACpB,oBAAoB;IACpB,cAAc;IACd,kBAAkB;CACV,CAAC;AAEX;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,qBAAqB;IACrB,oBAAoB;IACpB,0BAA0B;IAC1B,oBAAoB;IACpB,sBAAsB;IACtB,qBAAqB;IACrB,qBAAqB;IACrB,2BAA2B;IAC3B,oBAAoB;IACpB,0BAA0B;IAC1B,qBAAqB;IACrB,sBAAsB;IACtB,sBAAsB;IACtB,gBAAgB;IAChB,YAAY;IACZ,iBAAiB;CACT,CAAC;AAEX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,uBAAuB;CACf,CAAC;AAEX,8EAA8E;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,uBAAuB,CAAU,CAAC;AAqCtE,MAAM,sBAAsB,GAAwB,IAAI,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACjF,MAAM,oBAAoB,GAAwB,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;AAE7E,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,OAAO,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,OAAO,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"failure-kinds.js","sourceRoot":"","sources":["../src/failure-kinds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,MAAM,yBAAyB,GAAG,CAAC,cAAc,CAAU,CAAC;AAE5D,yEAAyE;AACzE,MAAM,mCAAmC,GAAG;IAC1C,GAAG,wBAAwB;IAC3B,GAAG,oBAAoB;IACvB,gCAAgC;IAChC,6BAA6B;IAC7B,iCAAiC;IACjC,6BAA6B;IAC7B,uBAAuB;IACvB,uBAAuB;IACvB,iBAAiB;IACjB,uBAAuB;IACvB,aAAa;IACb,qBAAqB;IACrB,gBAAgB;IAChB,iBAAiB;IACjB,iBAAiB;IACjB,mBAAmB;IACnB,eAAe;IACf,oBAAoB;IACpB,aAAa;IACb,cAAc;IACd,sBAAsB;IACtB,eAAe;IACf,mBAAmB;CACX,CAAC;AAEX,qEAAqE;AACrE,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,GAAG,yBAAyB;IAC5B,GAAG,mCAAmC;CAC9B,CAAC;AAEX,+EAA+E;AAC/E,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,gBAAgB;IAChB,eAAe;IACf,eAAe;IACf,iBAAiB;IACjB,kBAAkB;IAClB,oBAAoB;IACpB,GAAG,yBAAyB;CACpB,CAAC;AAEX,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,GAAG,yBAAyB;IAC5B,GAAG,mCAAmC;CAC9B,CAAC;AAEX;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,oBAAoB;IACpB,oBAAoB;IACpB,oBAAoB;IACpB,cAAc;IACd,kBAAkB;CACV,CAAC;AAEX;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,qBAAqB;IACrB,oBAAoB;IACpB,0BAA0B;IAC1B,oBAAoB;IACpB,sBAAsB;IACtB,qBAAqB;IACrB,qBAAqB;IACrB,2BAA2B;IAC3B,oBAAoB;IACpB,0BAA0B;IAC1B,qBAAqB;IACrB,sBAAsB;IACtB,sBAAsB;IACtB,gBAAgB;IAChB,YAAY;IACZ,cAAc;IACd,iBAAiB;CACT,CAAC;AAEX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,uBAAuB;CACf,CAAC;AAEX,8EAA8E;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,uBAAuB,CAAU,CAAC;AAqCtE,MAAM,sBAAsB,GAAwB,IAAI,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACjF,MAAM,oBAAoB,GAAwB,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;AAE7E,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,OAAO,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,OAAO,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACzC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -5,6 +5,8 @@ export type { StepSpend } from './protocol.js';
5
5
  export { SPEC_SCHEMA_VERSION } from './spec.js';
6
6
  export { CloudFlowError, type CloudConnectionOptions } from './cloud-http.js';
7
7
  export { runInCloud, getCloudFlowRun, waitForCloudFlowRun, type CloudFlowSource, type RunInCloudOptions, type CloudRunReceipt, type CloudRunState, } from './cloud-run.js';
8
+ export { downloadCloudPatch, applyCloudPatch, packWorkingTree, patchedPaths, MAX_SYNC_BYTES, type CloudPatch, type PackedTree, } from './cloud-sync.js';
9
+ export { deployToCloud, listCloudDeployments, undeployFromCloud, parseRepository, parseTriggerSource, FLOW_TRIGGER_PROVIDERS, type DeployToCloudInput, type CloudDeployment, type CloudDeploymentSummary, type FlowTriggerSource, type FlowTriggerProvider, } from './cloud-deploy.js';
8
10
  export { canonicalize, specHash } from './canonical.js';
9
11
  export { compileAndHash, compileSpec, compileYaml, compileYamlToCanonicalJson, kernelToAuthoring, toKernelSpec, CompileError, } from './compile.js';
10
12
  export { validateSpec, type ValidationResult } from './validate.js';