@paradigma-inc/flywheel 0.2.51 → 0.2.66
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/package.json +1 -1
- package/skills/flywheel-repo/SKILL.md +1 -1
- package/skills/flywheel-repo/references/repository-commands.md +7 -6
- package/src/runtime/required-runtime-commands.json +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-graph.js +19 -2
- package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-graph.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-repository-snapshot.js +94 -42
- package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-repository-snapshot.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/registry/hosted.js +2 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/registry/hosted.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/registry/repository.js +108 -32
- package/src/runtime/vendor/flywheel-cli-dist/commands/registry/repository.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/registry.js +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/registry.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-edit.js +20 -27
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-edit.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-operation.js +7 -0
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-operation.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-output.js +20 -0
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-output.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-projection.js +5 -2
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-projection.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-refusal-hints.js +20 -17
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-refusal-hints.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/tombstone-recovery.js +17 -0
- package/src/runtime/vendor/flywheel-cli-dist/commands/tombstone-recovery.js.map +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/commands/types.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/errors.js +16 -0
- package/src/runtime/vendor/flywheel-cli-dist/errors.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/adapter.js +118 -60
- package/src/runtime/vendor/flywheel-cli-dist/local/adapter.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/errors.js +9 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/errors.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/conflicts.js +140 -8
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/conflicts.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/edge-restoration.js +141 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/edge-restoration.js.map +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/graph-membership.js +351 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/graph-membership.js.map +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/pull.js +25 -11
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/pull.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/replay.js +129 -40
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/replay.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/resolve.js +11 -4
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/resolve.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/revert.js +16 -16
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/revert.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/staging.js +9 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/staging.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/errors.js +21 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/errors.js.map +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/fs/state.js +9 -11
- package/src/runtime/vendor/flywheel-cli-dist/local/fs/state.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/fs/writer-lock.js +38 -13
- package/src/runtime/vendor/flywheel-cli-dist/local/fs/writer-lock.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/bootstrap.js +2 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/bootstrap.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/dispatch.js +16 -16
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/dispatch.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/core.js +3 -3
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/core.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/maintenance.js +7 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/maintenance.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/projections.js +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/projections.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/projection.js +44 -8
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/projection.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/recover-departed.js +60 -11
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/recover-departed.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/purge.js +100 -5
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/purge.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/push.js +8 -4
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/push.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/snapshot-diff.js +14 -24
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/snapshot-diff.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/apply.js +6 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/store/apply.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/archive.js +1 -8
- package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/archive.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/backup.js +2 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/backup.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/restore.js +2 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/restore.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/retained-directory.js +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/retained-directory.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migrate.js +4 -4
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migrate.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/steps.js +8 -3
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/steps.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/versions.js +2 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/versions.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations/009_repository_backup_state.sql +8 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations.js +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/pending.js +10 -5
- package/src/runtime/vendor/flywheel-cli-dist/local/store/pending.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/nodes.js +33 -16
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/nodes.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/rules.js +87 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/rules.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/hosted.js +7 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/hosted.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/replace.js +6 -13
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/replace.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/schema.js +5 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/schema.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/errors.js +29 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/errors.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/schema.js +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/schema.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/store.js +38 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/store.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sync.js +33 -9
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sync.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/workspace.js +8 -5
- package/src/runtime/vendor/flywheel-cli-dist/local/store/workspace.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/main.js +84 -85
- package/src/runtime/vendor/flywheel-cli-dist/main.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/prebuilds/darwin-arm64/node.napi.node +0 -0
- package/src/runtime/vendor/flywheel-cli-dist/prebuilds/darwin-x64/node.napi.node +0 -0
- package/src/runtime/vendor/manifest.json +10 -1
|
@@ -5,9 +5,14 @@ import { SNAPSHOT_BOOLEAN_COLUMNS, SNAPSHOT_TABLES } from "../store/snapshot/sch
|
|
|
5
5
|
import { boundedInteger } from "../store/sqlite/rows.js";
|
|
6
6
|
const COLUMNS = new Map(SNAPSHOT_TABLES.map(([name, columns]) => [name, columns]));
|
|
7
7
|
const TARGET_FIELDS = ["node_id", "scope_node_id", "edge_id", "artifact_id", "containment_id", "child_node_id", "container_node_id", "graph_node_id"];
|
|
8
|
-
|
|
8
|
+
/** Comparison digest of a projected value; the staged diff uses the same function. */
|
|
9
|
+
export function digest(value) {
|
|
9
10
|
return `sha256:${createHash("sha256").update(canonicalBytes(value)).digest("hex")}`;
|
|
10
11
|
}
|
|
12
|
+
/** A node holding a tag, with the digest of its assignment row; the staged diff reports the same holders. */
|
|
13
|
+
export function tagHolder(assignment) {
|
|
14
|
+
return { node_id: assignment.node_id, holder_digest: digest(assignment) };
|
|
15
|
+
}
|
|
11
16
|
function tablesFrom(snapshot) {
|
|
12
17
|
try {
|
|
13
18
|
const payload = parseRepositoryJson(new TextDecoder("utf-8", { fatal: true }).decode(snapshot.canonicalBytes));
|
|
@@ -107,7 +112,7 @@ export function renderProjection(operation, snapshot, arguments_, stagingDigest)
|
|
|
107
112
|
}
|
|
108
113
|
const tables = tablesFrom(snapshot);
|
|
109
114
|
const atHead = snapshot.headCommitId;
|
|
110
|
-
const id = target(arguments_);
|
|
115
|
+
const id = operation === "node:list" ? "" : target(arguments_);
|
|
111
116
|
const metadata = stagingDigest === undefined ? { at_head: atHead } : {
|
|
112
117
|
at_head: atHead, view: "staged", staging_digest: stagingDigest,
|
|
113
118
|
};
|
|
@@ -117,6 +122,35 @@ export function renderProjection(operation, snapshot, arguments_, stagingDigest)
|
|
|
117
122
|
};
|
|
118
123
|
const collection = (field, values, extra = {}) => ({ ...metadata, ...page(atHead, field, values, arguments_, extra, scope) });
|
|
119
124
|
switch (operation) {
|
|
125
|
+
case "node:list": {
|
|
126
|
+
const nodes = rows(tables, "repository_nodes").filter(node => node.lifecycle_state !== "purged");
|
|
127
|
+
const latest = new Map(rows(tables, "repository_node_latest_values").map(row => [row.node_id, row]));
|
|
128
|
+
const containers = new Map(rows(tables, "repository_containments").map(row => [row.child_node_id, row.container_node_id]));
|
|
129
|
+
const childCounts = new Map();
|
|
130
|
+
for (const container of containers.values()) {
|
|
131
|
+
const containerId = container;
|
|
132
|
+
childCounts.set(containerId, (childCounts.get(containerId) ?? 0) + 1);
|
|
133
|
+
}
|
|
134
|
+
const edgeCounts = new Map();
|
|
135
|
+
for (const edge of rows(tables, "repository_semantic_edges")) {
|
|
136
|
+
const graph = edge.graph_node_id;
|
|
137
|
+
edgeCounts.set(graph, (edgeCounts.get(graph) ?? 0) + 1);
|
|
138
|
+
}
|
|
139
|
+
return collection("nodes", nodes.map(node => {
|
|
140
|
+
const values = latest.get(node.node_id);
|
|
141
|
+
if (!values)
|
|
142
|
+
throw new Error("local projection snapshot is invalid");
|
|
143
|
+
const nodeId = node.node_id;
|
|
144
|
+
return {
|
|
145
|
+
node_id: nodeId,
|
|
146
|
+
title: values.title,
|
|
147
|
+
lifecycle_state: node.lifecycle_state,
|
|
148
|
+
container_node_id: containers.get(nodeId) ?? null,
|
|
149
|
+
child_count: childCounts.get(nodeId) ?? 0,
|
|
150
|
+
scoped_edge_count: edgeCounts.get(nodeId) ?? 0,
|
|
151
|
+
};
|
|
152
|
+
}));
|
|
153
|
+
}
|
|
120
154
|
case "node:get": {
|
|
121
155
|
const node = one(tables, "repository_nodes", "node_id", id);
|
|
122
156
|
const latest = node.lifecycle_state === "purged" ? {} : one(tables, "repository_node_latest_values", "node_id", id);
|
|
@@ -127,12 +161,14 @@ export function renderProjection(operation, snapshot, arguments_, stagingDigest)
|
|
|
127
161
|
tag_relation_digests: matching(tables, "repository_tag_assignments", "node_id", id).map(digest),
|
|
128
162
|
};
|
|
129
163
|
}
|
|
130
|
-
case "tag:list":
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
164
|
+
case "tag:list": {
|
|
165
|
+
const assignments = rows(tables, "repository_tag_assignments")
|
|
166
|
+
.filter(row => row.scope_repository_id === snapshot.repositoryId && row.scope_node_id === id);
|
|
167
|
+
return collection("tags", matching(tables, "repository_tag_definitions", "scope_node_id", id).map(tag => ({
|
|
168
|
+
...tag,
|
|
169
|
+
holders: assignments.filter(row => row.tag_id === tag.tag_id).map(tagHolder),
|
|
170
|
+
})));
|
|
171
|
+
}
|
|
136
172
|
case "lineage:list":
|
|
137
173
|
return collection("relations", rows(tables, "repository_lineage")
|
|
138
174
|
.filter(row => row.child_node_id === id ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection.js","sourceRoot":"","sources":["../../../src/local/runtime/projection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"projection.js","sourceRoot":"","sources":["../../../src/local/runtime/projection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { RepositoryServiceError } from "../domain/errors.js";
|
|
2
3
|
import { RepositoryCommit } from "../domain/models/commits.js";
|
|
3
4
|
import { localOperationNodeIds } from "../domain/models/operation-identity.js";
|
|
4
5
|
import { RepositoryOperation } from "../domain/models/operations.js";
|
|
5
|
-
import { conflictContext } from "../domain/rebase/conflicts.js";
|
|
6
|
+
import { conflictContext, conflictOperationKey, conflictsForContext, recheckConflicts } from "../domain/rebase/conflicts.js";
|
|
6
7
|
import { rebaseLocalCommits } from "../domain/rebase/replay.js";
|
|
7
|
-
import { pullBatch } from "../domain/rebase/pull.js";
|
|
8
|
+
import { extendRebaseContext, pullBatch } from "../domain/rebase/pull.js";
|
|
8
9
|
import { artifactDigests, latestStateDigests } from "../domain/service/writes.js";
|
|
9
10
|
import { RetainedRepositoryState } from "../fs/state.js";
|
|
10
11
|
import { withRepositoryWriter } from "../fs/writer-lock.js";
|
|
@@ -238,9 +239,9 @@ function recoveryCommit(original, repositoryId, operations) {
|
|
|
238
239
|
}
|
|
239
240
|
function recoveryContext(sourceStore, sourceRepositoryId, targetRepositoryId) {
|
|
240
241
|
return sourceStore.loadWorkspace(sourceRepositoryId).then(sourceWorkspace => {
|
|
241
|
-
const
|
|
242
|
+
const saved = conflictContext(sourceWorkspace.conflicts);
|
|
242
243
|
const departedNodeIds = new Set();
|
|
243
|
-
for (const commit of
|
|
244
|
+
for (const commit of saved.remoteCommits) {
|
|
244
245
|
for (const operation of commit.operations) {
|
|
245
246
|
if (operation.type === "node.relocate.v1" &&
|
|
246
247
|
operation.payload.source_repository_id === sourceRepositoryId &&
|
|
@@ -249,28 +250,76 @@ function recoveryContext(sourceStore, sourceRepositoryId, targetRepositoryId) {
|
|
|
249
250
|
departedNodeIds.add(operation.payload.node_id);
|
|
250
251
|
}
|
|
251
252
|
}
|
|
252
|
-
if (departedNodeIds.size === 0)
|
|
253
|
-
throw new
|
|
254
|
-
|
|
253
|
+
if (departedNodeIds.size === 0) {
|
|
254
|
+
throw new RepositoryServiceError(`No departure from repository ${sourceRepositoryId} to repository ${targetRepositoryId} was found; no recovery checkout was created.`, {
|
|
255
|
+
code: "repository_departed_recovery_target_mismatch",
|
|
256
|
+
details: { source_repository_id: sourceRepositoryId, requested_repository_id: targetRepositoryId },
|
|
257
|
+
nextAction: "Check the departed node's current repository ID, then retry recovery with that destination.",
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
return { workspace: sourceWorkspace, saved, departedNodeIds };
|
|
255
261
|
});
|
|
256
262
|
}
|
|
257
|
-
|
|
263
|
+
const DEPARTED_NODE_KEY_FAMILIES = {
|
|
264
|
+
departure: true, node: true, "node-field": true, "node-source-timestamps": true,
|
|
265
|
+
};
|
|
266
|
+
/** Conflicts about a departed node itself are settled by moving that node's work to the destination. */
|
|
267
|
+
function settledByDeparture(conflict, departedNodeIds) {
|
|
268
|
+
const key = conflictOperationKey(conflict);
|
|
269
|
+
return DEPARTED_NODE_KEY_FAMILIES[key[0]] === true && departedNodeIds.has(key[1]);
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Recovery finishes the rebase, so it replays commits made while the rebase
|
|
273
|
+
* was open too. It applies no conflict choices in either repository, so it
|
|
274
|
+
* refuses before any write when such a commit adds or changes any conflict
|
|
275
|
+
* that departure does not settle, even one whose work would move to the
|
|
276
|
+
* destination (for example an edge or containment conflict).
|
|
277
|
+
*/
|
|
278
|
+
async function recoverableContext(sourceStore, workspace, saved, departedNodeIds) {
|
|
279
|
+
const context = await extendRebaseContext(sourceStore, workspace, saved);
|
|
280
|
+
if (context === saved)
|
|
281
|
+
return context;
|
|
282
|
+
if (workspace.rebase === null)
|
|
283
|
+
throw new RepositoryServiceError("repository conflict state is corrupt");
|
|
284
|
+
const rebuilt = conflictsForContext(workspace.repositoryId, workspace.rebase.rebaseId, context);
|
|
285
|
+
const unsettled = recheckConflicts(workspace.conflicts.filter(conflict => !settledByDeparture(conflict, departedNodeIds)), rebuilt.filter(conflict => !settledByDeparture(conflict, departedNodeIds)));
|
|
286
|
+
if (unsettled.changed) {
|
|
287
|
+
throw new RepositoryServiceError("Commits made while this rebase was open conflict with pulled changes, and departure recovery cannot apply conflict choices; no recovery checkout was created and nothing changed.", {
|
|
288
|
+
code: "repository_departed_recovery_conflicted",
|
|
289
|
+
details: { rebase_id: workspace.rebase.rebaseId },
|
|
290
|
+
nextAction: "Run flywheel repo:rebase:abort to return to the state before the pull with every local commit and pending edit kept.",
|
|
291
|
+
});
|
|
292
|
+
}
|
|
293
|
+
return context;
|
|
294
|
+
}
|
|
295
|
+
/** Runs a read-only check against the source checkout without taking the writer lock. */
|
|
296
|
+
async function withSourceStore(sourcePath, use) {
|
|
258
297
|
const sourceState = RetainedRepositoryState.open(sourcePath);
|
|
259
298
|
try {
|
|
260
299
|
const sourceStore = new SQLiteRepositoryStore(sourceState, new RepositoryObjectStorage(sourceState));
|
|
261
|
-
|
|
262
|
-
await recoveryContext(sourceStore, sourceIdentity.repositoryId, targetRepositoryId);
|
|
300
|
+
return await use(sourceStore, readRepositoryIdentity(`${sourceState.statePath}/db.sqlite`).repositoryId);
|
|
263
301
|
}
|
|
264
302
|
finally {
|
|
265
303
|
sourceState.close();
|
|
266
304
|
}
|
|
267
305
|
}
|
|
306
|
+
export async function assertDepartedRecoveryTarget(sourcePath, targetRepositoryId) {
|
|
307
|
+
await withSourceStore(sourcePath, (sourceStore, sourceRepositoryId) => recoveryContext(sourceStore, sourceRepositoryId, targetRepositoryId));
|
|
308
|
+
}
|
|
309
|
+
/** Refuses recovery before the destination clone exists; recoverDepartedWork repeats the check under the writer lock. */
|
|
310
|
+
export async function assertRecoverableWork(sourcePath, targetRepositoryId) {
|
|
311
|
+
await withSourceStore(sourcePath, async (sourceStore, sourceRepositoryId) => {
|
|
312
|
+
const { workspace, saved, departedNodeIds } = await recoveryContext(sourceStore, sourceRepositoryId, targetRepositoryId);
|
|
313
|
+
await recoverableContext(sourceStore, workspace, saved, departedNodeIds);
|
|
314
|
+
});
|
|
315
|
+
}
|
|
268
316
|
export async function recoverDepartedWork(sourcePath, destinationPath, targetRepositoryId) {
|
|
269
317
|
return withRepositoryWriter(sourcePath, async (sourceState) => {
|
|
270
318
|
const sourceObjects = new RepositoryObjectStorage(sourceState);
|
|
271
319
|
const sourceStore = new SQLiteRepositoryStore(sourceState, sourceObjects);
|
|
272
320
|
const sourceIdentity = readRepositoryIdentity(`${sourceState.statePath}/db.sqlite`);
|
|
273
|
-
const {
|
|
321
|
+
const { workspace, saved, departedNodeIds } = await recoveryContext(sourceStore, sourceIdentity.repositoryId, targetRepositoryId);
|
|
322
|
+
const context = await recoverableContext(sourceStore, workspace, saved, departedNodeIds);
|
|
274
323
|
const ownership = collectRecoveryOwnership(context, departedNodeIds);
|
|
275
324
|
const destinationCommits = [];
|
|
276
325
|
const sourceCommits = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recover-departed.js","sourceRoot":"","sources":["../../../src/local/runtime/recover-departed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAA8B,MAAM,2BAA2B,CAAC;AAC1F,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAmB/D,SAAS,eAAe,CACtB,SAA0B,EAC1B,QAAiB,EACjB,OAA2B,EAC3B,eAAoC;IAEpC,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO;IACzC,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;IACpF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5E,IAAI,QAAQ,GAAG,CAAC;QAAE,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtD,IAAI,QAAQ,GAAG,KAAK,CAAC,MAAM;QAAE,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAAsB,EACtB,eAAoC;IAEpC,MAAM,SAAS,GAAsB;QACnC,SAAS,EAAE,EAAE,WAAW,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE;QACxD,YAAY,EAAE,EAAE,WAAW,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE;QAC3D,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE;KACrD,CAAC;IACF,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACrD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;QACnD,eAAe,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;IACtF,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,uBAAuB,EAAE,CAAC;QACjD,eAAe,CAAC,SAAS,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;IACrF,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,8BAA8B,EAAE,CAAC;QACxD,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACtB,eAAe,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;YAC5E,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,QAAQ;YAAE,SAAS;QAChG,IAAI,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAE,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC7F,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACrF,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1C,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;YAClC,MAAM,OAAO,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;YACjD,KAAK,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,IAAI;gBACxC,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC;gBAClC,CAAC,OAAO,CAAC,cAAc,EAAE,SAAS,CAAC,YAAY,CAAC;aACxC,EAAE,CAAC;gBACX,IAAI,OAAO,QAAQ,KAAK,QAAQ;oBAC9B,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;oBAC1C,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACxC,eAAe,CAAC,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;gBACvE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1C,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC;YACjD,IAAI,OAAO,UAAU,KAAK,QAAQ;gBAChC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;gBAC/C,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;gBAAE,SAAS;YACvD,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;YACtC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBACrE,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC;gBAClD,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;gBAAE,SAAS;YAC/C,IAAI,KAAK,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;gBAChC,eAAe,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC,CAAC;YACtF,CAAC;iBAAM,IAAI,KAAK,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;gBACvC,IAAI,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACpD,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAClD,CAAC;gBACD,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC/C,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,mBAAmB,CAC1B,SAA8B,EAC9B,SAA4B;IAE5B,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;IAClC,MAAM,QAAQ,GAA0C;QACtD,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC;QAC1C,CAAC,OAAO,CAAC,cAAc,EAAE,SAAS,CAAC,YAAY,CAAC;QAChD,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC;KACnC,CAAC;IACF,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,IAAI,QAAQ,EAAE,CAAC;QACnD,IAAI,OAAO,QAAQ,KAAK,QAAQ;YAAE,SAAS;QAC3C,WAAW,KAAK,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,KAAK,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,WAAW,IAAI,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,WAAW;QAAE,OAAO,aAAa,CAAC;IACtC,IAAI,MAAM;QAAE,OAAO,QAAQ,CAAC;IAC5B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,kBAAkB,CACzB,SAA8B,EAC9B,kBAA0B,EAC1B,eAAoC,EACpC,SAA4B;IAE5B,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;IAClC,MAAM,UAAU,GAAG,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACxE,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACzE,MAAM,kBAAkB,GAAG;QACzB,GAAG,SAAS,CAAC,SAAS,EAAE;QACxB,aAAa,EAAE,kBAAkB;KAClC,CAAC;IAEF,IAAI,WAAW,IAAI,WAAW,EAAE,CAAC;QAC/B,IACE,CAAC,SAAS,CAAC,IAAI,KAAK,gBAAgB,IAAI,SAAS,CAAC,IAAI,KAAK,mBAAmB,CAAC;YAC/E,OAAO,OAAO,CAAC,cAAc,KAAK,QAAQ;YAC1C,OAAO,OAAO,CAAC,aAAa,KAAK,QAAQ;YACzC,CAAC,OAAO,CAAC,oBAAoB,KAAK,SAAS,IAAI,OAAO,CAAC,oBAAoB,KAAK,IAAI;gBAClF,OAAO,CAAC,oBAAoB,KAAK,SAAS,CAAC,YAAY,CAAC,EAC1D,CAAC;YACD,MAAM,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YACnE,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACjE,IAAI,CAAC,cAAc,IAAI,aAAa,EAAE,CAAC;gBACrC,OAAO;oBACL,gBAAgB,EAAE,IAAI;oBACtB,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC;wBACzC,GAAG,kBAAkB;wBACrB,oBAAoB,EAAE,SAAS,CAAC,YAAY;qBAC7C,CAAC;oBACF,IAAI,EAAE,aAAa;iBACpB,CAAC;YACJ,CAAC;YACD,IAAI,cAAc,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrC,OAAO;oBACL,gBAAgB,EAAE,IAAI;oBACtB,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC;wBACzC,GAAG,SAAS,CAAC,SAAS,EAAE;wBACxB,oBAAoB,EAAE,kBAAkB;qBACzC,CAAC;oBACF,IAAI,EAAE,QAAQ;iBACf,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IACE,CAAC,SAAS,CAAC,IAAI,KAAK,oBAAoB,IAAI,SAAS,CAAC,IAAI,KAAK,oBAAoB,CAAC;YACpF,OAAO,OAAO,CAAC,aAAa,KAAK,QAAQ;YACzC,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;YACnC,CAAC,OAAO,CAAC,mBAAmB,KAAK,SAAS,IAAI,OAAO,CAAC,mBAAmB,KAAK,IAAI;gBAChF,OAAO,CAAC,mBAAmB,KAAK,SAAS,CAAC,YAAY,CAAC;YACzD,CAAC,SAAS,CAAC,IAAI,KAAK,oBAAoB,IAAI,OAAO,CAAC,eAAe,KAAK,qBAAqB,CAAC,EAC9F,CAAC;YACD,MAAM,SAAS,GAAG;gBAChB,OAAO,CAAC,OAAO;gBACf,OAAO,CAAC,UAAU;gBAClB,OAAO,CAAC,eAAe;gBACvB,OAAO,CAAC,YAAY;aACrB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;YAChE,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACjE,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/E,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YAChF,IAAI,CAAC,aAAa,IAAI,eAAe,EAAE,CAAC;gBACtC,OAAO;oBACL,gBAAgB,EAAE,IAAI;oBACtB,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC;wBACzC,GAAG,kBAAkB;wBACrB,mBAAmB,EAAE,SAAS,CAAC,YAAY;qBAC5C,CAAC;oBACF,IAAI,EAAE,aAAa;iBACpB,CAAC;YACJ,CAAC;YACD,IAAI,aAAa,IAAI,eAAe,EAAE,CAAC;gBACrC,OAAO;oBACL,gBAAgB,EAAE,IAAI;oBACtB,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC;wBACzC,GAAG,SAAS,CAAC,SAAS,EAAE;wBACxB,mBAAmB,EAAE,kBAAkB;qBACxC,CAAC;oBACF,IAAI,EAAE,QAAQ;iBACf,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO;YACL,gBAAgB,EAAE,IAAI;YACtB,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC,kBAAkB,CAAC;YAC9D,IAAI,EAAE,aAAa;SACpB,CAAC;IACJ,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAChE,CAAC;IACD,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;QACjC,OAAO;YACL,gBAAgB,EAAE,IAAI;YACtB,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC,kBAAkB,CAAC;YAC9D,IAAI,EAAE,aAAa;SACpB,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAChE,CAAC;AAED,SAAS,cAAc,CACrB,QAA0B,EAC1B,YAAoB,EACpB,UAA0C;IAE1C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,gBAAgB,CAAC,MAAM,CAAC;QAC7B,YAAY;QACZ,UAAU;QACV,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,kBAAkB,EAAE,kBAAkB,CAAC,UAAU,CAAC;QAClD,eAAe,EAAE,eAAe,CAAC,UAAU,CAAC;QAC5C,WAAW,EAAE,QAAQ,CAAC,QAAQ;KAC/B,CAAC,CAAC;AACL,CAAC;AAED,SAAS,eAAe,CACtB,WAAkC,EAClC,kBAA0B,EAC1B,kBAA0B;IAK1B,OAAO,WAAW,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE;QAC1E,MAAM,OAAO,GAAG,eAAe,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAC3D,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAC1C,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC3C,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC1C,IACE,SAAS,CAAC,IAAI,KAAK,kBAAkB;oBACrC,SAAS,CAAC,OAAO,CAAC,oBAAoB,KAAK,kBAAkB;oBAC7D,SAAS,CAAC,OAAO,CAAC,oBAAoB,KAAK,kBAAkB;oBAC7D,OAAO,SAAS,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ;oBAC7C,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QACD,IAAI,eAAe,CAAC,IAAI,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAChG,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,UAAkB,EAClB,kBAA0B;IAE1B,MAAM,WAAW,GAAG,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,qBAAqB,CAAC,WAAW,EAAE,IAAI,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC;QACrG,MAAM,cAAc,GAAG,sBAAsB,CAAC,GAAG,WAAW,CAAC,SAAS,YAAY,CAAC,CAAC;QACpF,MAAM,eAAe,CAAC,WAAW,EAAE,cAAc,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;IACtF,CAAC;YAAS,CAAC;QACT,WAAW,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,UAAkB,EAClB,eAAuB,EACvB,kBAA0B;IAE1B,OAAO,oBAAoB,CAAC,UAAU,EAAE,KAAK,EAAC,WAAW,EAAC,EAAE;QAC1D,MAAM,aAAa,GAAG,IAAI,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,IAAI,qBAAqB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAC1E,MAAM,cAAc,GAAG,sBAAsB,CAAC,GAAG,WAAW,CAAC,SAAS,YAAY,CAAC,CAAC;QACpF,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,MAAM,eAAe,CACxD,WAAW,EACX,cAAc,CAAC,YAAY,EAC3B,kBAAkB,CACnB,CAAC;QACF,MAAM,SAAS,GAAG,wBAAwB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QACrE,MAAM,kBAAkB,GAAuB,EAAE,CAAC;QAClD,MAAM,aAAa,GAAuB,EAAE,CAAC;QAC7C,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAiC,CAAC;QAC3E,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAiC,CAAC;QACtE,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YAC5C,MAAM,qBAAqB,GAA0B,EAAE,CAAC;YACxD,MAAM,gBAAgB,GAA0B,EAAE,CAAC;YACnD,KAAK,MAAM,SAAS,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAC5C,MAAM,WAAW,GAAG,kBAAkB,CACpC,SAAS,EACT,kBAAkB,EAClB,eAAe,EACf,SAAS,CACV,CAAC;gBACF,gBAAgB,KAAK,WAAW,CAAC,gBAAgB,CAAC;gBAClD,CAAC,WAAW,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,gBAAgB,CAAC;qBAC5E,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YACjC,CAAC;YACD,MAAM,iBAAiB,GAAG,cAAc,CAAC,QAAQ,EAAE,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;YAC9F,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,EAAE,cAAc,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;YAC7F,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,sBAAsB,CAClD,cAAc,CAAC,YAAY,EAC3B,QAAQ,CAAC,QAAQ,CAClB,CAAC;YACF,MAAM,cAAc,GAAG,iBAAiB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YACxD,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;gBAC/B,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAC3C,yBAAyB,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,GAAG,CAC/D,iBAAiB,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC5C,SAAS,CAAC,WAAW;oBACrB,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,IAAI,GAAG,EAAE;iBACvD,CAAC,CACH,CAAC,CAAC;YACL,CAAC;YACD,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBAC1B,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACjC,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,GAAG,CACrD,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACvC,SAAS,CAAC,WAAW;oBACrB,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,IAAI,GAAG,EAAE;iBACvD,CAAC,CACH,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,CAAC,gBAAgB;YAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QAE5F,MAAM,eAAe,GAAG,MAAM,WAAW,CAAC,aAAa,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACrF,MAAM,aAAa,GAAG,kBAAkB,CACtC,aAAa,EACb,OAAO,CAAC,UAAU,EAClB,UAAU,EAAE,EACZ,IAAI,GAAG,EAAE,EACT,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EAChB,OAAO,CAAC,cAAc,EACtB,oBAAoB,EACpB,OAAO,CAAC,aAAa,CACtB,CAAC;QACF,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,GAAG,CAC/B,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAC7D,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,GAAG,CACnC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAC5D,CAAC;QAEF,uFAAuF;QACvF,uFAAuF;QACvF,wFAAwF;QACxF,oFAAoF;QACpF,qFAAqF;QACrF,iFAAiF;QACjF,yFAAyF;QACzF,iEAAiE;QACjE,MAAM,iBAAiB,GAAG,MAAM,oBAAoB,CAAC,eAAe,EAAE,KAAK,EAAC,gBAAgB,EAAC,EAAE;YAC7F,MAAM,kBAAkB,GAAG,IAAI,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;YACzE,MAAM,gBAAgB,GAAG,IAAI,qBAAqB,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;YACzF,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,GAAG,gBAAgB,CAAC,SAAS,YAAY,CAAC,CAAC;YAC9F,IAAI,mBAAmB,CAAC,YAAY,KAAK,kBAAkB,EAAE,CAAC;gBAC5D,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAClE,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;YAC3E,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAClD,kBAAkB,EAClB,SAAS,CAAC,iBAAiB,CAC5B,CAAC;YACF,MAAM,OAAO,GAAG,kBAAkB,CAChC,kBAAkB,EAClB,SAAS,CAAC,iBAAiB,EAC3B,UAAU,EAAE,EACZ,IAAI,GAAG,EAAE,EACT,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,EAChB,QAAQ,EACR,yBAAyB,EACzB,OAAO,CAAC,aAAa,CACtB,CAAC;YACF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;gBAC7D,MAAM,kBAAkB,CAAC,MAAM,CAC7B,aAAa,CAAC,KAAK,CAAE,EACrB,WAAW,CAAC,KAAK,CAAE,EACnB,0BAA0B,CAC3B,CAAC;YACJ,CAAC;YACD,IAAI,IAAI,GAAG,SAAS,CAAC,iBAAiB,CAAC;YACvC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;gBAC/D,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAE,CAAC;gBACvC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC;oBAChD,YAAY,EAAE,kBAAkB;oBAChC,YAAY,EAAE,IAAI;oBAClB,gBAAgB,EAAE,CAAC,MAAM,CAAC;oBAC1B,iBAAiB,EAAE,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAE;oBACvD,YAAY,EAAE,KAAK;oBACnB,kBAAkB,EAAE,MAAM,CAAC,QAAQ;oBACnC,SAAS,EAAE,IAAI;oBACf,aAAa,EAAE,MAAM,CAAC,QAAQ;iBAC/B,CAAC,CAAC;gBACH,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC9B,CAAC;YACD,OAAO;gBACL,aAAa,EAAE,kBAAkB;gBACjC,oBAAoB,EAAE,cAAc,CAAC,YAAY;gBACjD,IAAI,EAAE,eAAe;gBACrB,UAAU,EAAE,IAAI;gBAChB,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM;aACzC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC;QAChF,MAAM,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC;YACtC,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE,eAAe;YAC1B,OAAO;YACP,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,aAAa,EAAE,GAAG,aAAa,CAAC,OAAO,CAAC;YAC7D,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC,kBAAkB,EAAE,GAAG,aAAa,CAAC,oBAAoB,CAAC;YACpF,aAAa,EAAE,UAAU;YACzB,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC,CAAC;QACJ,OAAO,iBAAiB,CAAC;IAC3B,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"recover-departed.js","sourceRoot":"","sources":["../../../src/local/runtime/recover-departed.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { shellQuote } from "../../../commands/repository-selection.js";
|
|
2
|
+
import { RepositoryServiceError } from "../../domain/errors.js";
|
|
1
3
|
import { isDigest, isUuid } from "../../domain/models/constants.js";
|
|
2
4
|
import { pullIntoStore } from "./pull.js";
|
|
3
5
|
import { counter, repositoryOptions, requireMatchingAssociation, responseRecord } from "./transport.js";
|
|
@@ -20,20 +22,113 @@ function matchingPurgeCommit(commit, repositoryId, purgeId, nodeId, confirmation
|
|
|
20
22
|
}
|
|
21
23
|
return commit;
|
|
22
24
|
}
|
|
25
|
+
const REMOVAL_COMMANDS = {
|
|
26
|
+
lineage: "repo:lineage:remove",
|
|
27
|
+
containment: "repo:containment:remove",
|
|
28
|
+
semantic_edge: "repo:edge:remove",
|
|
29
|
+
tag_definition: "repo:tag:retire",
|
|
30
|
+
tag_assignment: "repo:node-tag:remove",
|
|
31
|
+
artifact: "repo:artifact:detach",
|
|
32
|
+
};
|
|
33
|
+
function describeDependency(dependency, repositoryId) {
|
|
34
|
+
switch (dependency.kind) {
|
|
35
|
+
case "lineage":
|
|
36
|
+
return `lineage ${dependency.parent_node_id} -> ${dependency.child_node_id}` +
|
|
37
|
+
(dependency.parent_repository_id === repositoryId ? "" : ` (parent in repository ${dependency.parent_repository_id})`);
|
|
38
|
+
case "containment":
|
|
39
|
+
return `containment ${dependency.containment_id} (${dependency.container_node_id} contains ${dependency.child_node_id})`;
|
|
40
|
+
case "semantic_edge":
|
|
41
|
+
return `semantic edge ${dependency.edge_id} in graph ${dependency.graph_node_id} (${dependency.source_node_id} -> ${dependency.target_node_id})`;
|
|
42
|
+
case "tag_definition":
|
|
43
|
+
return `tag definition ${dependency.tag_id} scoped to ${dependency.scope_node_id}`;
|
|
44
|
+
case "tag_assignment":
|
|
45
|
+
return `tag ${dependency.tag_id} of scope ${dependency.scope_node_id} assigned to ${dependency.node_id}`;
|
|
46
|
+
case "artifact":
|
|
47
|
+
return `artifact ${dependency.artifact_id}`;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Refuse, before any purge request, what the hosted purge would refuse or
|
|
52
|
+
* could not see: unpublished local changes, a node that is still live or
|
|
53
|
+
* already purged, and relationships in this repository that still reference
|
|
54
|
+
* the node. Only a new purge judges the node; an exact replay of an applied
|
|
55
|
+
* purge does not.
|
|
56
|
+
* A node the local head does not know is left to the hosted purge: when this
|
|
57
|
+
* checkout has not pulled the node's history, the service refuses the stale
|
|
58
|
+
* expected head, and after repo:pull these checks apply to it.
|
|
59
|
+
*/
|
|
60
|
+
async function refuseUnpublishedOrUnpurgeable(context, nodeId, workspace, newPurge) {
|
|
61
|
+
const repository = `--repo ${shellQuote(context.state.rootPath)}`;
|
|
62
|
+
const localHead = workspace.localHeadCommitId;
|
|
63
|
+
const remoteHead = workspace.remoteTrackingHeadCommitId;
|
|
64
|
+
const heads = { node_id: nodeId, local_head: localHead, remote_tracking_head: remoteHead };
|
|
65
|
+
const publish = `flywheel repo:commit ${repository}, flywheel repo:push ${repository}`;
|
|
66
|
+
const purge = `flywheel repo:purge ${nodeId} --confirm ${nodeId} ${repository}`;
|
|
67
|
+
const staged = workspace.staging.operations;
|
|
68
|
+
if (staged.length > 0) {
|
|
69
|
+
const tombstoneStaged = staged.some((operation) => operation.type === "node.tombstone.v1" && operation.payload.node_id === nodeId);
|
|
70
|
+
throw new RepositoryServiceError(`${staged.length} staged operation(s)${tombstoneStaged ? ", including this node's tombstone," : ""} ` +
|
|
71
|
+
`are not committed and pushed, so the purge request for node ${nodeId} was not sent. Purge only acts on pushed history; nothing was changed.`, {
|
|
72
|
+
code: "repository_purge_unpublished_changes",
|
|
73
|
+
details: { ...heads, staged_operation_count: staged.length, tombstone_staged: tombstoneStaged },
|
|
74
|
+
nextAction: `Review the pending batch with flywheel repo:status ${repository}, then run ${publish}, then ${purge}.`,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
if (newPurge) {
|
|
78
|
+
const { lifecycleState, dependencies } = await context.store.loadNodePurgeState(context.repositoryId, nodeId);
|
|
79
|
+
const blocking = dependencies.length === 0 ? "" :
|
|
80
|
+
` ${dependencies.length} relationship(s) in this repository still reference it, and tombstoning does not remove them: ` +
|
|
81
|
+
`${dependencies.map((dependency) => describeDependency(dependency, context.repositoryId)).join("; ")}.`;
|
|
82
|
+
const removal = `remove the listed relationships with ${[...new Set(dependencies.map((dependency) => REMOVAL_COMMANDS[dependency.kind]))].join(", ")}`;
|
|
83
|
+
const tombstoneAndPurge = `flywheel repo:node:tombstone ${nodeId} ${repository}, ${publish}, then ${purge}`;
|
|
84
|
+
const unpushed = localHead === remoteHead ? "" : " Local commits are also not pushed yet.";
|
|
85
|
+
if (lifecycleState === "live") {
|
|
86
|
+
throw new RepositoryServiceError(`Node ${nodeId} is live, so it was not purged: purge permanently erases only a node whose tombstone has been pushed.` +
|
|
87
|
+
`${blocking}${unpushed} Nothing was changed.`, {
|
|
88
|
+
code: "repository_node_purge_requires_tombstone",
|
|
89
|
+
details: { ...heads, lifecycle_state: lifecycleState, blocking_relationships: dependencies },
|
|
90
|
+
nextAction: `${dependencies.length === 0 ? "Run" : `First ${removal}; then run`} ${tombstoneAndPurge}. ` +
|
|
91
|
+
"Until the purge, flywheel repo:node:restore undoes the tombstone; the purge cannot be undone.",
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
if (lifecycleState === "tombstoned" && dependencies.length > 0) {
|
|
95
|
+
throw new RepositoryServiceError(`Node ${nodeId} is tombstoned but was not purged.${blocking}${unpushed} Nothing was changed.`, {
|
|
96
|
+
code: "repository_purge_dependency",
|
|
97
|
+
details: { ...heads, lifecycle_state: lifecycleState, blocking_relationships: dependencies },
|
|
98
|
+
nextAction: `Run flywheel repo:node:restore ${nodeId} ${repository} so the removals can be published, ${removal}, ` +
|
|
99
|
+
`then run ${tombstoneAndPurge}.`,
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
if (lifecycleState === "purged") {
|
|
103
|
+
throw new RepositoryServiceError(`Node ${nodeId} is already purged, so there is nothing left to purge. Nothing was changed.`, {
|
|
104
|
+
code: "repository_node_purged",
|
|
105
|
+
details: { ...heads, lifecycle_state: lifecycleState },
|
|
106
|
+
nextAction: `No further action is needed; flywheel repo:node:get ${nodeId} ${repository} shows the purged node.`,
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
if (localHead === null || remoteHead === null || localHead !== remoteHead) {
|
|
111
|
+
throw new RepositoryServiceError(`${remoteHead === null ? "This repository has no pushed history" : "Local commits are not pushed"}, so the purge request for node ${nodeId} was not sent. ` +
|
|
112
|
+
"Purge only acts on pushed history; nothing was changed.", {
|
|
113
|
+
code: "repository_purge_unpublished_changes",
|
|
114
|
+
details: { ...heads, staged_operation_count: 0 },
|
|
115
|
+
nextAction: `Run flywheel repo:push ${repository}, then ${purge}.`,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
}
|
|
23
119
|
export async function purgeFromStore(context, args, connection) {
|
|
24
120
|
const { purgeId, nodeId, confirmationNodeId } = purgeArguments(args);
|
|
25
121
|
if (!isUuid(purgeId) || !isUuid(nodeId))
|
|
26
122
|
throw new Error("repository purge request is invalid");
|
|
27
123
|
const workspace = await context.store.loadWorkspace(context.repositoryId);
|
|
28
124
|
const currentHead = workspace.remoteTrackingHeadCommitId;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
125
|
+
// An already-applied purge is an exact replay, so its node is no longer
|
|
126
|
+
// expected to be purgeable; look it up before judging the node.
|
|
127
|
+
const existing = matchingPurgeCommit(await context.store.loadCommitByOperationId(context.repositoryId, purgeId), context.repositoryId, purgeId, nodeId, confirmationNodeId);
|
|
128
|
+
await refuseUnpublishedOrUnpurgeable(context, nodeId, workspace, existing === null);
|
|
33
129
|
if (!requireMatchingAssociation(await context.store.loadHostedAssociation(context.repositoryId), connection)) {
|
|
34
130
|
throw new Error("repository hosted association does not match credentials");
|
|
35
131
|
}
|
|
36
|
-
const existing = matchingPurgeCommit(await context.store.loadCommitByOperationId(context.repositoryId, purgeId), context.repositoryId, purgeId, nodeId, confirmationNodeId);
|
|
37
132
|
const expectedHead = existing !== null && isDigest(existing.operations[0].payload.expected_head)
|
|
38
133
|
? existing.operations[0].payload.expected_head
|
|
39
134
|
: currentHead;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"purge.js","sourceRoot":"","sources":["../../../../src/local/runtime/remote/purge.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"purge.js","sourceRoot":"","sources":["../../../../src/local/runtime/remote/purge.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
2
|
import { RepositoryNodeDepartedError } from "../../domain/errors.js";
|
|
3
3
|
import { parseRepositoryJson } from "../../domain/models/encoding.js";
|
|
4
|
-
import { isDigest, isRecord, isUuid } from "../../domain/models/constants.js";
|
|
4
|
+
import { exceedsCharacters, isDigest, isRecord, isUuid } from "../../domain/models/constants.js";
|
|
5
5
|
import { localOperationNodeIds } from "../../domain/models/operation-identity.js";
|
|
6
6
|
import { counter, repositoryOptions, requireMatchingAssociation, responseRecord, uploadObject } from "./transport.js";
|
|
7
7
|
import { unpublishedCommits } from "./unpublished.js";
|
|
8
8
|
function pushArguments(args) {
|
|
9
|
-
|
|
9
|
+
const { push_id, create_remote, name } = args;
|
|
10
|
+
if (Object.keys(args).length !== (name === undefined ? 2 : 3) ||
|
|
11
|
+
typeof push_id !== "string" || typeof create_remote !== "boolean" ||
|
|
12
|
+
(name !== undefined && (typeof name !== "string" || !create_remote || !name.trim() || exceedsCharacters(name, 256)))) {
|
|
10
13
|
throw new Error("invalid internal operation arguments");
|
|
11
14
|
}
|
|
12
|
-
return { pushId:
|
|
15
|
+
return { pushId: push_id, createRemote: create_remote, ...(name === undefined ? {} : { name }) };
|
|
13
16
|
}
|
|
14
17
|
/**
|
|
15
18
|
* Runs push's network round trips (creation/reattachment, negotiation, uploads, publish) without
|
|
@@ -19,7 +22,7 @@ function pushArguments(args) {
|
|
|
19
22
|
* this same push (e.g. the final publish request) fails, matching prior behavior.
|
|
20
23
|
*/
|
|
21
24
|
export async function preparePush(context, args, connection) {
|
|
22
|
-
const { pushId, createRemote } = pushArguments(args);
|
|
25
|
+
const { pushId, createRemote, name } = pushArguments(args);
|
|
23
26
|
if (!isUuid(pushId))
|
|
24
27
|
throw new Error("repository push id is invalid");
|
|
25
28
|
const associationExists = requireMatchingAssociation(await context.store.loadHostedAssociation(context.repositoryId), connection);
|
|
@@ -45,6 +48,7 @@ export async function preparePush(context, args, connection) {
|
|
|
45
48
|
repository_id: context.repositoryId,
|
|
46
49
|
client_id: context.clientId,
|
|
47
50
|
creation_id: pushId,
|
|
51
|
+
...(name === undefined ? {} : { name }),
|
|
48
52
|
}, pushId),
|
|
49
53
|
validateJson: (value) => {
|
|
50
54
|
if (!isRecord(value) || value.repository_id !== context.repositoryId || value.role !== "owner" || value.head !== null ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../../../src/local/runtime/remote/push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../../../src/local/runtime/remote/push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAElF,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACtH,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAQtD,SAAS,aAAa,CAAC,IAAuC;IAC5D,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAC9C,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,aAAa,KAAK,SAAS;QACjE,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACvH,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACnG,CAAC;AAQD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAuB,EACvB,IAAuC,EACvC,UAAsC;IAEtC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACtE,MAAM,iBAAiB,GAAG,0BAA0B,CAClD,MAAM,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,CAAC,YAAY,CAAC,EAC/D,UAAU,CACX,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC1E,IAAI,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACrG,MAAM,SAAS,GAAG,SAAS,CAAC,iBAAiB,CAAC;IAC9C,MAAM,UAAU,GAAG,SAAS,CAAC,0BAA0B,CAAC;IACxD,MAAM,OAAO,GAAG,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IACzG,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACxH,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAChG,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;QAClC,MAAM,mBAAmB,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,IAAI,2BAA2B,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IACD,IAAI,iBAAiB,GAAkB,IAAI,CAAC;IAC5C,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,UAAU,CAAC,MAAM,CAAC,qBAAqB,CAC3C,MAAM,EACN,eAAe,EACf;YACE,GAAG,iBAAiB,CAAC;gBACnB,YAAY,EAAE,CAAC;gBACf,aAAa,EAAE,OAAO,CAAC,YAAY;gBACnC,SAAS,EAAE,OAAO,CAAC,QAAQ;gBAC3B,WAAW,EAAE,MAAM;gBACnB,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;aACxC,EAAE,MAAM,CAAC;YACV,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE;gBACtB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,aAAa,KAAK,OAAO,CAAC,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI;oBACnH,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;oBACxD,OAAO,yCAAyC,CAAC;gBACnD,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;SACF,CACF,CAAC;QACF,MAAM,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAC3F,iBAAiB,GAAG,eAAe,CAAC;QACpC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,OAAO,CAAC,KAAK,CAAC,uBAAuB,CACzC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,EAC5D,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAC1D,CAAC;YACF,iBAAiB,GAAG,QAAQ,CAAC;QAC/B,CAAC;IACH,CAAC;SAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,qBAAqB,CAClF,KAAK,EACL,iBAAiB,kBAAkB,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CACjE,EAAE,oDAAoD,CAAC,CAAC;QACzD,IAAI,eAAe,CAAC,aAAa,KAAK,OAAO,CAAC,YAAY;YACxD,CAAC,eAAe,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC,0BAA0B,EAAE,CAAC;YACtI,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,OAAO,CAAC,KAAK,CAAC,uBAAuB,CACzC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,EAC5D,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAC1D,CAAC;QACF,iBAAiB,GAAG,QAAQ,CAAC;IAC/B,CAAC;IAED,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;QAC7B,IAAI,iBAAiB,KAAK,IAAI;YAAE,MAAM,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;QAC/H,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAChD,CAAC;IACD,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAClJ,MAAM,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtI,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5F,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,aAAa,GAAG,UAAU,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,qBAAqB,CAC9E,MAAM,EACN,iBAAiB,kBAAkB,CAAC,OAAO,CAAC,YAAY,CAAC,kBAAkB,EAC3E,iBAAiB,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,aAAa,CAAC,CAC1G,EAAE,0CAA0C,CAAC,CAAC;QAC/C,IAAI,WAAW,CAAC,cAAc,KAAK,aAAa,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC;YAC7F,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;YACtJ,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;YACzF,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAC5F,KAAK,MAAM,YAAY,IAAI,WAAW,CAAC,eAAe,EAAE,CAAC;YACvD,MAAM,YAAY,CAChB,UAAU,EACV,OAAO,CAAC,YAAY,EACpB,UAAU,EAAE,EACZ,YAAY,EACZ,MAAM,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CACxE,CAAC;YACF,MAAM,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,YAAY,EAAE,EAAE,YAAY,CAAC,CAAC;QAC3H,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,qBAAqB,CAI5D,MAAM,EACN,iBAAiB,kBAAkB,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,EAClE;QACE,GAAG,iBAAiB,CAAC;YACnB,YAAY,EAAE,CAAC;YACf,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,OAAO,CAAC,QAAQ;YAC3B,aAAa,EAAE,UAAU;YACzB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;gBACvC,SAAS,EAAE,MAAM,CAAC,QAAQ;gBAC1B,aAAa,EAAE,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACvD,kBAAkB,EAAE,iBAAiB,CAAC,KAAK,CAAE,CAAC,MAAM;aACrD,CAAC,CAAC;YACH,aAAa,EAAE,YAAY;YAC3B,iBAAiB,EAAE,UAAU;SAC9B,EAAE,MAAM,CAAC;QACV,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE;YACtB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;gBAC3G,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC5D,OAAO,qCAAqC,CAAC;YAC/C,CAAC;YACD,IAAI,CAAC;gBACH,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,qCAAqC,CAAC,CAAC;YACzE,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,qCAAqC,CAAC;YAC/C,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;KACF,CACF,CAAC;IACF,MAAM,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;IACzF,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;AACvH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAuB,EACvB,QAAsB,EACtB,UAAsC;IAEtC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IAClD,0BAA0B,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,UAAU,CAAC,CAAC;IACxG,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC1E,IAAI,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACrG,2FAA2F;QAC3F,0FAA0F;QAC1F,qCAAqC;QACrC,OAAO;YACL,aAAa,EAAE,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,iBAAiB;YAC5E,oBAAoB,EAAE,SAAS,CAAC,0BAA0B,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM;SAChG,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAClC,OAAO,CAAC,YAAY,EACpB,UAAU,EACV,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,eAAe,EACxB,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,CAC5C,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC1E,OAAO;QACL,aAAa,EAAE,OAAO,CAAC,YAAY;QACnC,UAAU,EAAE,SAAS,CAAC,iBAAiB;QACvC,oBAAoB,EAAE,SAAS,CAAC,0BAA0B;QAC1D,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,MAAM;KACnB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAuB,EACvB,IAAuC,EACvC,UAAsC;IAEtC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IAC9D,OAAO,iBAAiB,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;AAC1D,CAAC"}
|