@paradigma-inc/flywheel 0.2.19 → 0.2.20

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 (20) hide show
  1. package/package.json +1 -1
  2. package/src/runtime/vendor/flywheel-cli-dist/local/fs/writer-lock.js +20 -9
  3. package/src/runtime/vendor/flywheel-cli-dist/local/fs/writer-lock.js.map +1 -1
  4. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/bootstrap.js +163 -85
  5. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/bootstrap.js.map +1 -1
  6. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/dispatch.js +103 -6
  7. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/dispatch.js.map +1 -1
  8. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/clone.js +14 -1
  9. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/clone.js.map +1 -1
  10. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/pull.js +53 -18
  11. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/pull.js.map +1 -1
  12. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/push.js +44 -15
  13. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/push.js.map +1 -1
  14. package/src/runtime/vendor/flywheel-cli-dist/local/store/objects.js +29 -0
  15. package/src/runtime/vendor/flywheel-cli-dist/local/store/objects.js.map +1 -1
  16. package/src/runtime/vendor/flywheel-cli-dist/local/store/prepared-objects.js +46 -0
  17. package/src/runtime/vendor/flywheel-cli-dist/local/store/prepared-objects.js.map +1 -0
  18. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/store.js +58 -7
  19. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/store.js.map +1 -1
  20. package/src/runtime/vendor/manifest.json +3 -1
@@ -6,7 +6,8 @@ function objectMode(args) {
6
6
  }
7
7
  return args.object_mode;
8
8
  }
9
- export async function cloneIntoStore(context, args, connection) {
9
+ /** Fetches the clone's transfer session and objects over the network without writing the local snapshot. */
10
+ export async function prepareClone(context, args, connection) {
10
11
  if (await context.store.loadHostedAssociation(context.repositoryId) !== null) {
11
12
  throw new Error("repository hosted association already exists");
12
13
  }
@@ -23,6 +24,14 @@ export async function cloneIntoStore(context, args, connection) {
23
24
  await context.store.installObject(context.repositoryId, objectDigest, await requestObject(connection, context.repositoryId, objectDigest));
24
25
  }
25
26
  }
27
+ return { objectMode: mode, transfer };
28
+ }
29
+ /** Applies an already-fetched clone transfer to the local snapshot; re-validates preconditions immediately before the write. */
30
+ export async function applyPreparedClone(context, prepared, connection) {
31
+ if (await context.store.loadHostedAssociation(context.repositoryId) !== null) {
32
+ throw new Error("repository hosted association already exists");
33
+ }
34
+ const { objectMode: mode, transfer } = prepared;
26
35
  const result = await applyRemotePull(context, transfer.sessionId, mode, transfer, publishedSequence(context.repositoryId, transfer.targetCursor));
27
36
  await context.store.setObjectMode(context.repositoryId, mode);
28
37
  await context.store.attachHostedAssociation(context.repositoryId, connection.baseUrl, connection.profile);
@@ -34,4 +43,8 @@ export async function cloneIntoStore(context, args, connection) {
34
43
  object_mode: mode,
35
44
  };
36
45
  }
46
+ export async function cloneIntoStore(context, args, connection) {
47
+ const prepared = await prepareClone(context, args, connection);
48
+ return applyPreparedClone(context, prepared, connection);
49
+ }
37
50
  //# sourceMappingURL=clone.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clone.js","sourceRoot":"","sources":["../../../../src/local/runtime/remote/clone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEjF,SAAS,UAAU,CAAC,IAAuC;IACzD,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,EAAE,CAAC;QAClG,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,IAAI,CAAC,WAAW,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAuB,EACvB,IAAuC,EACvC,UAAsC;IAEtC,IAAI,MAAM,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7E,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC;QACnC,UAAU;QACV,IAAI,EAAE,OAAO;QACb,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IACH,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACnB,KAAK,MAAM,YAAY,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;YAClD,MAAM,OAAO,CAAC,KAAK,CAAC,aAAa,CAC/B,OAAO,CAAC,YAAY,EACpB,YAAY,EACZ,MAAM,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CACpE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,eAAe,CAClC,OAAO,EACP,QAAQ,CAAC,SAAS,EAClB,IAAI,EACJ,QAAQ,EACR,iBAAiB,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC,CAC/D,CAAC;IACF,MAAM,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAC9D,MAAM,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC1G,OAAO;QACL,aAAa,EAAE,OAAO,CAAC,YAAY;QACnC,SAAS,EAAE,OAAO,CAAC,QAAQ;QAC3B,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,MAAM,EAAE,QAAQ,CAAC,YAAY;QAC7B,WAAW,EAAE,IAAI;KAClB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"clone.js","sourceRoot":"","sources":["../../../../src/local/runtime/remote/clone.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,15 @@ function pullArguments(args) {
9
9
  }
10
10
  return { pullId: args.pull_id, objectMode: args.object_mode };
11
11
  }
12
- export async function pullIntoStore(context, args, connection, requiredCommitId = null) {
12
+ export function discardPreparedPull(prepared) {
13
+ const staging = prepared.objectStaging;
14
+ if (staging === undefined)
15
+ throw new Error("prepared pull objects are already discarded");
16
+ prepared.objectStaging = undefined;
17
+ staging.finish();
18
+ }
19
+ /** Fetches the pull's transfer session and objects over the network, attaching hosted association eagerly since that write is self-guarded. */
20
+ export async function preparePull(context, args, connection, requiredCommitId = null) {
13
21
  const { pullId, objectMode } = pullArguments(args);
14
22
  if (!isUuid(pullId))
15
23
  throw new RepositoryServiceError("pull_id must be UUIDv4");
@@ -31,25 +39,52 @@ export async function pullIntoStore(context, args, connection, requiredCommitId
31
39
  if (!associationExists) {
32
40
  await context.store.attachHostedAssociation(context.repositoryId, connection.baseUrl, connection.profile);
33
41
  }
34
- if (objectMode === "all") {
35
- for (const objectDigest of transfer.objectDigests) {
36
- await context.store.installObject(context.repositoryId, objectDigest, await requestObject(connection, context.repositoryId, objectDigest));
42
+ let objectStaging;
43
+ try {
44
+ if (objectMode === "all") {
45
+ objectStaging = context.objects.createPreparedObjectStaging();
46
+ for (const objectDigest of transfer.objectDigests) {
47
+ await objectStaging.objects.upload(objectDigest, await requestObject(connection, context.repositoryId, objectDigest), "application/octet-stream");
48
+ }
49
+ await context.store.recordSyncPhase(context.repositoryId, "pull", pullId, "objects");
37
50
  }
38
- await context.store.recordSyncPhase(context.repositoryId, "pull", pullId, "objects");
51
+ return { pullId, objectMode, transfer, requiredCommitId, objectStaging };
39
52
  }
40
- const result = await applyRemotePull(context, pullId, objectMode, transfer, publishedSequence(context.repositoryId, transfer.targetCursor), requiredCommitId);
41
- // A pull with nothing new since the last sync never reaches `applySyncAtomic`, so its
42
- // coupled journal completion never runs; complete the entry directly for that case only.
43
- if (transfer.targetHead === workspace.remoteTrackingHeadCommitId) {
44
- await context.store.completeSyncPhase(context.repositoryId, "pull", pullId, "apply");
53
+ catch (error) {
54
+ objectStaging?.finish();
55
+ throw error;
45
56
  }
46
- await context.store.setObjectMode(context.repositoryId, objectMode);
47
- return {
48
- repository_id: context.repositoryId,
49
- local_head: result.head,
50
- remote_tracking_head: result.remoteTrackingHead,
51
- rebase_id: result.rebaseId,
52
- request_id: pullId,
53
- };
57
+ }
58
+ /** Applies an already-fetched transfer to local workspace state; re-validates preconditions immediately before the write. */
59
+ export async function applyPreparedPull(context, prepared, connection) {
60
+ const { pullId, objectMode, transfer, requiredCommitId } = prepared;
61
+ try {
62
+ requireMatchingAssociation(await context.store.loadHostedAssociation(context.repositoryId), connection);
63
+ const workspace = await context.store.loadWorkspace(context.repositoryId);
64
+ if (prepared.objectStaging !== undefined) {
65
+ await context.store.promotePreparedObjects(context.repositoryId, prepared.objectStaging.objects, transfer.objectDigests);
66
+ }
67
+ const result = await applyRemotePull(context, pullId, objectMode, transfer, publishedSequence(context.repositoryId, transfer.targetCursor), requiredCommitId);
68
+ // A no-op pull bypasses the atomic sync write that completes its journal entry.
69
+ if (transfer.targetHead === workspace.remoteTrackingHeadCommitId) {
70
+ await context.store.completeSyncPhase(context.repositoryId, "pull", pullId, "apply");
71
+ }
72
+ await context.store.setObjectMode(context.repositoryId, objectMode);
73
+ return {
74
+ repository_id: context.repositoryId,
75
+ local_head: result.head,
76
+ remote_tracking_head: result.remoteTrackingHead,
77
+ rebase_id: result.rebaseId,
78
+ request_id: pullId,
79
+ };
80
+ }
81
+ finally {
82
+ if (prepared.objectStaging !== undefined)
83
+ discardPreparedPull(prepared);
84
+ }
85
+ }
86
+ export async function pullIntoStore(context, args, connection, requiredCommitId = null) {
87
+ const prepared = await preparePull(context, args, connection, requiredCommitId);
88
+ return applyPreparedPull(context, prepared, connection);
54
89
  }
55
90
  //# sourceMappingURL=pull.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../../../src/local/runtime/remote/pull.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../../../src/local/runtime/remote/pull.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,14 @@ function pushArguments(args) {
9
9
  }
10
10
  return { pushId: args.push_id, createRemote: args.create_remote };
11
11
  }
12
- export async function pushFromStore(context, args, connection) {
12
+ /**
13
+ * Runs push's network round trips (creation/reattachment, negotiation, uploads, publish) without
14
+ * writing workspace head/sequence state. Hosted-association attachment happens here, eagerly,
15
+ * right after its own triggering network call succeeds: that write is self-guarded by its own
16
+ * SQLite transaction (see attachHostedAssociation) and must survive even when a later step in
17
+ * this same push (e.g. the final publish request) fails, matching prior behavior.
18
+ */
19
+ export async function preparePush(context, args, connection) {
13
20
  const { pushId, createRemote } = pushArguments(args);
14
21
  if (!isUuid(pushId))
15
22
  throw new Error("repository push id is invalid");
@@ -42,9 +49,9 @@ export async function pushFromStore(context, args, connection) {
42
49
  }
43
50
  }
44
51
  else if (!associationExists) {
45
- const remoteHead = responseRecord(await connection.client.requestRepositoryJson("GET", `/repositories/${encodeURIComponent(context.repositoryId)}/head`), "repository hosted reattachment verification failed");
46
- if (remoteHead.repository_id !== context.repositoryId ||
47
- (remoteHead.head !== null && !isDigest(remoteHead.head)) || remoteHead.head !== workspace.remoteTrackingHeadCommitId) {
52
+ const remoteHeadCheck = responseRecord(await connection.client.requestRepositoryJson("GET", `/repositories/${encodeURIComponent(context.repositoryId)}/head`), "repository hosted reattachment verification failed");
53
+ if (remoteHeadCheck.repository_id !== context.repositoryId ||
54
+ (remoteHeadCheck.head !== null && !isDigest(remoteHeadCheck.head)) || remoteHeadCheck.head !== workspace.remoteTrackingHeadCommitId) {
48
55
  throw new Error("repository hosted reattachment verification failed");
49
56
  }
50
57
  await context.store.attachHostedAssociation(context.repositoryId, connection.baseUrl, connection.profile, { operation: "push", logicalId: pushId, phase: "attach" });
@@ -55,13 +62,7 @@ export async function pushFromStore(context, args, connection) {
55
62
  if (localHead === remoteHead) {
56
63
  if (lastRecordedPhase !== null)
57
64
  await context.store.completeSyncPhase(context.repositoryId, "push", pushId, lastRecordedPhase);
58
- return {
59
- repository_id: context.repositoryId,
60
- local_head: localHead,
61
- remote_tracking_head: remoteHead,
62
- rebase_id: null,
63
- request_id: pushId,
64
- };
65
+ return { pushId, remoteHead, response: null };
65
66
  }
66
67
  const commits = await unpublishedCommits(context, localHead, remoteHead);
67
68
  const latestValueGroups = await Promise.all(commits.map((commit) => context.store.loadCommitLatestValues(context.repositoryId, commit.commitId)));
@@ -110,14 +111,42 @@ export async function pushFromStore(context, args, connection) {
110
111
  },
111
112
  });
112
113
  await context.store.recordSyncPhase(context.repositoryId, "push", pushId, "push_submit");
113
- const sequence = BigInt(response.receipt_sequence);
114
- await context.store.recordPushResult(context.repositoryId, remoteHead, response.head, sequence, { logicalId: pushId, phase: "head_update" });
114
+ return { pushId, remoteHead, response: { head: response.head, receiptSequence: BigInt(response.receipt_sequence) } };
115
+ }
116
+ /**
117
+ * Applies an already-negotiated push result to local workspace state. The staging-empty
118
+ * precondition only gates a not-yet-published push (nothing server-side to lose by refusing);
119
+ * once the terminal publish request has actually succeeded (`response !== null`), that result
120
+ * must be recorded locally regardless of staging that changed since preparePush ran, since
121
+ * refusing it here cannot undo the publish and would only desync local state from the server.
122
+ */
123
+ export async function applyPreparedPush(context, prepared, connection) {
124
+ const { pushId, remoteHead, response } = prepared;
125
+ requireMatchingAssociation(await context.store.loadHostedAssociation(context.repositoryId), connection);
126
+ if (response === null) {
127
+ const workspace = await context.store.loadWorkspace(context.repositoryId);
128
+ if (workspace.staging.operations.length > 0)
129
+ throw new Error("repository workspace is not pushable");
130
+ // Report the heads read just now under the lock, not the unlocked prepare-time snapshot: a
131
+ // concurrent locked mutation between prepare and apply can have advanced either head even
132
+ // though nothing was published here.
133
+ return {
134
+ repository_id: context.repositoryId, local_head: workspace.localHeadCommitId,
135
+ remote_tracking_head: workspace.remoteTrackingHeadCommitId, rebase_id: null, request_id: pushId,
136
+ };
137
+ }
138
+ await context.store.recordPushResult(context.repositoryId, remoteHead, response.head, response.receiptSequence, { logicalId: pushId, phase: "head_update" });
139
+ const workspace = await context.store.loadWorkspace(context.repositoryId);
115
140
  return {
116
141
  repository_id: context.repositoryId,
117
- local_head: localHead,
118
- remote_tracking_head: response.head,
142
+ local_head: workspace.localHeadCommitId,
143
+ remote_tracking_head: workspace.remoteTrackingHeadCommitId,
119
144
  rebase_id: null,
120
145
  request_id: pushId,
121
146
  };
122
147
  }
148
+ export async function pushFromStore(context, args, connection) {
149
+ const prepared = await preparePush(context, args, connection);
150
+ return applyPreparedPush(context, prepared, connection);
151
+ }
123
152
  //# sourceMappingURL=push.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"push.js","sourceRoot":"","sources":["../../../../src/local/runtime/remote/push.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"push.js","sourceRoot":"","sources":["../../../../src/local/runtime/remote/push.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { fstatSync, futimesSync, readFileSync, readdirSync, writeSync } from "no
3
3
  import { join } from "node:path";
4
4
  import { close, createFileExclusiveAt, fchmod, fsync, fstat, mkdirAt, openDirectoryAt, renameReplaceAt, statAt, unlinkAt, openFileAt, } from "../fs/native.js";
5
5
  import { RepositoryStoreError } from "./sqlite/errors.js";
6
+ import { PreparedObjectStaging } from "./prepared-objects.js";
6
7
  const DIRECTORY_TYPE = 0o040000;
7
8
  const REGULAR_FILE_TYPE = 0o100000;
8
9
  const FILE_TYPE_MASK = 0o170000;
@@ -62,6 +63,34 @@ export class RepositoryObjectStorage {
62
63
  constructor(state) {
63
64
  this.#state = state;
64
65
  }
66
+ createPreparedObjectStaging() {
67
+ this.#state.assertValid();
68
+ return PreparedObjectStaging.create(this.#state, RepositoryObjectStorage);
69
+ }
70
+ async promoteFrom(source, digests) {
71
+ if (digests.length === 0)
72
+ return;
73
+ const names = digests.map(digestName);
74
+ source.#withDirectories(sourceOpen => this.#withDirectories(destinationOpen => {
75
+ const sourceObjects = sourceOpen(source.#state.stateFd, "objects", false);
76
+ const sourceSha256 = sourceObjects === undefined ? undefined : sourceOpen(sourceObjects.fd, "sha256", false);
77
+ if (sourceSha256 === undefined)
78
+ throw objectStoreError("prepared repository object is unavailable");
79
+ const destinationObjects = destinationOpen(this.#state.stateFd, "objects", true);
80
+ const destinationSha256 = destinationOpen(destinationObjects.fd, "sha256", true);
81
+ for (const name of names) {
82
+ const sourceFile = source.#openRegularFile(sourceSha256.fd, name);
83
+ if (sourceFile === undefined)
84
+ throw objectStoreError("prepared repository object is unavailable");
85
+ preserveOperationError(() => undefined, () => source.#finishRegularFile(sourceSha256.fd, name, sourceFile));
86
+ source.#assertDirectory(sourceSha256);
87
+ this.#assertDirectory(destinationSha256);
88
+ renameReplaceAt(sourceSha256.fd, name, destinationSha256.fd, name);
89
+ }
90
+ fsync(sourceSha256.fd);
91
+ fsync(destinationSha256.fd);
92
+ }));
93
+ }
65
94
  async upload(digest, data, _contentType) {
66
95
  void _contentType;
67
96
  const name = digestName(digest);
@@ -1 +1 @@
1
- {"version":3,"file":"objects.js","sourceRoot":"","sources":["../../../src/local/store/objects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACvF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EACL,KAAK,EACL,qBAAqB,EACrB,MAAM,EACN,KAAK,EACL,KAAK,EACL,OAAO,EACP,eAAe,EACf,eAAe,EACf,MAAM,EACN,QAAQ,EAER,UAAU,GACX,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,cAAc,GAAG,QAAQ,CAAC;AAChC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AACnC,MAAM,cAAc,GAAG,QAAQ,CAAC;AAChC,MAAM,sBAAsB,GAAG,KAAK,CAAC;AACrC,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAuBhC,SAAS,OAAO,CAAC,KAAc,EAAE,IAAY;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;AAC/F,CAAC;AAED,SAAS,WAAW,CAAC,IAAoB;IACvC,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK,cAAc,CAAC;AACzD,CAAC;AAED,SAAS,aAAa,CAAC,IAAoB;IACzC,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK,iBAAiB,CAAC;AAC5D,CAAC;AAED,SAAS,YAAY,CAAC,IAAoB,EAAE,KAAe;IACzD,OAAO,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,CAAC;AAC1D,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe,EAAE,KAAe;IACxD,OAAO,IAAI,oBAAoB,CAAC,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,UAAU,CAAC,MAAc;IAChC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,oBAAoB,CAAC,oDAAoD,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,aAAa,CAAC,MAAc;IACnC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,sBAAsB,CAAI,SAAkB,EAAE,OAAmB;IACxE,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,cAAuB,CAAC;IAC5B,IAAI,MAAU,CAAC;IACf,IAAI,CAAC;QACH,MAAM,GAAG,SAAS,EAAE,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,GAAG,IAAI,CAAC;QACd,cAAc,GAAG,KAAK,CAAC;IACzB,CAAC;IACD,IAAI,YAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,YAAY,GAAG,KAAK,CAAC;IACvB,CAAC;IACD,IAAI,MAAM;QAAE,MAAM,cAAc,CAAC;IACjC,IAAI,YAAY,KAAK,SAAS;QAAE,MAAM,YAAY,CAAC;IACnD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,oFAAoF;AACpF,MAAM,OAAO,uBAAuB;IACzB,MAAM,CAA0B;IAEzC,YAAY,KAA8B;QACxC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,IAAgB,EAAE,YAAoB;QACjE,KAAK,YAAY,CAAC;QAClB,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;YAC3E,MAAM,IAAI,oBAAoB,CAAC,sCAAsC,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAE,CAAC;YAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAE,CAAC;YACjD,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAc;QAC3B,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,EAAE;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YAC5D,IAAI,OAAO,KAAK,SAAS;gBAAE,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;YACvD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjD,IAAI,MAAM,KAAK,SAAS;gBAAE,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;YACtD,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACpD,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;YACpD,OAAO,sBAAsB,CAC3B,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EACxC,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CACrD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,SAA8B,EAC9B,OAAiE;QAEjE,KAAK,MAAM,MAAM,IAAI,SAAS;YAAE,UAAU,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,gBAAgB,GAAG,KAAK,CAAC;QACxE,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,EAAE;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACtE,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YAClE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjD,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,gBAAgB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChF,IAAI,mBAAmB,KAAK,SAAS;gBAAE,IAAI,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,CAAC;YAC1F,MAAM,OAAO,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACtE,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YACtE,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,KAAK,SAAS;mBAC1E,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;YAC7E,IAAI,OAAO,CAAC,MAAM;gBAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;YACnD,MAAM,OAAO,GAAG,mBAAoB,CAAC;YACrC,KAAK,MAAM,MAAM,IAAI,SAAS;gBAAE,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9E,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;gBAChC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC7B,IAAI,MAAM,KAAK,SAAS;wBAAE,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBACzD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;YACD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAI,SAAsG;QACxH,MAAM,WAAW,GAAoB,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,CAAC,QAAgB,EAAE,IAAY,EAAE,MAAe,EAA6B,EAAE;YAC1F,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YAC9D,IAAI,SAAS,KAAK,SAAS;gBAAE,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACzD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;QACF,OAAO,sBAAsB,CAC3B,GAAG,EAAE;YACH,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC1B,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC,EACD,GAAG,EAAE;YACH,IAAI,YAAqB,CAAC;YAC1B,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,UAAU,EAAE,EAAE,CAAC;gBACjD,IAAI,CAAC;oBACH,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBACnC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,YAAY,KAAK,KAAK,CAAC;gBACzB,CAAC;gBACD,IAAI,CAAC;oBACH,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBACtB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,YAAY,KAAK,KAAK,CAAC;gBACzB,CAAC;YACH,CAAC;YACD,IAAI,CAAC;gBACH,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,YAAY,KAAK,KAAK,CAAC;YACzB,CAAC;YACD,IAAI,YAAY,KAAK,SAAS;gBAAE,MAAM,YAAY,CAAC;QACrD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,QAAgB,EAAE,IAAY,EAAE,MAAe;QAC5D,IAAI,KAAqB,CAAC;QAC1B,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;gBAAE,MAAM,gBAAgB,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC;YAChH,IAAI,CAAC,MAAM;gBAAE,OAAO,SAAS,CAAC;YAC9B,IAAI,CAAC;gBACH,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC;YAClD,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACrB,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC;oBAAE,MAAM,gBAAgB,CAAC,wCAAwC,EAAE,WAAW,CAAC,CAAC;YACrH,CAAC;YACD,IAAI,CAAC;gBACH,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACjC,CAAC;YAAC,OAAO,YAAY,EAAE,CAAC;gBACtB,MAAM,gBAAgB,CAAC,iDAAiD,EAAE,YAAY,CAAC,CAAC;YAC1F,CAAC;QACH,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC/C,MAAM,gBAAgB,CAAC,uDAAuD,CAAC,CAAC;QAClF,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAAE,MAAM,gBAAgB,CAAC,wCAAwC,CAAC,CAAC;QAC1F,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;QACZ,OAAO,sBAAsB,CAC3B,GAAG,EAAE;YACH,IAAI,CAAC;gBACH,EAAE,GAAG,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC3B,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;oBAC7D,MAAM,gBAAgB,CAAC,wCAAwC,CAAC,CAAC;gBACnE,CAAC;gBACD,MAAM,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAC;gBACnC,MAAM,SAAS,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC7F,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBACjC,EAAE,GAAG,CAAC,CAAC,CAAC;gBACR,OAAO,SAAS,CAAC;YACnB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,oBAAoB;oBAAE,MAAM,KAAK,CAAC;gBACvD,MAAM,gBAAgB,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC,EACD,GAAG,EAAE;YACH,IAAI,EAAE,IAAI,CAAC;gBAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,SAAwB;QACvC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxE,MAAM,gBAAgB,CAAC,wCAAwC,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1E,MAAM,gBAAgB,CAAC,wCAAwC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,gBAAgB,CAAC,QAAgB,EAAE,IAAY;QAC7C,IAAI,KAAqB,CAAC;QAC1B,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;gBAAE,OAAO,SAAS,CAAC;YAC/C,MAAM,gBAAgB,CAAC,4CAA4C,EAAE,KAAK,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC/C,MAAM,gBAAgB,CAAC,kDAAkD,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;YAAE,MAAM,gBAAgB,CAAC,mCAAmC,CAAC,CAAC;QACvF,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;QACZ,OAAO,sBAAsB,CAC3B,GAAG,EAAE;YACH,IAAI,CAAC;gBACH,EAAE,GAAG,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC3B,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;oBAC/D,MAAM,gBAAgB,CAAC,mCAAmC,CAAC,CAAC;gBAC9D,CAAC;gBACD,MAAM,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;gBAC9B,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClF,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAC1D,MAAM,MAAM,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;gBAChC,EAAE,GAAG,CAAC,CAAC,CAAC;gBACR,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,oBAAoB;oBAAE,MAAM,KAAK,CAAC;gBACvD,MAAM,gBAAgB,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;YACrE,CAAC;QACH,CAAC,EACD,GAAG,EAAE;YACH,IAAI,EAAE,IAAI,CAAC;gBAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,kBAAkB,CAAC,QAAgB,EAAE,IAAY,EAAE,QAAkB;QACnE,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;YAChE,MAAM,gBAAgB,CAAC,mCAAmC,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,kBAAkB,CAAC,QAAgB,EAAE,IAAY,EAAE,IAAwC;QACzF,sBAAsB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7G,CAAC;IAGD,QAAQ,CAAC,SAAwB,EAAE,IAAY,EAAE,IAAgB;QAC/D,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC;QACrB,IAAI,aAAiC,CAAC;QACtC,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,sBAAsB,CACpB,GAAG,EAAE;YACH,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;gBAChD,aAAa,GAAG,YAAY,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9D,IAAI,CAAC;oBACH,WAAW,GAAG,qBAAqB,CAAC,SAAS,CAAC,EAAE,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAC;oBACpF,MAAM;gBACR,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;wBAAE,MAAM,gBAAgB,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;gBACpG,CAAC;YACH,CAAC;YACD,IAAI,WAAW,GAAG,CAAC,IAAI,aAAa,KAAK,SAAS;gBAAE,MAAM,gBAAgB,CAAC,mCAAmC,CAAC,CAAC;YAChH,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;YACvC,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,OAAO,MAAM,GAAG,IAAI,CAAC,UAAU;gBAAE,MAAM,IAAI,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC;YAC1G,KAAK,CAAC,WAAW,CAAC,CAAC;YACnB,KAAK,CAAC,WAAW,CAAC,CAAC;YACnB,WAAW,GAAG,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;YACjC,eAAe,CAAC,SAAS,CAAC,EAAE,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACjE,SAAS,GAAG,IAAI,CAAC;YACjB,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACpB,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC5D,IAAI,SAAS,KAAK,SAAS;gBAAE,MAAM,gBAAgB,CAAC,mCAAmC,CAAC,CAAC;YACzF,sBAAsB,CACpB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAC7D,CAAC;QACJ,CAAC,EACD,GAAG,EAAE;YACH,IAAI,YAAqB,CAAC;YAC1B,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,KAAK,CAAC,WAAW,CAAC,CAAC;gBACrB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,YAAY,KAAK,KAAK,CAAC;gBACzB,CAAC;YACH,CAAC;YACD,IAAI,CAAC,SAAS,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAC9C,IAAI,CAAC;oBACH,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;oBACtC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBACtB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;wBAAE,YAAY,KAAK,KAAK,CAAC;gBACxD,CAAC;YACH,CAAC;YACD,IAAI,YAAY,KAAK,SAAS;gBAAE,MAAM,YAAY,CAAC;QACrD,CAAC,CACF,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,SAAwB,EAAE,IAAY;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACvD,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO;QAC/B,sBAAsB,CACpB,GAAG,EAAE;YACH,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3D,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC7B,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC,EACD,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CACrB,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,SAAwB;QACnC,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACjC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACvD,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,EAAE,CAAC;YAClC,OAAO,sBAAsB,CAC3B,GAAG,EAAE,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,EACxB,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CACxD,CAAC;QACJ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;IAED,wBAAwB,CAAC,SAAwB;QAC/C,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,KAAK,QAAQ;YACtC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC;YAClD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAC7D,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAC/C,MAAM,gBAAgB,CAAC,kDAAkD,CAAC,CAAC;YAC7E,CAAC;YACD,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBACvD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,sBAAsB,CACpB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CACxD,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAED,gBAAgB,CAAC,SAAwB,EAAE,IAAY,EAAE,MAAc;QACrE,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACvD,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QACrC,OAAO,sBAAsB,CAC3B,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,IAAI,MAAM,EAC1C,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CACxD,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,SAAwB,EAAE,IAAY,EAAE,GAAS;QAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,sBAAsB,CACpB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAC5D,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;QACZ,sBAAsB,CACpB,GAAG,EAAE;YACH,IAAI,CAAC;gBACH,EAAE,GAAG,qBAAqB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC;YACpE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;oBAC7B,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;oBACxC,OAAO;gBACT,CAAC;gBACD,MAAM,gBAAgB,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAC;YAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;YAC3B,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;gBAAE,MAAM,gBAAgB,CAAC,mCAAmC,CAAC,CAAC;YAC1F,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YACtD,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1B,KAAK,CAAC,EAAE,CAAC,CAAC;YACV,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC,EACD,GAAG,EAAE;YACH,IAAI,EAAE,IAAI,CAAC;gBAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC,CACF,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"objects.js","sourceRoot":"","sources":["../../../src/local/store/objects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { mkdirAt } from "../fs/native.js";
2
+ import { RetainedRepositoryState } from "../fs/state.js";
3
+ import { RetainedPrivateDirectory } from "./backup/retained-directory.js";
4
+ const PRIVATE_DIRECTORY_MODE = 0o700;
5
+ /** Owns one private, same-filesystem object store until its prepared pull is consumed. */
6
+ export class PreparedObjectStaging {
7
+ #directory;
8
+ #state;
9
+ objects;
10
+ #finished = false;
11
+ constructor(directory, state, objects) {
12
+ this.#directory = directory;
13
+ this.#state = state;
14
+ this.objects = objects;
15
+ }
16
+ static create(state, ObjectStorage) {
17
+ const directory = RetainedPrivateDirectory.create(state.statePath, ".flywheel-pull-objects-");
18
+ let preparedState;
19
+ try {
20
+ mkdirAt(directory.fd, ".flywheel", PRIVATE_DIRECTORY_MODE);
21
+ preparedState = RetainedRepositoryState.open(directory.path);
22
+ return new PreparedObjectStaging(directory, preparedState, new ObjectStorage(preparedState));
23
+ }
24
+ catch (error) {
25
+ try {
26
+ preparedState?.close();
27
+ }
28
+ finally {
29
+ directory.finish();
30
+ }
31
+ throw error;
32
+ }
33
+ }
34
+ finish() {
35
+ if (this.#finished)
36
+ throw new Error("prepared pull objects are already finished");
37
+ this.#finished = true;
38
+ try {
39
+ this.#state.close();
40
+ }
41
+ finally {
42
+ this.#directory.finish();
43
+ }
44
+ }
45
+ }
46
+ //# sourceMappingURL=prepared-objects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepared-objects.js","sourceRoot":"","sources":["../../../src/local/store/prepared-objects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAG1E,MAAM,sBAAsB,GAAG,KAAK,CAAC;AAErC,0FAA0F;AAC1F,MAAM,OAAO,qBAAqB;IACvB,UAAU,CAA2B;IACrC,MAAM,CAA0B;IAChC,OAAO,CAA0B;IAC1C,SAAS,GAAG,KAAK,CAAC;IAElB,YAAoB,SAAmC,EAAE,KAA8B,EAAE,OAAgC;QACvH,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,MAAM,CACX,KAA8B,EAC9B,aAA8E;QAE9E,MAAM,SAAS,GAAG,wBAAwB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;QAC9F,IAAI,aAAkD,CAAC;QACvD,IAAI,CAAC;YACH,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;YAC3D,aAAa,GAAG,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC7D,OAAO,IAAI,qBAAqB,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC;QAC/F,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,aAAa,EAAE,KAAK,EAAE,CAAC;YACzB,CAAC;oBAAS,CAAC;gBACT,SAAS,CAAC,MAAM,EAAE,CAAC;YACrB,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAClF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;CACF"}
@@ -30,6 +30,32 @@ function assertSnapshotMatches(repositoryId, expectedHead, snapshot) {
30
30
  throw new RepositoryStoreError("projection replacement does not match head");
31
31
  }
32
32
  }
33
+ /**
34
+ * Proves that `ancestor` occurs on the persisted single-parent chain ending at `descendant`.
35
+ * UNION bounds traversal through a cycle; ambiguous or missing parent links cannot prove ancestry.
36
+ */
37
+ function isAncestorIn(database, repositoryId, ancestor, descendant) {
38
+ if (descendant === null)
39
+ return false;
40
+ if (ancestor === descendant)
41
+ return true;
42
+ const row = getRow(database.prepare(`
43
+ WITH RECURSIVE ancestry(commit_id) AS (
44
+ SELECT ?
45
+ UNION
46
+ SELECT parents.parent_commit_id
47
+ FROM ancestry
48
+ JOIN repository_commit_parents AS parents
49
+ ON parents.repository_id = ? AND parents.commit_id = ancestry.commit_id
50
+ WHERE ancestry.commit_id <> ?
51
+ AND (SELECT count(*) FROM repository_commit_parents AS alternatives
52
+ WHERE alternatives.repository_id = parents.repository_id
53
+ AND alternatives.commit_id = parents.commit_id) = 1
54
+ )
55
+ SELECT 1 AS found FROM ancestry WHERE commit_id = ? LIMIT 1
56
+ `), descendant, repositoryId, ancestor, ancestor);
57
+ return row?.found === 1;
58
+ }
33
59
  /** Local v1 SQLite store scoped to the command's already-retained repository state. */
34
60
  export class SQLiteRepositoryStore {
35
61
  #state;
@@ -150,6 +176,21 @@ export class SQLiteRepositoryStore {
150
176
  runSql(database.prepare("UPDATE repository_object_availability SET availability = 'local' WHERE repository_id = ? AND digest = ?"), repositoryId, digest);
151
177
  });
152
178
  }
179
+ async promotePreparedObjects(repositoryId, prepared, digests) {
180
+ if (!digests.every(digest => canonicalDigest.test(digest))) {
181
+ throw new RepositoryStoreError("object digest must be canonical sha256");
182
+ }
183
+ if (this.#objects === null)
184
+ throw new RepositoryStoreError("repository object storage is not configured");
185
+ withReadConnection(this.#state, database => verifyFormat(database, repositoryId));
186
+ await this.#objects.promoteFrom(prepared, digests);
187
+ withWriteConnection(this.#state, database => {
188
+ verifyFormat(database, repositoryId);
189
+ const markAvailable = database.prepare("UPDATE repository_object_availability SET availability = 'local' WHERE repository_id = ? AND digest = ?");
190
+ for (const digest of digests)
191
+ runSql(markAvailable, repositoryId, digest);
192
+ });
193
+ }
153
194
  async loadObjectBytes(repositoryId, digest) {
154
195
  if (this.#objects === null)
155
196
  throw new RepositoryStoreError("repository object storage is not configured");
@@ -248,15 +289,25 @@ export class SQLiteRepositoryStore {
248
289
  database.exec("BEGIN IMMEDIATE");
249
290
  try {
250
291
  const workspace = workspaceStateIn(database, repositoryId);
251
- if (workspace.remoteTrackingHeadCommitId !== expectedRemoteHead || workspace.localHeadCommitId !== publishedHead ||
252
- typeof publishedSequence !== "bigint" || publishedSequence < workspace.lastPublishedSequence) {
292
+ if (typeof publishedSequence !== "bigint" || publishedSequence < 0n) {
293
+ throw new RepositoryStoreError("repository push precondition changed");
294
+ }
295
+ if (workspace.remoteTrackingHeadCommitId === expectedRemoteHead) {
296
+ if (publishedSequence < workspace.lastPublishedSequence ||
297
+ !isAncestorIn(database, repositoryId, publishedHead, workspace.localHeadCommitId)) {
298
+ throw new RepositoryStoreError("repository push precondition changed");
299
+ }
300
+ const updatedAt = timestamp();
301
+ const heads = runSql(database.prepare("UPDATE repository_heads SET remote_tracking_commit_id = ?, updated_at = ? WHERE repository_id = ?"), publishedHead, updatedAt, repositoryId);
302
+ const sync = runSql(database.prepare("UPDATE repository_sync_state SET last_published_sequence = ?, updated_at = ? WHERE repository_id = ?"), publishedSequence, updatedAt, repositoryId);
303
+ if (heads.changes !== 1 || sync.changes !== 1) {
304
+ throw new RepositoryStoreError("repository push state is missing");
305
+ }
306
+ }
307
+ else if (!isAncestorIn(database, repositoryId, publishedHead, workspace.remoteTrackingHeadCommitId) ||
308
+ publishedSequence > workspace.lastPublishedSequence) {
253
309
  throw new RepositoryStoreError("repository push precondition changed");
254
310
  }
255
- const updatedAt = timestamp();
256
- const heads = runSql(database.prepare("UPDATE repository_heads SET remote_tracking_commit_id = ?, updated_at = ? WHERE repository_id = ?"), publishedHead, updatedAt, repositoryId);
257
- const sync = runSql(database.prepare("UPDATE repository_sync_state SET last_published_sequence = ?, updated_at = ? WHERE repository_id = ?"), publishedSequence, updatedAt, repositoryId);
258
- if (heads.changes !== 1 || sync.changes !== 1)
259
- throw new RepositoryStoreError("repository push state is missing");
260
311
  if (journal !== undefined)
261
312
  completeSyncJournalEntry(database, repositoryId, "push", journal.logicalId, journal.phase);
262
313
  database.exec("COMMIT");
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/local/store/sqlite/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/local/store/sqlite/store.ts"],"names":[],"mappings":"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"}