@forgecart/cli 2.202610130322.0 → 2.202610130815.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -23,6 +23,9 @@ export declare class AdminApiResult {
23
23
  /** A list of objects, each read field by field as a result of the same operation. */
24
24
  readObjectList(key: string): AdminApiResult[];
25
25
  readCount(key: string): number;
26
+ readCountList(key: string): number[];
26
27
  readBoolean(key: string): boolean;
28
+ /** A whole number of zero or more. */
29
+ private isCount;
27
30
  private unreadable;
28
31
  }
@@ -74,17 +74,29 @@ export class AdminApiResult {
74
74
  }
75
75
  readCount(key) {
76
76
  const value = this.record[key];
77
- if (typeof value !== 'number' || !Number.isSafeInteger(value) || value < 0) {
77
+ if (!this.isCount(value))
78
78
  throw this.unreadable();
79
- }
80
79
  return value;
81
80
  }
81
+ readCountList(key) {
82
+ const value = this.record[key];
83
+ if (!Array.isArray(value))
84
+ throw this.unreadable();
85
+ const items = value;
86
+ if (!items.every((item) => this.isCount(item)))
87
+ throw this.unreadable();
88
+ return items;
89
+ }
82
90
  readBoolean(key) {
83
91
  const value = this.record[key];
84
92
  if (typeof value !== 'boolean')
85
93
  throw this.unreadable();
86
94
  return value;
87
95
  }
96
+ /** A whole number of zero or more. */
97
+ isCount(value) {
98
+ return typeof value === 'number' && Number.isSafeInteger(value) && value >= 0;
99
+ }
88
100
  unreadable() {
89
101
  return AdminApiResult.unreadable(this.endpoint, this.field);
90
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"admin-api.result.js","sourceRoot":"","sources":["../../../src/admin-api/admin-api.result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;GAIG;AACH,MAAM,OAAO,cAAc;IAEN;IACA;IACA;IAHnB,YACmB,QAAgB,EAChB,KAAa,EACb,MAA+B;QAF/B,aAAQ,GAAR,QAAQ,CAAQ;QAChB,UAAK,GAAL,KAAK,CAAQ;QACb,WAAM,GAAN,MAAM,CAAyB;IAC/C,CAAC;IAEJ,8DAA8D;IAC9D,MAAM,CAAC,EAAE,CAAC,QAAgB,EAAE,KAAa,EAAE,KAAc;QACvD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YAAE,MAAM,cAAc,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC3E,OAAO,IAAI,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,iEAAiE;IACzD,MAAM,CAAC,UAAU,CAAC,QAAgB,EAAE,KAAa;QACvD,OAAO,IAAI,KAAK,CACd,oBAAoB,QAAQ,eAAe,KAAK,8BAA8B,CAC/E,CAAC;IACJ,CAAC;IAED,2CAA2C;IAC3C,UAAU,CAAC,GAAW;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE;YAAE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACvE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wCAAwC;IACxC,QAAQ,CAAC,GAAW;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACvD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,kBAAkB,CAAC,GAAW;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACvD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,cAAc,CAAC,GAAW;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnD,MAAM,KAAK,GAAc,KAAK,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;YACrE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,yEAAyE;IACzE,UAAU,CAAmB,GAAW,EAAE,OAAsC;QAC9E,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC7C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,qFAAqF;IACrF,cAAc,CAAC,GAAW;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACnD,MAAM,KAAK,GAAc,KAAK,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC;YAAE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,SAAS,CAAC,GAAW;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YAC3E,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,WAAW,CAAC,GAAW;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,OAAO,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,UAAU;QAChB,OAAO,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9D,CAAC;CACF"}
1
+ {"version":3,"file":"admin-api.result.js","sourceRoot":"","sources":["../../../src/admin-api/admin-api.result.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import type { SyncEnvFileLines, SyncPushResult } from './type/sync.types.js';
2
+ import type { WorkspaceSyncClient } from './workspace-sync.client.js';
3
+ /**
4
+ * How `forgecart sync` sends a push's bundle (factory task 2375). A bundle
5
+ * within one part travels as it always has: ONE push carrying it whole. A
6
+ * larger one travels in parts, so no hop's per-request body cap limits the
7
+ * size of a storefront: the begin declares the bundle — its byte length and
8
+ * sha256, the part size and each part's sha256 in order — and answers the parts
9
+ * the workspace already holds; every other part goes in a request of its own,
10
+ * each printed as it is sent; and ONE push naming the upload lands them as one
11
+ * bundle. A run cut off mid-way leaves the parts it sent on the workspace: the
12
+ * next run cuts the same bundle, begins it again, and sends only the rest.
13
+ */
14
+ export declare class SyncBundlePush {
15
+ private readonly client;
16
+ constructor(client: WorkspaceSyncClient);
17
+ /** Push `bundle` with the merchant lines of the env files `envFiles`, whole or in parts. */
18
+ send(bundle: Buffer, envFiles: readonly SyncEnvFileLines[]): Promise<SyncPushResult>;
19
+ /**
20
+ * Send every part the upload does not hold, in order, one request each, and
21
+ * print each as it goes — its place among the parts, and the bytes the
22
+ * workspace holds of the bundle once it arrived.
23
+ */
24
+ private sendParts;
25
+ /** The upload against the begin's declaration: an answer for any other bundle is an error, never a guess. */
26
+ private assertDeclares;
27
+ /** What the workspace holds of the bundle's `total` parts as the upload begins. */
28
+ private heldPhrase;
29
+ /** `bundle` cut into parts of {@link PART_BYTES}, the last carrying the rest, each with its sha256. */
30
+ private partsOf;
31
+ private declarationOf;
32
+ private byteLengthOf;
33
+ private sha256Of;
34
+ }
@@ -0,0 +1,97 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { print } from '../output.js';
3
+ /**
4
+ * The most bundle bytes one request carries, 8 MiB: a bundle no larger travels
5
+ * whole, and a larger one in parts this long but the last. One part and its
6
+ * multipart envelope stay well under every hop's per-request body cap.
7
+ */
8
+ const PART_BYTES = 8 * 1024 * 1024;
9
+ /**
10
+ * How `forgecart sync` sends a push's bundle (factory task 2375). A bundle
11
+ * within one part travels as it always has: ONE push carrying it whole. A
12
+ * larger one travels in parts, so no hop's per-request body cap limits the
13
+ * size of a storefront: the begin declares the bundle — its byte length and
14
+ * sha256, the part size and each part's sha256 in order — and answers the parts
15
+ * the workspace already holds; every other part goes in a request of its own,
16
+ * each printed as it is sent; and ONE push naming the upload lands them as one
17
+ * bundle. A run cut off mid-way leaves the parts it sent on the workspace: the
18
+ * next run cuts the same bundle, begins it again, and sends only the rest.
19
+ */
20
+ export class SyncBundlePush {
21
+ client;
22
+ constructor(client) {
23
+ this.client = client;
24
+ }
25
+ /** Push `bundle` with the merchant lines of the env files `envFiles`, whole or in parts. */
26
+ async send(bundle, envFiles) {
27
+ if (bundle.length <= PART_BYTES)
28
+ return this.client.push(bundle, envFiles);
29
+ const parts = this.partsOf(bundle);
30
+ const declaration = this.declarationOf(bundle, parts);
31
+ const upload = await this.client.beginUpload(declaration);
32
+ this.assertDeclares(upload, declaration);
33
+ await this.sendParts(upload, parts);
34
+ return this.client.land(upload.id, envFiles);
35
+ }
36
+ /**
37
+ * Send every part the upload does not hold, in order, one request each, and
38
+ * print each as it goes — its place among the parts, and the bytes the
39
+ * workspace holds of the bundle once it arrived.
40
+ */
41
+ async sendParts(upload, parts) {
42
+ const held = new Set(upload.heldParts);
43
+ const pending = parts.filter((part) => !held.has(part.index));
44
+ let sent = upload.byteLength - this.byteLengthOf(pending);
45
+ print(` upload ${String(upload.byteLength)} bytes in ${String(parts.length)} parts: ${this.heldPhrase(held.size, parts.length)}`);
46
+ for (const part of pending) {
47
+ const answer = await this.client.pushPart(upload.id, part);
48
+ if (!answer.heldParts.includes(part.index)) {
49
+ throw new Error(`The workspace answered part ${String(part.index + 1)} of ${String(parts.length)} without holding it; nothing landed.`);
50
+ }
51
+ sent += part.bytes.length;
52
+ print(` upload part ${String(part.index + 1)} of ${String(parts.length)} sent — ${String(sent)} of ${String(upload.byteLength)} bytes`);
53
+ }
54
+ }
55
+ /** The upload against the begin's declaration: an answer for any other bundle is an error, never a guess. */
56
+ assertDeclares(upload, declaration) {
57
+ const partCount = declaration.partSha256s.length;
58
+ if (upload.byteLength === declaration.byteLength &&
59
+ upload.sha256 === declaration.sha256 &&
60
+ upload.partBytes === declaration.partBytes &&
61
+ upload.partCount === partCount &&
62
+ upload.heldParts.every((index) => index < partCount)) {
63
+ return;
64
+ }
65
+ throw new Error('The workspace answered the begin of the push with an upload of another bundle; nothing was sent.');
66
+ }
67
+ /** What the workspace holds of the bundle's `total` parts as the upload begins. */
68
+ heldPhrase(held, total) {
69
+ if (held === 0)
70
+ return 'sending every part';
71
+ return `the workspace holds ${String(held)} of the ${String(total)} from an earlier run, sending the rest`;
72
+ }
73
+ /** `bundle` cut into parts of {@link PART_BYTES}, the last carrying the rest, each with its sha256. */
74
+ partsOf(bundle) {
75
+ const parts = [];
76
+ for (let offset = 0; offset < bundle.length; offset += PART_BYTES) {
77
+ const bytes = bundle.subarray(offset, offset + PART_BYTES);
78
+ parts.push({ index: parts.length, bytes, sha256: this.sha256Of(bytes) });
79
+ }
80
+ return parts;
81
+ }
82
+ declarationOf(bundle, parts) {
83
+ return {
84
+ byteLength: bundle.length,
85
+ sha256: this.sha256Of(bundle),
86
+ partBytes: PART_BYTES,
87
+ partSha256s: parts.map((part) => part.sha256),
88
+ };
89
+ }
90
+ byteLengthOf(parts) {
91
+ return parts.reduce((total, part) => total + part.bytes.length, 0);
92
+ }
93
+ sha256Of(bytes) {
94
+ return createHash('sha256').update(bytes).digest('hex');
95
+ }
96
+ }
97
+ //# sourceMappingURL=sync-bundle-push.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-bundle-push.js","sourceRoot":"","sources":["../../../src/sync/sync-bundle-push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAWrC;;;;GAIG;AACH,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAEnC;;;;;;;;;;GAUG;AACH,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,MAA2B;QAA3B,WAAM,GAAN,MAAM,CAAqB;IAAG,CAAC;IAE5D,4FAA4F;IAC5F,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,QAAqC;QAC9D,IAAI,MAAM,CAAC,MAAM,IAAI,UAAU;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACzC,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,SAAS,CAAC,MAAkB,EAAE,KAAgC;QAC1E,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9D,IAAI,IAAI,GAAG,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC1D,KAAK,CACH,gBAAgB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAChI,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC3D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CACb,+BAA+B,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,sCAAsC,CACvH,CAAC;YACJ,CAAC;YACD,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAC1B,KAAK,CACH,qBAAqB,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,MAAM,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CACtI,CAAC;QACJ,CAAC;IACH,CAAC;IAED,6GAA6G;IACrG,cAAc,CAAC,MAAkB,EAAE,WAAkC;QAC3E,MAAM,SAAS,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC;QACjD,IACE,MAAM,CAAC,UAAU,KAAK,WAAW,CAAC,UAAU;YAC5C,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM;YACpC,MAAM,CAAC,SAAS,KAAK,WAAW,CAAC,SAAS;YAC1C,MAAM,CAAC,SAAS,KAAK,SAAS;YAC9B,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,SAAS,CAAC,EACpD,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,IAAI,KAAK,CACb,kGAAkG,CACnG,CAAC;IACJ,CAAC;IAED,mFAAmF;IAC3E,UAAU,CAAC,IAAY,EAAE,KAAa;QAC5C,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO,oBAAoB,CAAC;QAC5C,OAAO,uBAAuB,MAAM,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC;IAC7G,CAAC;IAED,uGAAuG;IAC/F,OAAO,CAAC,MAAc;QAC5B,MAAM,KAAK,GAAqB,EAAE,CAAC;QACnC,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,UAAU,EAAE,CAAC;YAClE,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC;YAC3D,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,aAAa,CAAC,MAAc,EAAE,KAAgC;QACpE,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC7B,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;SAC9C,CAAC;IACJ,CAAC;IAEO,YAAY,CAAC,KAAgC;QACnD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACrE,CAAC;IAEO,QAAQ,CAAC,KAAa;QAC5B,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;CACF"}
@@ -2,19 +2,25 @@ import type { SyncEnvDigests, SyncRecord } from './type/sync.types.js';
2
2
  /**
3
3
  * The last sync of one storefront (#2781), kept in `.forgecart/sync/state.json`
4
4
  * beside the private repository: the channel it ran against — a digest of the
5
- * admin API and the channel token, never the token — the serving commit the
6
- * laptop's tree last matched, and a digest of every merchant line of every env
7
- * file as it last travelled, file by file. A record of another channel is no
8
- * record: a storefront pointed at another channel syncs as a first sync.
5
+ * channel token, never the token — the serving commit the laptop's tree last
6
+ * matched, and a digest of every merchant line of every env file as it last
7
+ * travelled, file by file. A record of another channel is no record: a
8
+ * storefront pointed at another channel syncs as a first sync.
9
+ *
10
+ * The admin API's URL is no part of the channel: it is the route a run reaches
11
+ * the shop by, and a hop in front of the shop — a proxy, an ingress, the edge —
12
+ * changes it while the channel and its board stay the same (factory task
13
+ * 2375). A laptop that pulled through one route pushes through another onto
14
+ * the base it pulled.
9
15
  */
10
16
  export declare class SyncRecordFile {
11
- private readonly channel;
12
17
  private readonly path;
18
+ private readonly channel;
13
19
  /**
14
20
  * @param storefront the storefront directory.
15
- * @param channel the digest naming the channel this run syncs against.
21
+ * @param channelToken the token of the channel this run syncs against, kept only as its digest.
16
22
  */
17
- constructor(storefront: string, channel: string);
23
+ constructor(storefront: string, channelToken: string);
18
24
  /** This channel's last sync — null before the first, or after a sync against another channel. */
19
25
  read(): Promise<SyncRecord | null>;
20
26
  /** Record a sync that left the laptop on `servingSha`, with the env files' lines as `env` digests them. */
@@ -1,3 +1,4 @@
1
+ import { createHash } from 'node:crypto';
1
2
  import { readFile, writeFile } from 'node:fs/promises';
2
3
  import { join } from 'node:path';
3
4
  import { isJsonObject } from '../json.js';
@@ -11,21 +12,27 @@ const COMMIT_ID_LENGTHS = new Set([40, 64]);
11
12
  /**
12
13
  * The last sync of one storefront (#2781), kept in `.forgecart/sync/state.json`
13
14
  * beside the private repository: the channel it ran against — a digest of the
14
- * admin API and the channel token, never the token — the serving commit the
15
- * laptop's tree last matched, and a digest of every merchant line of every env
16
- * file as it last travelled, file by file. A record of another channel is no
17
- * record: a storefront pointed at another channel syncs as a first sync.
15
+ * channel token, never the token — the serving commit the laptop's tree last
16
+ * matched, and a digest of every merchant line of every env file as it last
17
+ * travelled, file by file. A record of another channel is no record: a
18
+ * storefront pointed at another channel syncs as a first sync.
19
+ *
20
+ * The admin API's URL is no part of the channel: it is the route a run reaches
21
+ * the shop by, and a hop in front of the shop — a proxy, an ingress, the edge —
22
+ * changes it while the channel and its board stay the same (factory task
23
+ * 2375). A laptop that pulled through one route pushes through another onto
24
+ * the base it pulled.
18
25
  */
19
26
  export class SyncRecordFile {
20
- channel;
21
27
  path;
28
+ channel;
22
29
  /**
23
30
  * @param storefront the storefront directory.
24
- * @param channel the digest naming the channel this run syncs against.
31
+ * @param channelToken the token of the channel this run syncs against, kept only as its digest.
25
32
  */
26
- constructor(storefront, channel) {
27
- this.channel = channel;
33
+ constructor(storefront, channelToken) {
28
34
  this.path = join(storefront, ...SYNC_STATE_PATH, RECORD_FILE);
35
+ this.channel = createHash('sha256').update(channelToken).digest('hex');
29
36
  }
30
37
  /** This channel's last sync — null before the first, or after a sync against another channel. */
31
38
  async read() {
@@ -1 +1 @@
1
- {"version":3,"file":"sync-record.file.js","sourceRoot":"","sources":["../../../src/sync/sync-record.file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-record.file.js","sourceRoot":"","sources":["../../../src/sync/sync-record.file.ts"],"names":[],"mappings":"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"}
@@ -60,12 +60,17 @@ export declare class SyncRepository {
60
60
  /**
61
61
  * The ONE commit a push sends: the laptop's tree on the serving tip `serving`,
62
62
  * keeping the platform's `.forgecart/` the serving tree carries — the laptop's
63
- * own never travels.
63
+ * own never travels. It is dated as the serving tip it is cut on, so the same
64
+ * tree cut on the same tip is the same commit on every run: a run that
65
+ * re-sends a push an earlier run broke off sends the very bundle the
66
+ * workspace holds parts of. The pod mints the landed commit itself.
64
67
  */
65
68
  pushCommit(localTree: string, serving: string): Promise<string>;
66
69
  /**
67
70
  * `commit` as the git bundle a push sends: its one ref `refs/heads/serving`,
68
- * its one prerequisite the serving tip `serving` it was cut on.
71
+ * its one prerequisite the serving tip `serving` it was cut on. The pack is
72
+ * written by one thread, so the same commit is the same bundle, byte for
73
+ * byte, on every run.
69
74
  */
70
75
  pushBundle(commit: string, serving: string): Promise<Buffer>;
71
76
  /** The top-level entries of `tree`, in `ls-tree -z` form — the form `mktree -z` reads back. */
@@ -188,23 +188,41 @@ export class SyncRepository {
188
188
  /**
189
189
  * The ONE commit a push sends: the laptop's tree on the serving tip `serving`,
190
190
  * keeping the platform's `.forgecart/` the serving tree carries — the laptop's
191
- * own never travels.
191
+ * own never travels. It is dated as the serving tip it is cut on, so the same
192
+ * tree cut on the same tip is the same commit on every run: a run that
193
+ * re-sends a push an earlier run broke off sends the very bundle the
194
+ * workspace holds parts of. The pod mints the landed commit itself.
192
195
  */
193
196
  async pushCommit(localTree, serving) {
194
197
  const local = await this.topLevelEntries(localTree);
195
198
  const platform = (await this.topLevelEntries(`${serving}^{tree}`)).filter((entry) => this.entryName(entry) === PLATFORM_DIR);
196
199
  const tree = await this.makeTree([...local, ...platform]);
197
- return this.line(await this.git(['commit-tree', tree, '-p', serving, '-m', PUSH_MESSAGE]));
200
+ const servingDate = await this.git(['log', '-1', '--format=%cd', '--date=raw', serving]);
201
+ const date = `@${this.line(servingDate)}`;
202
+ const run = await this.git(['commit-tree', tree, '-p', serving, '-m', PUSH_MESSAGE], {
203
+ env: { GIT_AUTHOR_DATE: date, GIT_COMMITTER_DATE: date },
204
+ });
205
+ return this.line(run);
198
206
  }
199
207
  /**
200
208
  * `commit` as the git bundle a push sends: its one ref `refs/heads/serving`,
201
- * its one prerequisite the serving tip `serving` it was cut on.
209
+ * its one prerequisite the serving tip `serving` it was cut on. The pack is
210
+ * written by one thread, so the same commit is the same bundle, byte for
211
+ * byte, on every run.
202
212
  */
203
213
  async pushBundle(commit, serving) {
204
214
  await this.git(['update-ref', PUSH_REF, commit]);
205
215
  const bundlePath = this.spoolPath('push');
206
216
  try {
207
- await this.git(['bundle', 'create', bundlePath, PUSH_REF, `^${serving}`]);
217
+ await this.git([
218
+ '-c',
219
+ 'pack.threads=1',
220
+ 'bundle',
221
+ 'create',
222
+ bundlePath,
223
+ PUSH_REF,
224
+ `^${serving}`,
225
+ ]);
208
226
  return await readFile(bundlePath);
209
227
  }
210
228
  finally {
@@ -297,7 +315,10 @@ export class SyncRepository {
297
315
  * caller reads it as an answer.
298
316
  */
299
317
  async git(args, options = {}) {
300
- const env = this.repositoryEnv(options.indexFile ?? join(this.gitDir, INDEX_FILE));
318
+ const env = {
319
+ ...this.repositoryEnv(options.indexFile ?? join(this.gitDir, INDEX_FILE)),
320
+ ...options.env,
321
+ };
301
322
  const run = await this.spawnGit([...this.gitFlags(), ...args], env, options);
302
323
  if (options.allowFailure !== true)
303
324
  this.assertSucceeded(args, run);
@@ -1 +1 @@
1
- {"version":3,"file":"sync-repository.js","sourceRoot":"","sources":["../../../src/sync/sync-repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-repository.js","sourceRoot":"","sources":["../../../src/sync/sync-repository.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { CliCredentials } from '../authorization/type/cli-authorization.types.js';
2
+ import type { SyncBundlePush } from './sync-bundle-push.js';
2
3
  import { type SyncDivergenceSelection } from './sync-divergence.js';
3
4
  import type { SyncEnvChannel } from './sync-env-channel.js';
4
5
  import type { SyncRecordFile } from './sync-record.file.js';
@@ -14,8 +15,9 @@ import type { WorkspaceSyncClient } from './workspace-sync.client.js';
14
15
  * Both sides are compared against the base — the serving commit the laptop
15
16
  * last matched. Only the workspace changed: its tree is written onto the
16
17
  * laptop. Only the laptop changed: its tree is committed on the serving tip and
17
- * pushed as ONE git bundle, which the pod lands through its promote pipeline or
18
- * rejects with the gates' diagnostics (exit 1). Both changed: ONE selection —
18
+ * pushed as ONE git bundle — in parts when it is larger than one request
19
+ * carries — which the pod lands through its promote pipeline or rejects with
20
+ * the gates' diagnostics (exit 1). Both changed: ONE selection —
19
21
  * local overrides workspace, workspace overrides local, or Abort — never a
20
22
  * merge; an abort or an unanswered selection ends the run on exit 4. The
21
23
  * merchant lines of every env file travel with the tree, file for file; the
@@ -25,11 +27,12 @@ export declare class SyncRound {
25
27
  private readonly options;
26
28
  private readonly credentials;
27
29
  private readonly client;
30
+ private readonly bundlePush;
28
31
  private readonly repository;
29
32
  private readonly records;
30
33
  private readonly envChannel;
31
34
  private readonly selection;
32
- constructor(options: SyncRoundOptions, credentials: CliCredentials, client: WorkspaceSyncClient, repository: SyncRepository, records: SyncRecordFile, envChannel: SyncEnvChannel, selection: SyncDivergenceSelection);
35
+ constructor(options: SyncRoundOptions, credentials: CliCredentials, client: WorkspaceSyncClient, bundlePush: SyncBundlePush, repository: SyncRepository, records: SyncRecordFile, envChannel: SyncEnvChannel, selection: SyncDivergenceSelection);
33
36
  /** Run the round; a board that moves under its push is read again, a bounded number of times. */
34
37
  run(): Promise<SyncRoundEnd>;
35
38
  private attempt;
@@ -22,8 +22,9 @@ const PLAN_LABEL_WIDTH = 10;
22
22
  * Both sides are compared against the base — the serving commit the laptop
23
23
  * last matched. Only the workspace changed: its tree is written onto the
24
24
  * laptop. Only the laptop changed: its tree is committed on the serving tip and
25
- * pushed as ONE git bundle, which the pod lands through its promote pipeline or
26
- * rejects with the gates' diagnostics (exit 1). Both changed: ONE selection —
25
+ * pushed as ONE git bundle — in parts when it is larger than one request
26
+ * carries — which the pod lands through its promote pipeline or rejects with
27
+ * the gates' diagnostics (exit 1). Both changed: ONE selection —
27
28
  * local overrides workspace, workspace overrides local, or Abort — never a
28
29
  * merge; an abort or an unanswered selection ends the run on exit 4. The
29
30
  * merchant lines of every env file travel with the tree, file for file; the
@@ -33,14 +34,16 @@ export class SyncRound {
33
34
  options;
34
35
  credentials;
35
36
  client;
37
+ bundlePush;
36
38
  repository;
37
39
  records;
38
40
  envChannel;
39
41
  selection;
40
- constructor(options, credentials, client, repository, records, envChannel, selection) {
42
+ constructor(options, credentials, client, bundlePush, repository, records, envChannel, selection) {
41
43
  this.options = options;
42
44
  this.credentials = credentials;
43
45
  this.client = client;
46
+ this.bundlePush = bundlePush;
44
47
  this.repository = repository;
45
48
  this.records = records;
46
49
  this.envChannel = envChannel;
@@ -310,7 +313,7 @@ export class SyncRound {
310
313
  /** The push, or null when the board moved past the commit it was cut on before it landed. */
311
314
  async sendPush(bundle, envFiles) {
312
315
  try {
313
- return await this.client.push(bundle, envFiles);
316
+ return await this.bundlePush.send(bundle, envFiles);
314
317
  }
315
318
  catch (error) {
316
319
  if (error instanceof AdminApiRefusal && error.code === SYNC_DIVERGED_CODE)
@@ -1 +1 @@
1
- {"version":3,"file":"sync-round.js","sourceRoot":"","sources":["../../../src/sync/sync-round.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-round.js","sourceRoot":"","sources":["../../../src/sync/sync-round.ts"],"names":[],"mappings":"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"}
@@ -33,8 +33,6 @@ export declare class SyncRunner {
33
33
  /** Watch until Ctrl-C, which ends the run in flight and prints where it stood. */
34
34
  private watch;
35
35
  private assemble;
36
- /** The channel a record belongs to: a digest of the admin API and the channel token — never the token. */
37
- private channelOf;
38
36
  /** The storefront as the merchant named it. */
39
37
  private displayName;
40
38
  private isDirectory;
@@ -1,9 +1,9 @@
1
- import { createHash } from 'node:crypto';
2
1
  import { mkdir, stat } from 'node:fs/promises';
3
2
  import { resolve } from 'node:path';
4
3
  import { AdminApiClient } from '../admin-api/admin-api.client.js';
5
4
  import { CliCredentialStep } from '../authorization/cli-credential-step.js';
6
5
  import { QuestionPromptAdapter } from '../question/question-prompt.adapter.js';
6
+ import { SyncBundlePush } from './sync-bundle-push.js';
7
7
  import { SyncDivergenceSelection } from './sync-divergence.js';
8
8
  import { SyncEnvChannel } from './sync-env-channel.js';
9
9
  import { SyncRecordFile } from './sync-record.file.js';
@@ -89,15 +89,9 @@ export class SyncRunner {
89
89
  const pullOnly = this.options.pull === true;
90
90
  const client = new WorkspaceSyncClient(new AdminApiClient(credentials, this.options.timeout), interrupt);
91
91
  const repository = new SyncRepository(storefront);
92
- const round = new SyncRound({ storefront: this.displayName(), pullOnly, dryRun: this.options.dryRun === true }, credentials, client, repository, new SyncRecordFile(storefront, this.channelOf(credentials)), new SyncEnvChannel(storefront), new SyncDivergenceSelection(new QuestionPromptAdapter(this.options), pullOnly));
92
+ const round = new SyncRound({ storefront: this.displayName(), pullOnly, dryRun: this.options.dryRun === true }, credentials, client, new SyncBundlePush(client), repository, new SyncRecordFile(storefront, credentials.channelToken), new SyncEnvChannel(storefront), new SyncDivergenceSelection(new QuestionPromptAdapter(this.options), pullOnly));
93
93
  return { client, repository, round };
94
94
  }
95
- /** The channel a record belongs to: a digest of the admin API and the channel token — never the token. */
96
- channelOf(credentials) {
97
- return createHash('sha256')
98
- .update(`${credentials.adminApiUrl}\n${credentials.channelToken}`)
99
- .digest('hex');
100
- }
101
95
  /** The storefront as the merchant named it. */
102
96
  displayName() {
103
97
  return this.name ?? '.';
@@ -1 +1 @@
1
- {"version":3,"file":"sync.runner.js","sourceRoot":"","sources":["../../../src/sync/sync.runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.runner.js","sourceRoot":"","sources":["../../../src/sync/sync.runner.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,35 @@ export interface SyncPulledBundle {
56
56
  /** The merchant lines of every env file the workspace holds, file by file. */
57
57
  envFiles: SyncEnvFileLines[];
58
58
  }
59
+ /**
60
+ * A bundle as a chunked push declares it (factory task 2375): its byte length
61
+ * and sha256, the length of every part but the last, and each part's sha256 in
62
+ * index order.
63
+ */
64
+ export interface SyncBundleDeclaration {
65
+ byteLength: number;
66
+ sha256: string;
67
+ partBytes: number;
68
+ partSha256s: string[];
69
+ }
70
+ /** One part of a bundle a chunked push sends: its index, its bytes and their sha256. */
71
+ export interface SyncBundlePart {
72
+ index: number;
73
+ bytes: Buffer;
74
+ sha256: string;
75
+ }
76
+ /**
77
+ * The upload the admin API answered a chunked push's begin or part with: its
78
+ * id, the bundle it declares, and the indexes of the parts it holds, ascending.
79
+ */
80
+ export interface SyncUpload {
81
+ id: string;
82
+ byteLength: number;
83
+ sha256: string;
84
+ partBytes: number;
85
+ partCount: number;
86
+ heldParts: number[];
87
+ }
59
88
  /** What the admin API answered a push. */
60
89
  export interface SyncPushResult {
61
90
  accepted: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"sync.types.js","sourceRoot":"","sources":["../../../../src/sync/type/sync.types.ts"],"names":[],"mappings":"AA0FA,+EAA+E;AAC/E,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,6BAAW,CAAA;IACX,+BAAa,CAAA;IACb,gCAAc,CAAA;IACd,oCAAkB,CAAA;AACpB,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AA4CD,0CAA0C;AAC1C,MAAM,CAAN,IAAY,WAWX;AAXD,WAAY,WAAW;IACrB,6CAA6C;IAC7C,kCAAmB,CAAA;IACnB,uEAAuE;IACvE,4BAAa,CAAA;IACb,kEAAkE;IAClE,4BAAa,CAAA;IACb,oEAAoE;IACpE,wCAAyB,CAAA;IACzB,2DAA2D;IAC3D,oCAAqB,CAAA;AACvB,CAAC,EAXW,WAAW,KAAX,WAAW,QAWtB;AAmDD,mFAAmF;AACnF,MAAM,CAAN,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,uCAAe,CAAA;IACf,+CAAuB,CAAA;IACvB,uCAAe,CAAA;AACjB,CAAC,EAJW,oBAAoB,KAApB,oBAAoB,QAI/B"}
1
+ {"version":3,"file":"sync.types.js","sourceRoot":"","sources":["../../../../src/sync/type/sync.types.ts"],"names":[],"mappings":"AA0HA,+EAA+E;AAC/E,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,6BAAW,CAAA;IACX,+BAAa,CAAA;IACb,gCAAc,CAAA;IACd,oCAAkB,CAAA;AACpB,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AA4CD,0CAA0C;AAC1C,MAAM,CAAN,IAAY,WAWX;AAXD,WAAY,WAAW;IACrB,6CAA6C;IAC7C,kCAAmB,CAAA;IACnB,uEAAuE;IACvE,4BAAa,CAAA;IACb,kEAAkE;IAClE,4BAAa,CAAA;IACb,oEAAoE;IACpE,wCAAyB,CAAA;IACzB,2DAA2D;IAC3D,oCAAqB,CAAA;AACvB,CAAC,EAXW,WAAW,KAAX,WAAW,QAWtB;AAmDD,mFAAmF;AACnF,MAAM,CAAN,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,uCAAe,CAAA;IACf,+CAAuB,CAAA;IACvB,uCAAe,CAAA;AACjB,CAAC,EAJW,oBAAoB,KAApB,oBAAoB,QAI/B"}
@@ -1,13 +1,14 @@
1
1
  import type { AdminApiClient } from '../admin-api/admin-api.client.js';
2
- import type { SyncEnvFileLines, SyncPulledBundle, SyncPushResult, SyncServingState } from './type/sync.types.js';
2
+ import type { SyncBundleDeclaration, SyncBundlePart, SyncEnvFileLines, SyncPulledBundle, SyncPushResult, SyncServingState, SyncUpload } from './type/sync.types.js';
3
3
  /**
4
- * The admin API's three workspace-sync operations (#2781) — the surface
5
- * `forgecart sync` reaches the shop through, over the {@link AdminApiClient}:
6
- * every exchange is bounded by `--timeout` and ends when the run is
7
- * interrupted, and answers are read field by field. Credentials the API
8
- * refuses are a `CliCredentialsRefusal`, which the credential step answers by
9
- * authorizing. A workspace updating to the current version (#2371) is no
10
- * refusal: every operation waits it out and asks again
4
+ * The admin API's workspace-sync operations (#2781) — the reads of the serving
5
+ * branch, the push, and the begin and the parts of a chunked push (factory task
6
+ * 2375) — the surface `forgecart sync` reaches the shop through, over the
7
+ * {@link AdminApiClient}: every exchange is bounded by `--timeout` and ends
8
+ * when the run is interrupted, and answers are read field by field.
9
+ * Credentials the API refuses are a `CliCredentialsRefusal`, which the
10
+ * credential step answers by authorizing. A workspace updating to the current
11
+ * version (#2371) is no refusal: every operation waits it out and asks again
11
12
  * ({@link SyncImageUpdateWait}).
12
13
  */
13
14
  export declare class WorkspaceSyncClient {
@@ -32,15 +33,33 @@ export declare class WorkspaceSyncClient {
32
33
  * `envFiles`, file by file; a push without a bundle carries the lines alone.
33
34
  */
34
35
  push(bundle: Buffer | null, envFiles: readonly SyncEnvFileLines[]): Promise<SyncPushResult>;
36
+ /**
37
+ * Begin the chunked push of the bundle `declaration` declares — or, for a
38
+ * bundle the workspace already holds parts of, answer that same upload
39
+ * again — and answer the upload with the parts it holds.
40
+ */
41
+ beginUpload(declaration: SyncBundleDeclaration): Promise<SyncUpload>;
42
+ /** Send ONE part of the upload `uploadId` as an authenticated upload carrying its sha256. */
43
+ pushPart(uploadId: string, part: SyncBundlePart): Promise<SyncUpload>;
44
+ /**
45
+ * Land the parts the upload `uploadId` holds as ONE bundle, with the
46
+ * merchant lines of the env files `envFiles`, file by file — a push naming
47
+ * its upload, carrying no bundle.
48
+ */
49
+ land(uploadId: string, envFiles: readonly SyncEnvFileLines[]): Promise<SyncPushResult>;
50
+ /** Send a push and read what it did. */
51
+ private pushed;
35
52
  /** A push with a bundle is an upload; one with env lines alone is plain JSON. */
36
53
  private pushRequest;
54
+ /** The push carrying its bundle whole, declared by its byte length and sha256. */
55
+ private uploadRequest;
37
56
  /**
38
- * The push as a GraphQL multipart request: the operation, the map naming the
39
- * bundle's variable, and the bundle itself, declared by its byte length and
40
- * sha256. The admin API reads a multipart request only with the preflight
41
- * header; the boundary is the form's own.
57
+ * An operation carrying a file, as a GraphQL multipart request: the
58
+ * operation with `input`, the map naming the file's `variable`, and the
59
+ * file's `bytes`. The admin API reads a multipart request only with the
60
+ * preflight header; the boundary is the form's own.
42
61
  */
43
- private uploadRequest;
62
+ private fileRequest;
44
63
  /**
45
64
  * POST one operation over the admin API and answer its root field, asking
46
65
  * again for as long as the admin API answers that the workspace is updating
@@ -51,6 +70,8 @@ export declare class WorkspaceSyncClient {
51
70
  private exchangeThroughUpdate;
52
71
  /** A pulled bundle's bytes against what it declares: its length, then its sha256. */
53
72
  private assertDeclared;
73
+ /** A chunked push's upload, read field by field. */
74
+ private readUpload;
54
75
  /** The workspace's env files: one entry each, naming an env file a storefront reads, with its lines. */
55
76
  private readEnvFiles;
56
77
  /** How many merchant keys a push merged into each env file it carried. */
@@ -37,18 +37,47 @@ const PUSH_DOCUMENT = `mutation WorkspaceSyncPush($input: PushWorkspaceSyncInput
37
37
  }
38
38
  }
39
39
  }`;
40
- /** The multipart part a push's bundle travels in, and the variable it answers (GraphQL multipart request spec). */
41
- const BUNDLE_PART = '0';
40
+ /** The SDK's `WorkspaceSyncBeginUpload` operation, verbatim. */
41
+ const BEGIN_DOCUMENT = `mutation WorkspaceSyncBeginUpload($input: BeginWorkspaceSyncUploadInput!) {
42
+ beginWorkspaceSyncUpload(input: $input) {
43
+ id
44
+ byteLength
45
+ sha256
46
+ partBytes
47
+ partCount
48
+ heldParts
49
+ }
50
+ }`;
51
+ /** The SDK's `WorkspaceSyncPushPart` operation, verbatim. */
52
+ const PART_DOCUMENT = `mutation WorkspaceSyncPushPart($input: PushWorkspaceSyncPartInput!) {
53
+ pushWorkspaceSyncPart(input: $input) {
54
+ id
55
+ byteLength
56
+ sha256
57
+ partBytes
58
+ partCount
59
+ heldParts
60
+ }
61
+ }`;
62
+ /**
63
+ * The multipart part a file travels in, and the variables a push's bundle and
64
+ * a part's bytes answer, each under its file name (GraphQL multipart request
65
+ * spec).
66
+ */
67
+ const FILE_PART = '0';
42
68
  const BUNDLE_VARIABLE = 'variables.input.bundle';
43
69
  const BUNDLE_FILE_NAME = 'serving.bundle';
70
+ const PART_VARIABLE = 'variables.input.part';
71
+ const PART_FILE_NAME = 'serving.bundle.part';
44
72
  /**
45
- * The admin API's three workspace-sync operations (#2781) — the surface
46
- * `forgecart sync` reaches the shop through, over the {@link AdminApiClient}:
47
- * every exchange is bounded by `--timeout` and ends when the run is
48
- * interrupted, and answers are read field by field. Credentials the API
49
- * refuses are a `CliCredentialsRefusal`, which the credential step answers by
50
- * authorizing. A workspace updating to the current version (#2371) is no
51
- * refusal: every operation waits it out and asks again
73
+ * The admin API's workspace-sync operations (#2781) — the reads of the serving
74
+ * branch, the push, and the begin and the parts of a chunked push (factory task
75
+ * 2375) — the surface `forgecart sync` reaches the shop through, over the
76
+ * {@link AdminApiClient}: every exchange is bounded by `--timeout` and ends
77
+ * when the run is interrupted, and answers are read field by field.
78
+ * Credentials the API refuses are a `CliCredentialsRefusal`, which the
79
+ * credential step answers by authorizing. A workspace updating to the current
80
+ * version (#2371) is no refusal: every operation waits it out and asks again
52
81
  * ({@link SyncImageUpdateWait}).
53
82
  */
54
83
  export class WorkspaceSyncClient {
@@ -88,7 +117,34 @@ export class WorkspaceSyncClient {
88
117
  * `envFiles`, file by file; a push without a bundle carries the lines alone.
89
118
  */
90
119
  async push(bundle, envFiles) {
91
- const result = await this.exchange(this.pushRequest(bundle, envFiles), 'pushWorkspaceSync');
120
+ return this.pushed(this.pushRequest(bundle, envFiles));
121
+ }
122
+ /**
123
+ * Begin the chunked push of the bundle `declaration` declares — or, for a
124
+ * bundle the workspace already holds parts of, answer that same upload
125
+ * again — and answer the upload with the parts it holds.
126
+ */
127
+ async beginUpload(declaration) {
128
+ const result = await this.exchange(this.api.jsonRequest(BEGIN_DOCUMENT, { input: declaration }), 'beginWorkspaceSyncUpload');
129
+ return this.readUpload(result);
130
+ }
131
+ /** Send ONE part of the upload `uploadId` as an authenticated upload carrying its sha256. */
132
+ async pushPart(uploadId, part) {
133
+ const input = { uploadId, index: part.index, sha256: part.sha256, part: null };
134
+ const result = await this.exchange(this.fileRequest(PART_DOCUMENT, input, PART_VARIABLE, part.bytes, PART_FILE_NAME), 'pushWorkspaceSyncPart');
135
+ return this.readUpload(result);
136
+ }
137
+ /**
138
+ * Land the parts the upload `uploadId` holds as ONE bundle, with the
139
+ * merchant lines of the env files `envFiles`, file by file — a push naming
140
+ * its upload, carrying no bundle.
141
+ */
142
+ async land(uploadId, envFiles) {
143
+ return this.pushed(this.api.jsonRequest(PUSH_DOCUMENT, { input: { uploadId, envFiles } }));
144
+ }
145
+ /** Send a push and read what it did. */
146
+ async pushed(request) {
147
+ const result = await this.exchange(request, 'pushWorkspaceSync');
92
148
  return {
93
149
  accepted: result.readBoolean('accepted'),
94
150
  servingSha: result.readNullableString('servingSha'),
@@ -104,12 +160,7 @@ export class WorkspaceSyncClient {
104
160
  return this.api.jsonRequest(PUSH_DOCUMENT, { input: { envFiles } });
105
161
  return this.uploadRequest(bundle, envFiles);
106
162
  }
107
- /**
108
- * The push as a GraphQL multipart request: the operation, the map naming the
109
- * bundle's variable, and the bundle itself, declared by its byte length and
110
- * sha256. The admin API reads a multipart request only with the preflight
111
- * header; the boundary is the form's own.
112
- */
163
+ /** The push carrying its bundle whole, declared by its byte length and sha256. */
113
164
  uploadRequest(bundle, envFiles) {
114
165
  const input = {
115
166
  bundle: null,
@@ -117,10 +168,19 @@ export class WorkspaceSyncClient {
117
168
  sha256: createHash('sha256').update(bundle).digest('hex'),
118
169
  envFiles,
119
170
  };
171
+ return this.fileRequest(PUSH_DOCUMENT, input, BUNDLE_VARIABLE, bundle, BUNDLE_FILE_NAME);
172
+ }
173
+ /**
174
+ * An operation carrying a file, as a GraphQL multipart request: the
175
+ * operation with `input`, the map naming the file's `variable`, and the
176
+ * file's `bytes`. The admin API reads a multipart request only with the
177
+ * preflight header; the boundary is the form's own.
178
+ */
179
+ fileRequest(document, input, variable, bytes, fileName) {
120
180
  const form = new FormData();
121
- form.append('operations', JSON.stringify({ query: PUSH_DOCUMENT, variables: { input } }));
122
- form.append('map', JSON.stringify({ [BUNDLE_PART]: [BUNDLE_VARIABLE] }));
123
- form.append(BUNDLE_PART, new Blob([new Uint8Array(bundle)]), BUNDLE_FILE_NAME);
181
+ form.append('operations', JSON.stringify({ query: document, variables: { input } }));
182
+ form.append('map', JSON.stringify({ [FILE_PART]: [variable] }));
183
+ form.append(FILE_PART, new Blob([new Uint8Array(bytes)]), fileName);
124
184
  return {
125
185
  body: form,
126
186
  headers: { ...this.api.authHeaders(), 'apollo-require-preflight': 'true' },
@@ -155,6 +215,17 @@ export class WorkspaceSyncClient {
155
215
  throw new Error('The pulled bundle does not hash to the sha256 it declares; nothing was written.');
156
216
  }
157
217
  }
218
+ /** A chunked push's upload, read field by field. */
219
+ readUpload(result) {
220
+ return {
221
+ id: result.readString('id'),
222
+ byteLength: result.readCount('byteLength'),
223
+ sha256: result.readString('sha256'),
224
+ partBytes: result.readCount('partBytes'),
225
+ partCount: result.readCount('partCount'),
226
+ heldParts: result.readCountList('heldParts'),
227
+ };
228
+ }
158
229
  /** The workspace's env files: one entry each, naming an env file a storefront reads, with its lines. */
159
230
  readEnvFiles(result) {
160
231
  return result.readObjectList('envFiles').map((entry) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-sync.client.js","sourceRoot":"","sources":["../../../src/sync/workspace-sync.client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-sync.client.js","sourceRoot":"","sources":["../../../src/sync/workspace-sync.client.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forgecart/cli",
3
- "version": "2.202610130322.0",
3
+ "version": "2.202610130815.0",
4
4
  "type": "module",
5
5
  "description": "CLI for scaffolding and operating ForgeCart channel storefronts",
6
6
  "bin": {