@amalgm/live 0.2.51 → 0.2.53

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/PURPOSE.md CHANGED
@@ -181,18 +181,25 @@ its cutover.
181
181
  stronger current-content witness exists. Repository packing remains
182
182
  transfer preparation and may run beside structural registration, but
183
183
  neither act may weaken the other's result.
184
- 30. **Proof travels forward; bytes do not travel backward.** Capture derives
185
- and stores a block manifest while it already owns an artifact's bytes.
186
- Every ordinary text or binary file enters through the same bounded block
187
- stream; no file type or file size permits a complete-file allocation.
188
- Cold upload reads those sealed bytes once to send them, and cold download
189
- writes received bytes once before their registered adapter consumes them.
190
- Reopening a complete artifact to recreate or repeat an earlier integrity
191
- proof is redundant work, not additional correctness.
184
+ 30. **Proof travels forward; disposable bytes need not.** Registration reads
185
+ every ordinary text or binary file through one bounded stream to classify
186
+ it, derive its content head, and retain any block-manifest evidence needed
187
+ by the later Upload stage. A graph-only Register capture does not copy
188
+ those same bytes into the machine cache merely to preserve them for
189
+ Upload. Upload receives one seekable source selected by the host — an
190
+ already-sealed cache object when one exists, otherwise the registered
191
+ ground itself and verifies every byte it sends against the captured
192
+ content head. A typed source mismatch returns control to Register so it
193
+ can recapture current ground; stale bytes can never be sealed or
194
+ published. Download still writes received bytes once before their
195
+ registered adapter consumes them. No file type or size permits a
196
+ complete-file allocation in the bounded transfer path.
192
197
  31. **A content block is not a round trip.** Text and binary retain independent
193
- content-addressed block identities, while cold upload and download move
194
- adjacent missing blocks in bounded binary batches. Batching may reduce
195
- transport work but can never weaken per-block verification or commit order.
198
+ content-addressed block identities. Cold upload may move complete small
199
+ artifacts in bounded cargo waves, while cold upload and download move
200
+ adjacent missing blocks in bounded binary batches. Packing may reduce
201
+ transport work but can never weaken per-block verification, durable sealing,
202
+ or commit order.
196
203
  32. **A content layout owns a cloud namespace.** A writer change that derives
197
204
  different block identities for the same complete bytes advances the
198
205
  content contract and storage namespace together. Readers remain additive;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Cargo waves — cold transport of many complete small artifacts.
3
+ *
4
+ * A register journey moves file counts, not just bytes: tens of thousands
5
+ * of small artifacts whose per-artifact negotiation frames would dwarf the
6
+ * payload. A wave carries whole artifacts — every chunk and the manifest
7
+ * identity — so the frame count scales with bytes moved, never with file
8
+ * count. Only artifacts at or below the wave byte bound ride waves; larger
9
+ * artifacts keep per-artifact transfer where chunk reuse pays.
10
+ */
11
+ export declare const CARGO_WAVE_BYTES: number;
12
+ /** Bounded by the 64KiB binary-frame header law: every artifact declaration
13
+ * (content hash, bytes, chunk list) rides the JSON header, and 256 worst-case
14
+ * declarations stay under the bound with margin. The byte bound, not this
15
+ * count, decides the wave tally on real grounds. */
16
+ export declare const CARGO_WAVE_ARTIFACTS = 256;
17
+ export interface CargoWaveItem {
18
+ readonly bytes: number;
19
+ }
20
+ export interface CargoWave<T extends CargoWaveItem> {
21
+ readonly items: readonly T[];
22
+ readonly bytes: number;
23
+ }
24
+ /** Pack items in order into waves within the byte and artifact bounds. */
25
+ export declare function planCargoWaves<T extends CargoWaveItem>(items: readonly T[]): readonly CargoWave<T>[];
26
+ //# sourceMappingURL=cargo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cargo.d.ts","sourceRoot":"","sources":["../../src/transfer/cargo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,eAAO,MAAM,gBAAgB,QAA4B,CAAC;AAC1D;;;oDAGoD;AACpD,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,aAAa;IAChD,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,CAAC,SAAS,aAAa,EACpD,KAAK,EAAE,SAAS,CAAC,EAAE,GAClB,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,CAsBzB"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Cargo waves — cold transport of many complete small artifacts.
3
+ *
4
+ * A register journey moves file counts, not just bytes: tens of thousands
5
+ * of small artifacts whose per-artifact negotiation frames would dwarf the
6
+ * payload. A wave carries whole artifacts — every chunk and the manifest
7
+ * identity — so the frame count scales with bytes moved, never with file
8
+ * count. Only artifacts at or below the wave byte bound ride waves; larger
9
+ * artifacts keep per-artifact transfer where chunk reuse pays.
10
+ */
11
+ import { FILE_TRANSFER_BATCH_BYTES } from './batches.js';
12
+ export const CARGO_WAVE_BYTES = FILE_TRANSFER_BATCH_BYTES;
13
+ /** Bounded by the 64KiB binary-frame header law: every artifact declaration
14
+ * (content hash, bytes, chunk list) rides the JSON header, and 256 worst-case
15
+ * declarations stay under the bound with margin. The byte bound, not this
16
+ * count, decides the wave tally on real grounds. */
17
+ export const CARGO_WAVE_ARTIFACTS = 256;
18
+ /** Pack items in order into waves within the byte and artifact bounds. */
19
+ export function planCargoWaves(items) {
20
+ const waves = [];
21
+ let current = [];
22
+ let bytes = 0;
23
+ for (const item of items) {
24
+ if (!Number.isSafeInteger(item.bytes) || item.bytes < 0) {
25
+ throw new Error('cargo wave item byte count is invalid');
26
+ }
27
+ if (item.bytes > CARGO_WAVE_BYTES) {
28
+ throw new Error('cargo wave item exceeds the wave byte bound');
29
+ }
30
+ if (current.length > 0
31
+ && (bytes + item.bytes > CARGO_WAVE_BYTES || current.length >= CARGO_WAVE_ARTIFACTS)) {
32
+ waves.push({ items: current, bytes });
33
+ current = [];
34
+ bytes = 0;
35
+ }
36
+ current.push(item);
37
+ bytes += item.bytes;
38
+ }
39
+ if (current.length > 0)
40
+ waves.push({ items: current, bytes });
41
+ return waves;
42
+ }
43
+ //# sourceMappingURL=cargo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cargo.js","sourceRoot":"","sources":["../../src/transfer/cargo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAEzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,yBAAyB,CAAC;AAC1D;;;oDAGoD;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAWxC,0EAA0E;AAC1E,MAAM,UAAU,cAAc,CAC5B,KAAmB;IAEnB,MAAM,KAAK,GAAmB,EAAE,CAAC;IACjC,IAAI,OAAO,GAAQ,EAAE,CAAC;IACtB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,GAAG,gBAAgB,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;eACjB,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,gBAAgB,IAAI,OAAO,CAAC,MAAM,IAAI,oBAAoB,CAAC,EAAE,CAAC;YACvF,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YACtC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,GAAG,CAAC,CAAC;QACZ,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9D,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,5 +1,6 @@
1
1
  /** Type-aware immutable content transfer operations. */
2
2
  export * from './artifacts.js';
3
+ export * from './cargo.js';
3
4
  export * from './upload.js';
4
5
  export * from './download.js';
5
6
  export * from './presign.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transfer/index.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAExD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transfer/index.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAExD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
@@ -1,5 +1,6 @@
1
1
  /** Type-aware immutable content transfer operations. */
2
2
  export * from './artifacts.js';
3
+ export * from './cargo.js';
3
4
  export * from './upload.js';
4
5
  export * from './download.js';
5
6
  export * from './presign.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transfer/index.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAExD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transfer/index.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAExD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
@@ -41,6 +41,13 @@ export interface UploadReceipt {
41
41
  readonly uploadedChunks: number;
42
42
  readonly reusedChunks: number;
43
43
  }
44
+ /** The seekable source no longer carries the captured artifact's exact bytes.
45
+ * The bytes named by the content head cannot be produced from this source, so
46
+ * the artifact must be recaptured from current ground — never resent as-is.
47
+ * Hosts classify by `code` so the signal survives serialization boundaries. */
48
+ export declare class UploadSourceMismatchError extends Error {
49
+ readonly code = "UPLOAD_SOURCE_MISMATCH";
50
+ }
44
51
  /** Derive the reusable upload evidence while capture already owns the bytes.
45
52
  * A host persists this beside its immutable artifact so upload never has to
46
53
  * rediscover block boundaries or reread the complete source just to prove the
@@ -1 +1 @@
1
- {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../src/transfer/upload.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAI/E,MAAM,WAAW,YAAY;IAC3B,wEAAwE;IACxE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;+EAC2E;IAC3E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,qEAAqE;IACrE,MAAM,CAAC,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,0DAA0D;IAC1D,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC1D;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,oEAAoE;IACpE,aAAa,CACX,QAAQ,EAAE,gBAAgB,EAC1B,QAAQ,EAAE,eAAe,GACxB,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;IAC9B,QAAQ,CACN,QAAQ,EAAE,gBAAgB,EAC1B,QAAQ,EAAE,eAAe,EACzB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB;iFAC6E;IAC7E,aAAa,CAAC,CACZ,QAAQ,EAAE,gBAAgB,EAC1B,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,8EAA8E;IAC9E,WAAW,CAAC,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnF;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAyCD;;;0CAG0C;AAC1C,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,UAAU,EACjB,SAAS,EAAE,SAAS,GACnB,eAAe,CAejB;AA6BD,2EAA2E;AAC3E,wBAAsB,MAAM,CAC1B,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAwExB"}
1
+ {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../src/transfer/upload.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAI/E,MAAM,WAAW,YAAY;IAC3B,wEAAwE;IACxE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;+EAC2E;IAC3E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,qEAAqE;IACrE,MAAM,CAAC,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,0DAA0D;IAC1D,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC1D;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,oEAAoE;IACpE,aAAa,CACX,QAAQ,EAAE,gBAAgB,EAC1B,QAAQ,EAAE,eAAe,GACxB,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;IAC9B,QAAQ,CACN,QAAQ,EAAE,gBAAgB,EAC1B,QAAQ,EAAE,eAAe,EACzB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB;iFAC6E;IAC7E,aAAa,CAAC,CACZ,QAAQ,EAAE,gBAAgB,EAC1B,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,8EAA8E;IAC9E,WAAW,CAAC,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnF;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED;;;+EAG+E;AAC/E,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,QAAQ,CAAC,IAAI,4BAA4B;CAC1C;AAyCD;;;0CAG0C;AAC1C,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,UAAU,EACjB,SAAS,EAAE,SAAS,GACnB,eAAe,CAejB;AA6BD,2EAA2E;AAC3E,wBAAsB,MAAM,CAC1B,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAwExB"}
@@ -9,6 +9,13 @@ import { checkContentManifest, MAX_CONTENT_BLOCK_BYTES, chunkSizes, manifestFrom
9
9
  import { assertTransferArtifact } from './artifacts.js';
10
10
  import { planChunkBatches } from './batches.js';
11
11
  import { DEFAULT_TRANSFER_CONCURRENCY, parallelForEach } from './parallel.js';
12
+ /** The seekable source no longer carries the captured artifact's exact bytes.
13
+ * The bytes named by the content head cannot be produced from this source, so
14
+ * the artifact must be recaptured from current ground — never resent as-is.
15
+ * Hosts classify by `code` so the signal survives serialization boundaries. */
16
+ export class UploadSourceMismatchError extends Error {
17
+ code = 'UPLOAD_SOURCE_MISMATCH';
18
+ }
12
19
  const planChunks = (sizes) => {
13
20
  let offset = 0;
14
21
  return sizes.map((size, index) => {
@@ -47,7 +54,7 @@ const artifactPartSizes = (artifact, totalBytes) => {
47
54
  export function deriveUploadManifest(artifact, bytes, sha256Hex) {
48
55
  assertTransferArtifact(artifact);
49
56
  if (sha256Hex(bytes) !== artifact.contentHash) {
50
- throw new Error(`captured artifact does not match ${artifact.contentHash}`);
57
+ throw new UploadSourceMismatchError(`captured artifact does not match ${artifact.contentHash}`);
51
58
  }
52
59
  const chunks = [];
53
60
  let offset = 0;
@@ -76,7 +83,7 @@ const assertBatchChunks = (bytes, indexes, manifest, sha256Hex) => {
76
83
  throw new Error(`content manifest has no chunk ${index}`);
77
84
  const chunk = bytes.subarray(offset, offset + expected.bytes);
78
85
  if (chunk.byteLength !== expected.bytes || sha256Hex(chunk) !== expected.sha256) {
79
- throw new Error(`upload source changed while reading chunk ${index}`);
86
+ throw new UploadSourceMismatchError(`upload source changed while reading chunk ${index}`);
80
87
  }
81
88
  offset += expected.bytes;
82
89
  }
@@ -124,7 +131,7 @@ export async function upload(artifact, source, ports, options = {}) {
124
131
  }
125
132
  if (missing.length > 0 && source.manifestVerified !== true) {
126
133
  if (!source.verify || !await source.verify(artifact.contentHash)) {
127
- throw new Error(`upload source does not match ${artifact.contentHash}`);
134
+ throw new UploadSourceMismatchError(`upload source does not match ${artifact.contentHash}`);
128
135
  }
129
136
  }
130
137
  if (artifact.kind === 'file' && ports.putChunkBatch) {
@@ -141,7 +148,7 @@ export async function upload(artifact, source, ports, options = {}) {
141
148
  throw new Error('upload authority returned an unknown chunk index');
142
149
  const bytes = await readExact(source, chunk);
143
150
  if (ports.sha256Hex(bytes) !== manifest.chunks[index]?.sha256) {
144
- throw new Error(`upload source changed while reading chunk ${index}`);
151
+ throw new UploadSourceMismatchError(`upload source changed while reading chunk ${index}`);
145
152
  }
146
153
  await ports.putChunk(artifact, manifest, index, bytes);
147
154
  });
@@ -1 +1 @@
1
- {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/transfer/upload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/transfer/upload.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ /**
3
+ * Cargo waves — cold transport of many complete small artifacts.
4
+ *
5
+ * A register journey moves file counts, not just bytes: tens of thousands
6
+ * of small artifacts whose per-artifact negotiation frames would dwarf the
7
+ * payload. A wave carries whole artifacts — every chunk and the manifest
8
+ * identity — so the frame count scales with bytes moved, never with file
9
+ * count. Only artifacts at or below the wave byte bound ride waves; larger
10
+ * artifacts keep per-artifact transfer where chunk reuse pays.
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.CARGO_WAVE_ARTIFACTS = exports.CARGO_WAVE_BYTES = void 0;
14
+ exports.planCargoWaves = planCargoWaves;
15
+ const batches_js_1 = require("./batches.js");
16
+ exports.CARGO_WAVE_BYTES = batches_js_1.FILE_TRANSFER_BATCH_BYTES;
17
+ /** Bounded by the 64KiB binary-frame header law: every artifact declaration
18
+ * (content hash, bytes, chunk list) rides the JSON header, and 256 worst-case
19
+ * declarations stay under the bound with margin. The byte bound, not this
20
+ * count, decides the wave tally on real grounds. */
21
+ exports.CARGO_WAVE_ARTIFACTS = 256;
22
+ /** Pack items in order into waves within the byte and artifact bounds. */
23
+ function planCargoWaves(items) {
24
+ const waves = [];
25
+ let current = [];
26
+ let bytes = 0;
27
+ for (const item of items) {
28
+ if (!Number.isSafeInteger(item.bytes) || item.bytes < 0) {
29
+ throw new Error('cargo wave item byte count is invalid');
30
+ }
31
+ if (item.bytes > exports.CARGO_WAVE_BYTES) {
32
+ throw new Error('cargo wave item exceeds the wave byte bound');
33
+ }
34
+ if (current.length > 0
35
+ && (bytes + item.bytes > exports.CARGO_WAVE_BYTES || current.length >= exports.CARGO_WAVE_ARTIFACTS)) {
36
+ waves.push({ items: current, bytes });
37
+ current = [];
38
+ bytes = 0;
39
+ }
40
+ current.push(item);
41
+ bytes += item.bytes;
42
+ }
43
+ if (current.length > 0)
44
+ waves.push({ items: current, bytes });
45
+ return waves;
46
+ }
47
+ //# sourceMappingURL=cargo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cargo.js","sourceRoot":"","sources":["../../src/transfer/cargo.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAqBH,wCAwBC;AA3CD,6CAAyD;AAE5C,QAAA,gBAAgB,GAAG,sCAAyB,CAAC;AAC1D;;;oDAGoD;AACvC,QAAA,oBAAoB,GAAG,GAAG,CAAC;AAWxC,0EAA0E;AAC1E,SAAgB,cAAc,CAC5B,KAAmB;IAEnB,MAAM,KAAK,GAAmB,EAAE,CAAC;IACjC,IAAI,OAAO,GAAQ,EAAE,CAAC;IACtB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,GAAG,wBAAgB,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;eACjB,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,wBAAgB,IAAI,OAAO,CAAC,MAAM,IAAI,4BAAoB,CAAC,EAAE,CAAC;YACvF,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YACtC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,GAAG,CAAC,CAAC;QACZ,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9D,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -16,6 +16,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  __exportStar(require("./artifacts.js"), exports);
19
+ __exportStar(require("./cargo.js"), exports);
19
20
  __exportStar(require("./upload.js"), exports);
20
21
  __exportStar(require("./download.js"), exports);
21
22
  __exportStar(require("./presign.js"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transfer/index.ts"],"names":[],"mappings":";AAAA,wDAAwD;;;;;;;;;;;;;;;;AAExD,iDAA+B;AAC/B,8CAA4B;AAC5B,gDAA8B;AAC9B,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transfer/index.ts"],"names":[],"mappings":";AAAA,wDAAwD;;;;;;;;;;;;;;;;AAExD,iDAA+B;AAC/B,6CAA2B;AAC3B,8CAA4B;AAC5B,gDAA8B;AAC9B,+CAA6B"}
@@ -7,12 +7,21 @@
7
7
  * committed last; until then a partial upload is invisible.
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.UploadSourceMismatchError = void 0;
10
11
  exports.deriveUploadManifest = deriveUploadManifest;
11
12
  exports.upload = upload;
12
13
  const content_js_1 = require("../contracts/content.js");
13
14
  const artifacts_js_1 = require("./artifacts.js");
14
15
  const batches_js_1 = require("./batches.js");
15
16
  const parallel_js_1 = require("./parallel.js");
17
+ /** The seekable source no longer carries the captured artifact's exact bytes.
18
+ * The bytes named by the content head cannot be produced from this source, so
19
+ * the artifact must be recaptured from current ground — never resent as-is.
20
+ * Hosts classify by `code` so the signal survives serialization boundaries. */
21
+ class UploadSourceMismatchError extends Error {
22
+ code = 'UPLOAD_SOURCE_MISMATCH';
23
+ }
24
+ exports.UploadSourceMismatchError = UploadSourceMismatchError;
16
25
  const planChunks = (sizes) => {
17
26
  let offset = 0;
18
27
  return sizes.map((size, index) => {
@@ -51,7 +60,7 @@ const artifactPartSizes = (artifact, totalBytes) => {
51
60
  function deriveUploadManifest(artifact, bytes, sha256Hex) {
52
61
  (0, artifacts_js_1.assertTransferArtifact)(artifact);
53
62
  if (sha256Hex(bytes) !== artifact.contentHash) {
54
- throw new Error(`captured artifact does not match ${artifact.contentHash}`);
63
+ throw new UploadSourceMismatchError(`captured artifact does not match ${artifact.contentHash}`);
55
64
  }
56
65
  const chunks = [];
57
66
  let offset = 0;
@@ -80,7 +89,7 @@ const assertBatchChunks = (bytes, indexes, manifest, sha256Hex) => {
80
89
  throw new Error(`content manifest has no chunk ${index}`);
81
90
  const chunk = bytes.subarray(offset, offset + expected.bytes);
82
91
  if (chunk.byteLength !== expected.bytes || sha256Hex(chunk) !== expected.sha256) {
83
- throw new Error(`upload source changed while reading chunk ${index}`);
92
+ throw new UploadSourceMismatchError(`upload source changed while reading chunk ${index}`);
84
93
  }
85
94
  offset += expected.bytes;
86
95
  }
@@ -128,7 +137,7 @@ async function upload(artifact, source, ports, options = {}) {
128
137
  }
129
138
  if (missing.length > 0 && source.manifestVerified !== true) {
130
139
  if (!source.verify || !await source.verify(artifact.contentHash)) {
131
- throw new Error(`upload source does not match ${artifact.contentHash}`);
140
+ throw new UploadSourceMismatchError(`upload source does not match ${artifact.contentHash}`);
132
141
  }
133
142
  }
134
143
  if (artifact.kind === 'file' && ports.putChunkBatch) {
@@ -145,7 +154,7 @@ async function upload(artifact, source, ports, options = {}) {
145
154
  throw new Error('upload authority returned an unknown chunk index');
146
155
  const bytes = await readExact(source, chunk);
147
156
  if (ports.sha256Hex(bytes) !== manifest.chunks[index]?.sha256) {
148
- throw new Error(`upload source changed while reading chunk ${index}`);
157
+ throw new UploadSourceMismatchError(`upload source changed while reading chunk ${index}`);
149
158
  }
150
159
  await ports.putChunk(artifact, manifest, index, bytes);
151
160
  });
@@ -1 +1 @@
1
- {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/transfer/upload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../src/transfer/upload.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAmHH,oDAmBC;AA8BD,wBA6EC;AA/OD,wDAMiC;AAEjC,iDAA+E;AAC/E,6CAAgD;AAChD,+CAA8E;AAoD9E;;;+EAG+E;AAC/E,MAAa,yBAA0B,SAAQ,KAAK;IACzC,IAAI,GAAG,wBAAwB,CAAC;CAC1C;AAFD,8DAEC;AAQD,MAAM,UAAU,GAAG,CAAC,KAAwB,EAA2B,EAAE;IACvE,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC/B,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC7C,MAAM,IAAI,IAAI,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,UAAkB,EAAE,SAAiB,EAAY,EAAE;IACrE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,IAAI,SAAS,GAAG,UAAU,EAAE,SAAS,GAAG,CAAC,EAAE,SAAS,IAAI,SAAS,EAAE,CAAC;QACvE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF;;;gFAGgF;AAChF,MAAM,iBAAiB,GAAG,CAAC,QAA0B,EAAE,UAAkB,EAAqB,EAAE;IAC9F,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtB,KAAK,MAAM;YACT,OAAO,IAAA,uBAAU,EAAC,UAAU,CAAC,CAAC;QAChC,KAAK,MAAM;YACT,IAAI,UAAU,GAAG,oCAAuB;gBAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAC1G,OAAO,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAC9C,KAAK,KAAK;YACR,OAAO,UAAU,CAAC,UAAU,EAAE,oCAAuB,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC,CAAC;AAEF;;;0CAG0C;AAC1C,SAAgB,oBAAoB,CAClC,QAA0B,EAC1B,KAAiB,EACjB,SAAoB;IAEpB,IAAA,qCAAsB,EAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC9C,MAAM,IAAI,yBAAyB,CAAC,oCAAoC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAClG,CAAC;IACD,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,IAAI,IAAI,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,MAAM,IAAI,IAAI,CAAC;IACjB,CAAC;IACD,MAAM,OAAO,GAAG,IAAA,+BAAkB,EAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACjE,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChD,OAAO,OAAO,CAAC,KAAK,CAAC;AACvB,CAAC;AAED,MAAM,SAAS,GAAG,KAAK,EAAE,MAAoB,EAAE,KAAmB,EAAuB,EAAE;IACzF,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3D,IAAI,CAAC,CAAC,KAAK,YAAY,UAAU,CAAC,IAAI,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,yDAAyD,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CACxB,KAAiB,EACjB,OAA0B,EAC1B,QAAyB,EACzB,SAAoB,EACd,EAAE;IACR,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;QACzE,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YAChF,MAAM,IAAI,yBAAyB,CAAC,6CAA6C,KAAK,EAAE,CAAC,CAAC;QAC5F,CAAC;QACD,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC;IAC3B,CAAC;IACD,IAAI,MAAM,KAAK,KAAK,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;AACnH,CAAC,CAAC;AAEF,2EAA2E;AACpE,KAAK,UAAU,MAAM,CAC1B,QAA0B,EAC1B,MAAoB,EACpB,KAAkB,EAClB,UAAyB,EAAE;IAE3B,IAAA,qCAAsB,EAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,MAAM,CAAC,gBAAgB,KAAK,IAAI,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACtE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,aAAa,GAAG,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAChE,IAAI,IAA6B,CAAC;IAClC,IAAI,QAAyB,CAAC;IAC9B,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,IAAA,iCAAoB,EAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC3E,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK;eAChD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC;eAChF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QACD,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC;QACxB,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,OAAO,GAAG,IAAA,+BAAkB,EAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACjE,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAChD,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC;IAC3B,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IACnE,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM;WACvC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAChG,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACjE,MAAM,IAAI,yBAAyB,CAAC,gCAAgC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACpD,MAAM,IAAA,6BAAe,EACnB,IAAA,6BAAgB,EAAC,OAAO,EAAE,QAAQ,CAAC,EACnC,OAAO,CAAC,WAAW,IAAI,0CAA4B,EACnD,KAAK,EAAE,KAAK,EAAE,EAAE;YACd,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAC9G,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YACnE,MAAM,KAAK,CAAC,aAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACvE,CAAC,CACF,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,IAAA,6BAAe,EAAC,OAAO,EAAE,OAAO,CAAC,WAAW,IAAI,0CAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAClG,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,KAAK,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;YAC7F,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC7C,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;gBAC9D,MAAM,IAAI,yBAAyB,CAAC,6CAA6C,KAAK,EAAE,CAAC,CAAC;YAC5F,CAAC;YACD,MAAM,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC5C,OAAO;QACL,QAAQ;QACR,QAAQ;QACR,cAAc,EAAE,OAAO,CAAC,MAAM;QAC9B,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM;KACtD,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amalgm/live",
3
- "version": "0.2.51",
3
+ "version": "0.2.53",
4
4
  "description": "Portable realtime SDK for Amalgm — wire contracts, mutation discipline, and delivery state machines behind host-injected adapters.",
5
5
  "type": "module",
6
6
  "main": "./dist-cjs/index.js",