@intentic/machine 1.316.0 → 1.317.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +67 -6
- package/dist/agent-trial.d.ts +25 -0
- package/dist/agent-trial.d.ts.map +1 -0
- package/dist/agent-trial.js +132 -0
- package/dist/agent-trial.js.map +1 -0
- package/dist/autostart/autostart.d.ts.map +1 -0
- package/dist/{autostart.js → autostart/autostart.js} +1 -1
- package/dist/autostart/autostart.js.map +1 -0
- package/dist/autostart/legacy-autostart.d.ts +4 -0
- package/dist/autostart/legacy-autostart.d.ts.map +1 -0
- package/dist/autostart/legacy-autostart.js +33 -0
- package/dist/autostart/legacy-autostart.js.map +1 -0
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +3 -1
- package/dist/commands.js.map +1 -1
- package/dist/device/grant.d.ts +284 -0
- package/dist/device/grant.d.ts.map +1 -0
- package/dist/device/grant.js +15 -0
- package/dist/device/grant.js.map +1 -0
- package/dist/device/mcp.d.ts.map +1 -1
- package/dist/device/mcp.js +5 -2
- package/dist/device/mcp.js.map +1 -1
- package/dist/device/router.d.ts +3 -2
- package/dist/device/router.d.ts.map +1 -1
- package/dist/device/router.js +20 -6
- package/dist/device/router.js.map +1 -1
- package/dist/device/sandbox-cli.d.ts +6 -0
- package/dist/device/sandbox-cli.d.ts.map +1 -0
- package/dist/device/sandbox-cli.js +76 -0
- package/dist/device/sandbox-cli.js.map +1 -0
- package/dist/device/sandbox-rounds/auto-backup.d.ts +13 -0
- package/dist/device/sandbox-rounds/auto-backup.d.ts.map +1 -0
- package/dist/device/sandbox-rounds/auto-backup.js +97 -0
- package/dist/device/sandbox-rounds/auto-backup.js.map +1 -0
- package/dist/device/sandbox-rounds/auto-prepare.d.ts +11 -0
- package/dist/device/sandbox-rounds/auto-prepare.d.ts.map +1 -0
- package/dist/device/sandbox-rounds/auto-prepare.js +20 -0
- package/dist/device/sandbox-rounds/auto-prepare.js.map +1 -0
- package/dist/device/sandbox-rounds/ic-rounds.d.ts +23 -0
- package/dist/device/sandbox-rounds/ic-rounds.d.ts.map +1 -0
- package/dist/device/sandbox-rounds/ic-rounds.js +78 -0
- package/dist/device/sandbox-rounds/ic-rounds.js.map +1 -0
- package/dist/device/sandbox-rounds/probation-watch.d.ts +32 -0
- package/dist/device/sandbox-rounds/probation-watch.d.ts.map +1 -0
- package/dist/device/sandbox-rounds/probation-watch.js +60 -0
- package/dist/device/sandbox-rounds/probation-watch.js.map +1 -0
- package/dist/device/sandbox-rounds/swap-records.d.ts +14 -0
- package/dist/device/sandbox-rounds/swap-records.d.ts.map +1 -0
- package/dist/device/sandbox-rounds/swap-records.js +45 -0
- package/dist/device/sandbox-rounds/swap-records.js.map +1 -0
- package/dist/device/tools/agent.d.ts.map +1 -1
- package/dist/device/tools/agent.js +13 -0
- package/dist/device/tools/agent.js.map +1 -1
- package/dist/device/tools/command-ledger.d.ts +14 -0
- package/dist/device/tools/command-ledger.d.ts.map +1 -0
- package/dist/device/tools/command-ledger.js +85 -0
- package/dist/device/tools/command-ledger.js.map +1 -0
- package/dist/device/tools/ic-binary.d.ts +1 -1
- package/dist/device/tools/ic-binary.d.ts.map +1 -1
- package/dist/device/tools/ic-binary.js +8 -3
- package/dist/device/tools/ic-binary.js.map +1 -1
- package/dist/device/tools/sandboxes.d.ts +9 -3
- package/dist/device/tools/sandboxes.d.ts.map +1 -1
- package/dist/device/tools/sandboxes.js +67 -20
- package/dist/device/tools/sandboxes.js.map +1 -1
- package/dist/device/tools/shell.d.ts +1 -0
- package/dist/device/tools/shell.d.ts.map +1 -1
- package/dist/device/tools/shell.js +15 -1
- package/dist/device/tools/shell.js.map +1 -1
- package/dist/environments/auto-upgrade.d.ts +2 -0
- package/dist/environments/auto-upgrade.d.ts.map +1 -1
- package/dist/environments/auto-upgrade.js +15 -0
- package/dist/environments/auto-upgrade.js.map +1 -1
- package/dist/environments/children.js +1 -1
- package/dist/environments/children.js.map +1 -1
- package/dist/environments/commands.d.ts +2 -0
- package/dist/environments/commands.d.ts.map +1 -1
- package/dist/environments/commands.js +46 -10
- package/dist/environments/commands.js.map +1 -1
- package/dist/environments/machine-upgrade.d.ts +2 -0
- package/dist/environments/machine-upgrade.d.ts.map +1 -1
- package/dist/environments/machine-upgrade.js +17 -2
- package/dist/environments/machine-upgrade.js.map +1 -1
- package/dist/environments/machine.d.ts +6 -0
- package/dist/environments/machine.d.ts.map +1 -1
- package/dist/environments/machine.js.map +1 -1
- package/dist/release.d.ts.map +1 -1
- package/dist/release.js +1 -6
- package/dist/release.js.map +1 -1
- package/dist/resident.d.ts +1 -0
- package/dist/resident.d.ts.map +1 -1
- package/dist/resident.js +30 -6
- package/dist/resident.js.map +1 -1
- package/dist/supervision.d.ts +1 -0
- package/dist/supervision.d.ts.map +1 -1
- package/dist/supervision.js +17 -1
- package/dist/supervision.js.map +1 -1
- package/dist/sync/commands.d.ts +1 -0
- package/dist/sync/commands.d.ts.map +1 -1
- package/dist/sync/commands.js +30 -7
- package/dist/sync/commands.js.map +1 -1
- package/dist/sync/config.d.ts +2 -0
- package/dist/sync/config.d.ts.map +1 -1
- package/dist/sync/config.js +3 -0
- package/dist/sync/config.js.map +1 -1
- package/dist/sync/mirror.d.ts +3 -1
- package/dist/sync/mirror.d.ts.map +1 -1
- package/dist/sync/mirror.js +72 -20
- package/dist/sync/mirror.js.map +1 -1
- package/dist/sync/mutagen.d.ts +13 -2
- package/dist/sync/mutagen.d.ts.map +1 -1
- package/dist/sync/mutagen.js +50 -13
- package/dist/sync/mutagen.js.map +1 -1
- package/dist/sync/ssh.d.ts +3 -0
- package/dist/sync/ssh.d.ts.map +1 -1
- package/dist/sync/ssh.js +30 -1
- package/dist/sync/ssh.js.map +1 -1
- package/dist/sync/swap-pause.d.ts +10 -0
- package/dist/sync/swap-pause.d.ts.map +1 -0
- package/dist/sync/swap-pause.js +29 -0
- package/dist/sync/swap-pause.js.map +1 -0
- package/dist/sync/symlinks.d.ts +8 -0
- package/dist/sync/symlinks.d.ts.map +1 -0
- package/dist/sync/symlinks.js +30 -0
- package/dist/sync/symlinks.js.map +1 -0
- package/dist/upgrade.d.ts.map +1 -1
- package/dist/upgrade.js +18 -7
- package/dist/upgrade.js.map +1 -1
- package/package.json +8 -8
- package/dist/autostart.d.ts.map +0 -1
- package/dist/autostart.js.map +0 -1
- package/dist/device/auto-prepare.d.ts +0 -18
- package/dist/device/auto-prepare.d.ts.map +0 -1
- package/dist/device/auto-prepare.js +0 -85
- package/dist/device/auto-prepare.js.map +0 -1
- /package/dist/{autostart.d.ts → autostart/autostart.d.ts} +0 -0
package/dist/supervision.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { rm } from "node:fs/promises";
|
|
2
2
|
import { pollUntil } from "@intentic/base/async";
|
|
3
3
|
import { autostart, cliLauncher, livePidRecord, releasePidFile, spawnDetached, stopProcess, } from "@intentic/local-agent";
|
|
4
|
-
import {
|
|
4
|
+
import { recordStopped } from "./agent-trial.js";
|
|
5
|
+
import { MACHINE_AUTOSTART } from "./autostart/autostart.js";
|
|
5
6
|
import { runLogPath, runPidPath } from "./config.js";
|
|
6
7
|
import { linkStatePath } from "./device/config.js";
|
|
8
|
+
import { CUTOVER_HOLDS_MS, readSwapRecords, swapsUnderway } from "./device/sandbox-rounds/swap-records.js";
|
|
7
9
|
import { attachToWindows, WINDOWS_SUPERVISOR } from "./environments/machine.js";
|
|
8
10
|
import { mirrorHeartbeatPath } from "./sync/config.js";
|
|
9
11
|
export const machineLauncher = () => cliLauncher("intentic-machine");
|
|
@@ -33,6 +35,7 @@ export const stopResident = async () => {
|
|
|
33
35
|
return undefined;
|
|
34
36
|
}
|
|
35
37
|
await stopProcess(held.pid, STOP_TIMEOUT_MS);
|
|
38
|
+
await recordStopped(held.pid);
|
|
36
39
|
if (await releasePidFile(runPidPath, held.pid)) {
|
|
37
40
|
await rm(mirrorHeartbeatPath, { force: true });
|
|
38
41
|
await rm(linkStatePath, { force: true });
|
|
@@ -73,7 +76,20 @@ export const startResident = async (log) => {
|
|
|
73
76
|
const pid = await spawnDetached(runLogPath, machineLauncher(), MACHINE_AUTOSTART.foregroundArgs);
|
|
74
77
|
log(`machine agent running in the background (pid ${pid}). Details: ${runLogPath}`);
|
|
75
78
|
};
|
|
79
|
+
const SWAP_POLL_MS = 5_000;
|
|
80
|
+
export const waitOutSwaps = async (log) => {
|
|
81
|
+
let said = "";
|
|
82
|
+
await pollUntil(async () => {
|
|
83
|
+
const swapping = swapsUnderway(await readSwapRecords(), Date.now()).join(", ");
|
|
84
|
+
if (swapping !== "" && swapping !== said) {
|
|
85
|
+
log(`Waiting for ${swapping} to finish swapping before the agent restarts…`);
|
|
86
|
+
}
|
|
87
|
+
said = swapping;
|
|
88
|
+
return swapping === "";
|
|
89
|
+
}, { intervalMs: SWAP_POLL_MS, timeoutMs: CUTOVER_HOLDS_MS });
|
|
90
|
+
};
|
|
76
91
|
export const restartResident = async (log) => {
|
|
92
|
+
await waitOutSwaps(log);
|
|
77
93
|
await stopResident();
|
|
78
94
|
await startResident(log);
|
|
79
95
|
};
|
package/dist/supervision.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supervision.js","sourceRoot":"","sources":["../src/supervision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAEH,SAAS,EAET,WAAW,EACX,aAAa,EAGb,cAAc,EACd,aAAa,EACb,WAAW,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"supervision.js","sourceRoot":"","sources":["../src/supervision.ts"],"names":[],"mappings":"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"}
|
package/dist/sync/commands.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ export declare const enrollKey: (sandboxUrl: string, pairToken: string, key: str
|
|
|
13
13
|
}) => Promise<{
|
|
14
14
|
syncToken: string;
|
|
15
15
|
mode: SyncMode;
|
|
16
|
+
hostKey: string | undefined;
|
|
16
17
|
}>;
|
|
17
18
|
export declare const syncSwitchPlan: (syncing: readonly Pairing[], held: readonly string[]) => {
|
|
18
19
|
readonly names: readonly string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/sync/commands.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/sync/commands.ts"],"names":[],"mappings":"AAMA,OAAO,EAAqB,KAAK,GAAG,EAA0B,MAAM,uBAAuB,CAAC;AAE5F,OAAO,EAA+B,KAAK,cAAc,EAA8B,MAAM,eAAe,CAAC;AAS7G,OAAO,EACH,KAAK,OAAO,EAMZ,KAAK,QAAQ,EACb,KAAK,SAAS,EAEjB,MAAM,aAAa,CAAC;AAgCrB,eAAO,MAAM,cAAc,UAAW,SAAS,YAAY,MAAM,GAAG,SAAS,KAAG,SAAS,OAAO,EAkB/F,CAAC;AAGF,eAAO,MAAM,SAAS,eACN,MAAM,aACP,MAAM,OACZ,MAAM,+CAMR;IACC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAGnB,QAAQ,CAAC,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3E,KACF,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAuC5E,CAAC;AA8NF,eAAO,MAAM,cAAc,YACd,SAAS,OAAO,EAAE,QACrB,SAAS,MAAM,EAAE,KACxB;IAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,CAAA;CAK5G,CAAC;AAgNF,eAAO,MAAM,aAAa,QAAe,GAAG,YAAY,MAAM,KAAG,OAAO,CAAC,IAAI,CA0D5E,CAAC;AAcF,eAAO,MAAM,YAAY;;;;;;;;CAA+D,CAAC"}
|
package/dist/sync/commands.js
CHANGED
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import { spawnSync } from "node:child_process";
|
|
2
2
|
import { mkdir } from "node:fs/promises";
|
|
3
3
|
import { join, resolve } from "node:path";
|
|
4
|
+
import { setTimeout as sleep } from "node:timers/promises";
|
|
4
5
|
import { errorMessage } from "@intentic/base/errors";
|
|
5
6
|
import { plural } from "@intentic/base/format";
|
|
6
7
|
import { createUi, homeDir } from "@intentic/local-agent";
|
|
7
8
|
import { environmentKeyOf, sandboxIdFromUrl } from "@intentic/sandbox-contract";
|
|
8
9
|
import { buildCommand, buildRouteMap } from "@stricli/core";
|
|
10
|
+
import { z } from "zod";
|
|
9
11
|
import { postWhileWarming } from "../daemon-base.js";
|
|
10
12
|
import { completeSetup, prepareSetup } from "../install.js";
|
|
11
13
|
import { machineId } from "../machine-id.js";
|
|
12
14
|
import { wslEnvironment } from "../wsl.js";
|
|
13
|
-
import { ensureResident, readResidentPid } from "../resident.js";
|
|
15
|
+
import { ensureResident, readResidentBuild, readResidentPid } from "../resident.js";
|
|
16
|
+
import { MACHINE_VERSION } from "../version.js";
|
|
14
17
|
import { machineLauncher } from "../supervision.js";
|
|
15
18
|
import { readState, removePairing, setAutoHealOff, setMirrorOff, setPortIgnored, upsertPairing, } from "./config.js";
|
|
16
19
|
import { realBridgeExec, runGitBridge } from "./git-bridge.js";
|
|
17
20
|
import { retireMirroredPort, retirePairingMirror, teardownAllForwards } from "./mirror.js";
|
|
18
|
-
import { ensureMutagen,
|
|
21
|
+
import { ensureMutagen, existingSyncSessions, healDerivedConflicts, isOwnMutagen, registerMutagenAutostart, retireOrphanSessions, runMutagen, sessionName, syncSessionNames, unregisterMutagenAutostart, } from "./mutagen.js";
|
|
19
22
|
import { syncSshPort, tunnelReady } from "./tunnel.js";
|
|
20
|
-
import { assertSshConfigVisible, ensureSshKey, mutagenSshPath, pairingSshConfig, probeSshTransport, removeManagedSshConfig, sanitizeId, sshAlias, writeManagedSshConfig, } from "./ssh.js";
|
|
23
|
+
import { assertSshConfigVisible, ensureSshKey, hostKeyOf, mutagenSshPath, pairingSshConfig, probeSshTransport, removeManagedSshConfig, replaceKnownHost, sanitizeId, sshAlias, writeManagedSshConfig, } from "./ssh.js";
|
|
21
24
|
export const selectPairings = (state, selector) => {
|
|
22
25
|
if (selector === undefined) {
|
|
23
26
|
return state.pairings;
|
|
@@ -61,7 +64,7 @@ export const enrollKey = async (sandboxUrl, pairToken, key, { attempts, delayMs,
|
|
|
61
64
|
if (body.syncToken === undefined) {
|
|
62
65
|
throw new Error("the sandbox enrolled this machine but returned no sync credential: update the sandbox and enable sync again.");
|
|
63
66
|
}
|
|
64
|
-
return { syncToken: body.syncToken, mode: body.mode ?? "sync" };
|
|
67
|
+
return { syncToken: body.syncToken, mode: body.mode ?? "sync", hostKey: hostKeyOf(z.string().optional().catch(undefined).parse(body.hostKey)) };
|
|
65
68
|
};
|
|
66
69
|
const revokeEnrollment = async (sandboxUrl, syncToken) => {
|
|
67
70
|
const response = await fetch(`${sandboxUrl.replace(/\/$/, "")}/system/authorized-key`, {
|
|
@@ -109,7 +112,7 @@ const SETUP_PLAN = [
|
|
|
109
112
|
const runSetup = async (ui, out, flags) => {
|
|
110
113
|
ui.step("sync-enrolling", "enrolling this machine with your sandbox…");
|
|
111
114
|
const publicKey = await ensureSshKey();
|
|
112
|
-
const [{ syncToken, mode }, mutagen] = await Promise.all([
|
|
115
|
+
const [{ syncToken, mode, hostKey }, mutagen] = await Promise.all([
|
|
113
116
|
enrollKey(flags.url, flags.pair, publicKey, {
|
|
114
117
|
takeover: flags.takeover,
|
|
115
118
|
identity: { machineId: machineId(), environment: environmentKeyOf({ wsl: await wslEnvironment() }) },
|
|
@@ -119,6 +122,7 @@ const runSetup = async (ui, out, flags) => {
|
|
|
119
122
|
out(`enrolled SSH key with ${flags.url}`);
|
|
120
123
|
const sandboxId = flags.sandboxId ?? sanitizeId(new URL(flags.url).host);
|
|
121
124
|
const alias = sshAlias(sandboxId);
|
|
125
|
+
await replaceKnownHost(alias, syncSshPort(sandboxId), hostKey);
|
|
122
126
|
const localDir = mode === "sync"
|
|
123
127
|
? resolve(flags.dir === undefined
|
|
124
128
|
? join(homeDir(), "intentic", sandboxIdFromUrl(flags.url) ?? sandboxId)
|
|
@@ -148,7 +152,9 @@ const runSetup = async (ui, out, flags) => {
|
|
|
148
152
|
const ssh = mutagenSshPath(process.platform, process.env["MUTAGEN_SSH_PATH"]);
|
|
149
153
|
assertSshConfigVisible(ssh, alias, port);
|
|
150
154
|
await probeSshTransport(ssh, alias, out);
|
|
151
|
-
|
|
155
|
+
if (mode === "sync" && !(await syncSessionAppears(mutagen, sandboxId, SESSION_READY_MS))) {
|
|
156
|
+
out(await notStartedYet(localDir ?? sandboxId));
|
|
157
|
+
}
|
|
152
158
|
retireOrphanSessions(mutagen, pairings, out);
|
|
153
159
|
runGitBridge(realBridgeExec, pairing, out, undefined);
|
|
154
160
|
registerMutagenAutostart(mutagen, machineLauncher(), out);
|
|
@@ -166,6 +172,23 @@ const runSetup = async (ui, out, flags) => {
|
|
|
166
172
|
]);
|
|
167
173
|
};
|
|
168
174
|
const TUNNEL_READY_MS = 10_000;
|
|
175
|
+
const SESSION_READY_MS = 90_000;
|
|
176
|
+
const syncSessionAppears = async (mutagen, sandboxId, withinMs) => {
|
|
177
|
+
const deadline = Date.now() + withinMs;
|
|
178
|
+
while (existingSyncSessions(mutagen, [sessionName(sandboxId)]).length === 0) {
|
|
179
|
+
if (Date.now() >= deadline) {
|
|
180
|
+
return false;
|
|
181
|
+
}
|
|
182
|
+
await sleep(1_000);
|
|
183
|
+
}
|
|
184
|
+
return true;
|
|
185
|
+
};
|
|
186
|
+
const notStartedYet = async (folder) => {
|
|
187
|
+
const running = await readResidentBuild();
|
|
188
|
+
return running !== undefined && running !== MACHINE_VERSION
|
|
189
|
+
? `note: the agent running here is ${running}, which starts file sync for ${folder} only at its next start; \`intentic-machine upgrade\` brings it to ${MACHINE_VERSION} now.`
|
|
190
|
+
: `note: this machine's agent has not started file sync for ${folder} yet; it keeps trying, and \`intentic-machine status\` shows when it is running.`;
|
|
191
|
+
};
|
|
169
192
|
const sandboxFlag = {
|
|
170
193
|
sandbox: {
|
|
171
194
|
kind: "parsed",
|
|
@@ -331,7 +354,7 @@ export const syncUninstall = async (out, sandbox) => {
|
|
|
331
354
|
await ensureResident(out);
|
|
332
355
|
await teardownAllForwards(mutagen, out);
|
|
333
356
|
await removeManagedSshConfig();
|
|
334
|
-
const ownCopy = mutagen
|
|
357
|
+
const ownCopy = isOwnMutagen(mutagen);
|
|
335
358
|
if (ownCopy) {
|
|
336
359
|
unregisterMutagenAutostart(mutagen);
|
|
337
360
|
spawnSync(mutagen, ["daemon", "stop"], { stdio: "ignore", windowsHide: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/sync/commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/sync/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/sync/config.d.ts
CHANGED
|
@@ -31,6 +31,7 @@ export interface Pairing {
|
|
|
31
31
|
readonly ignoredPorts?: readonly number[];
|
|
32
32
|
readonly mirrorOff?: boolean | undefined;
|
|
33
33
|
readonly fileSyncAutoPaused?: boolean | undefined;
|
|
34
|
+
readonly fileSyncSwapPaused?: boolean | undefined;
|
|
34
35
|
readonly autoHealOff?: boolean | undefined;
|
|
35
36
|
}
|
|
36
37
|
export interface SyncState {
|
|
@@ -44,4 +45,5 @@ export declare const setMirrorOff: (sandboxId: string, off: boolean) => Promise<
|
|
|
44
45
|
export declare const setPortIgnored: (sandboxId: string, port: number, ignored: boolean) => Promise<void>;
|
|
45
46
|
export declare const setAutoHealOff: (sandboxId: string, off: boolean) => Promise<void>;
|
|
46
47
|
export declare const setFileSyncAutoPaused: (sandboxId: string, paused: boolean) => Promise<void>;
|
|
48
|
+
export declare const setFileSyncSwapPaused: (sandboxId: string, paused: boolean) => Promise<void>;
|
|
47
49
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/sync/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAO9E,eAAO,MAAM,UAAU,QAA8B,CAAC;AACtD,eAAO,MAAM,cAAc,QAA+B,CAAC;AAK3D,eAAO,MAAM,MAAM,QAA0B,CAAC;AAC9C,eAAO,MAAM,aAAa,0BAA0B,CAAC;AACrD,eAAO,MAAM,aAAa,QAA8B,CAAC;AACzD,eAAO,MAAM,iBAAiB,QAAyB,CAAC;AAKxD,eAAO,MAAM,oBAAoB,QAAsC,CAAC;AAMxE,eAAO,MAAM,mBAAmB,QAA+B,CAAC;AAIhE,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAKD,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAID,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/sync/config.ts"],"names":[],"mappings":"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"}
|
package/dist/sync/config.js
CHANGED
|
@@ -50,4 +50,7 @@ export const setAutoHealOff = async (sandboxId, off) => await updateState((state
|
|
|
50
50
|
export const setFileSyncAutoPaused = async (sandboxId, paused) => await updateState((state) => ({
|
|
51
51
|
pairings: state.pairings.map((held) => (held.sandboxId === sandboxId ? { ...held, fileSyncAutoPaused: paused ? true : undefined } : held)),
|
|
52
52
|
}));
|
|
53
|
+
export const setFileSyncSwapPaused = async (sandboxId, paused) => await updateState((state) => ({
|
|
54
|
+
pairings: state.pairings.map((held) => (held.sandboxId === sandboxId ? { ...held, fileSyncSwapPaused: paused ? true : undefined } : held)),
|
|
55
|
+
}));
|
|
53
56
|
//# sourceMappingURL=config.js.map
|
package/dist/sync/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/sync/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAKvC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AAC9C,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AACtD,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAK3D,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;AAC9C,MAAM,CAAC,MAAM,aAAa,GAAG,uBAAuB,CAAC;AACrD,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;AACzD,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAKxD,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;AAMxE,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/sync/config.ts"],"names":[],"mappings":"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"}
|
package/dist/sync/mirror.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Log } from "@intentic/local-agent";
|
|
2
2
|
import { type PortSummary } from "@intentic/sandbox-contract";
|
|
3
|
-
import { type MirroredPort, type SkippedPort } from "./config.js";
|
|
3
|
+
import { type MirroredPort, type Pairing, type SkippedPort } from "./config.js";
|
|
4
4
|
export declare const shouldAutoPauseFileSync: (unreachableForMs: number) => boolean;
|
|
5
5
|
export declare const pollBackoffMs: (unreachableForMs: number) => number;
|
|
6
6
|
interface Unreachable {
|
|
@@ -19,6 +19,8 @@ export interface ForwardExecutor {
|
|
|
19
19
|
export declare const reconcileForwards: (executor: ForwardExecutor, current: readonly MirroredPort[], desired: readonly PortSummary[], claimedBy: ReadonlyMap<number, string>, ignored: ReadonlySet<number>, log: Log) => Promise<MirroredPort[]>;
|
|
20
20
|
export declare const strandedForwards: (held: readonly number[], mirrored: readonly MirroredPort[]) => number[];
|
|
21
21
|
export declare const skippedPortsOf: (desired: readonly PortSummary[], mirrored: readonly MirroredPort[], claimedBy: ReadonlyMap<number, string>, ignored: ReadonlySet<number>) => SkippedPort[];
|
|
22
|
+
export declare const unpreparedSetups: (pairings: readonly Pairing[], prepared: ReadonlySet<string>) => Pairing[];
|
|
23
|
+
export declare const markPrepared: (prepared: Set<string>, pairing: Pairing) => void;
|
|
22
24
|
export declare const runMirrorWatch: (log: Log) => Promise<void>;
|
|
23
25
|
export declare const retirePairingMirror: (mutagen: string, sandboxId: string) => Promise<number>;
|
|
24
26
|
export declare const retireMirroredPort: (mutagen: string, sandboxId: string, port: number) => Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mirror.d.ts","sourceRoot":"","sources":["../../src/sync/mirror.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAuB,KAAK,WAAW,EAAmB,MAAM,4BAA4B,CAAC;AACpG,OAAO,EAEH,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"mirror.d.ts","sourceRoot":"","sources":["../../src/sync/mirror.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAuB,KAAK,WAAW,EAAmB,MAAM,4BAA4B,CAAC;AACpG,OAAO,EAEH,KAAK,YAAY,EACjB,KAAK,OAAO,EAKZ,KAAK,WAAW,EAEnB,MAAM,aAAa,CAAC;AAsDrB,eAAO,MAAM,uBAAuB,qBAAsB,MAAM,KAAG,OAAmD,CAAC;AAMvH,eAAO,MAAM,aAAa,qBAAsB,MAAM,KAAG,MAC+B,CAAC;AAGzF,UAAU,WAAW;IACjB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC9B;AAID,eAAO,MAAM,OAAO,SAAU,WAAW,GAAG,SAAS,OAAO,MAAM,KAAG,OACY,CAAC;AAIlF,qBAAa,aAAc,SAAQ,KAAK;CAAG;AAI3C,eAAO,MAAM,mBAAmB,SAAgB,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,WAAW,EAAE,CAchG,CAAC;AAYF,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAE3C,QAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,QAAQ,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAChE;AAiDD,eAAO,MAAM,iBAAiB,aAChB,eAAe,WAChB,SAAS,YAAY,EAAE,WACvB,SAAS,WAAW,EAAE,aACpB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,WAC7B,WAAW,CAAC,MAAM,CAAC,OACvB,GAAG,KACT,OAAO,CAAC,YAAY,EAAE,CAqCxB,CAAC;AAWF,eAAO,MAAM,gBAAgB,SAAU,SAAS,MAAM,EAAE,YAAY,SAAS,YAAY,EAAE,KAAG,MAAM,EAGnG,CAAC;AAqCF,eAAO,MAAM,cAAc,YACd,SAAS,WAAW,EAAE,YACrB,SAAS,YAAY,EAAE,aACtB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,WAC7B,WAAW,CAAC,MAAM,CAAC,KAC7B,WAAW,EAWb,CAAC;AAmMF,eAAO,MAAM,gBAAgB,aAAc,SAAS,OAAO,EAAE,YAAY,WAAW,CAAC,MAAM,CAAC,KAAG,OAAO,EAC3C,CAAC;AAE5D,eAAO,MAAM,YAAY,aAAc,GAAG,CAAC,MAAM,CAAC,WAAW,OAAO,KAAG,IAA2C,CAAC;AAyKnH,eAAO,MAAM,cAAc,QAAe,GAAG,KAAG,OAAO,CAAC,IAAI,CA+F3D,CAAC;AAqBF,eAAO,MAAM,mBAAmB,YAAmB,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,MAAM,CAA+C,CAAC;AAO7I,eAAO,MAAM,kBAAkB,YAAmB,MAAM,aAAa,MAAM,QAAQ,MAAM,KAAG,OAAO,CAAC,OAAO,CAwB1G,CAAC;AAIF,eAAO,MAAM,mBAAmB,YAAmB,MAAM,OAAO,GAAG,KAAG,OAAO,CAAC,IAAI,CAGjF,CAAC"}
|
package/dist/sync/mirror.js
CHANGED
|
@@ -5,13 +5,15 @@ import { errorMessage } from "@intentic/base/errors";
|
|
|
5
5
|
import { plural } from "@intentic/base/format";
|
|
6
6
|
import { writeFileAtomic } from "@intentic/base/fs";
|
|
7
7
|
import { PortsListSchema } from "@intentic/sandbox-contract";
|
|
8
|
-
import { mirrorHeartbeatPath, readState, removePairing, setFileSyncAutoPaused, updateState, } from "./config.js";
|
|
8
|
+
import { mirrorHeartbeatPath, readState, removePairing, setFileSyncAutoPaused, setFileSyncSwapPaused, updateState, } from "./config.js";
|
|
9
9
|
import { createDaemonBases, dialedPairings } from "../daemon-base.js";
|
|
10
|
+
import { readSwapRecords } from "../device/sandbox-rounds/swap-records.js";
|
|
10
11
|
import { realBridgeExec, runGitBridge } from "./git-bridge.js";
|
|
11
|
-
import { ensureMutagen, ensureSyncSession, forwardedPorts, forwardSessionName, healDerivedConflicts, mutagenForwardArgs, ourForwardSessions, pauseUnreachableSync, retireOrphanSessions, resumeAutoPausedSync, runMutagenAsync, } from "./mutagen.js";
|
|
12
|
+
import { ensureMutagen, ensureSyncSession, existingSyncSessions, forwardedPorts, forwardSessionName, healDerivedConflicts, mutagenForwardArgs, ourForwardSessions, pauseRunningSync, pauseUnreachableSync, retireOrphanSessions, resumeAutoPausedSync, resumeSwapPausedSync, runMutagenAsync, syncSessionNames, } from "./mutagen.js";
|
|
12
13
|
import { quieted } from "./repeats.js";
|
|
13
14
|
import { deviceReport, scopedReport } from "./report.js";
|
|
14
15
|
import { pairingSshConfig, sshAlias, writeManagedSshConfig } from "./ssh.js";
|
|
16
|
+
import { holdsSync, recordOf, RELEASE_FORWARDS_MS, shouldReleaseForwards, swapPauseStep } from "./swap-pause.js";
|
|
15
17
|
import { createTunnelPool, tunnelTargets } from "./tunnel.js";
|
|
16
18
|
const POLL_MS = 5000;
|
|
17
19
|
const PORTS_TIMEOUT_MS = 10_000;
|
|
@@ -222,6 +224,11 @@ const absorbUnreachablePoll = async (mutagen, pairing, unreachable, log) => {
|
|
|
222
224
|
const now = Date.now();
|
|
223
225
|
const since = unreachable.get(pairing.sandboxId)?.since ?? now;
|
|
224
226
|
unreachable.set(pairing.sandboxId, { since, lastTried: now });
|
|
227
|
+
const mirrored = (pairing.mirroredPorts ?? []).length;
|
|
228
|
+
if (shouldReleaseForwards(now - since, mirrored)) {
|
|
229
|
+
await retirePairingMirror(mutagen, pairing.sandboxId);
|
|
230
|
+
log(` ${pairing.sandboxId}: unreachable for ${RELEASE_FORWARDS_MS / 60_000} minutes; took its ${plural(mirrored, "port")} off localhost. They come back when it answers again.`);
|
|
231
|
+
}
|
|
225
232
|
if (pairing.fileSyncAutoPaused === true || !shouldAutoPauseFileSync(now - since) || !pauseUnreachableSync(mutagen, pairing)) {
|
|
226
233
|
return false;
|
|
227
234
|
}
|
|
@@ -242,39 +249,77 @@ const healPairing = async (mutagen, pairing, tick, log) => {
|
|
|
242
249
|
}
|
|
243
250
|
await guard(log, `${pairing.sandboxId}: clearing derived residue`, async () => void (await healDerivedConflicts(mutagen, pairing, log)));
|
|
244
251
|
};
|
|
245
|
-
const
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
252
|
+
const setupOf = (pairing) => [pairing.sandboxId, pairing.localDir ?? "", pairing.syncToken ?? ""].join("\n");
|
|
253
|
+
export const unpreparedSetups = (pairings, prepared) => pairings.filter((held) => !prepared.has(setupOf(held)));
|
|
254
|
+
export const markPrepared = (prepared, pairing) => void prepared.add(setupOf(pairing));
|
|
255
|
+
const prepareSession = async (mutagen, pairing, pending, say) => {
|
|
256
|
+
let converged = false;
|
|
257
|
+
await guard(say, `${pairing.sandboxId}: preparing its file sync`, async () => {
|
|
258
|
+
converged = await ensureSyncSession(mutagen, pairing, say);
|
|
259
|
+
});
|
|
260
|
+
if (converged) {
|
|
261
|
+
pending.delete(pairing.sandboxId);
|
|
262
|
+
}
|
|
263
|
+
else {
|
|
264
|
+
pending.add(pairing.sandboxId);
|
|
265
|
+
}
|
|
266
|
+
return converged;
|
|
267
|
+
};
|
|
268
|
+
const dormant = (mutagen, pairing) => pairing.fileSyncAutoPaused === true && existingSyncSessions(mutagen, syncSessionNames(pairing.sandboxId)).length > 0;
|
|
269
|
+
const prepareSessions = async (mutagen, pairings, prepared, pending, say) => {
|
|
270
|
+
for (const pairing of unpreparedSetups(pairings, prepared)) {
|
|
271
|
+
markPrepared(prepared, pairing);
|
|
272
|
+
if (dormant(mutagen, pairing)) {
|
|
250
273
|
pending.add(pairing.sandboxId);
|
|
274
|
+
continue;
|
|
251
275
|
}
|
|
276
|
+
await prepareSession(mutagen, pairing, pending, say);
|
|
252
277
|
}
|
|
253
|
-
return pending;
|
|
254
278
|
};
|
|
255
279
|
const retryPendingSessions = async (mutagen, pairings, sessionsPending, tick, say) => {
|
|
256
280
|
if (sessionsPending.size === 0 || tick % SESSION_RETRY_EVERY_TICKS !== 0) {
|
|
257
281
|
return;
|
|
258
282
|
}
|
|
259
|
-
for (const pairing of pairings.filter((held) => sessionsPending.has(held.sandboxId))) {
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
sessionsPending.delete(pairing.sandboxId);
|
|
263
|
-
say(` ${pairing.sandboxId}: file sync is running again`);
|
|
283
|
+
for (const pairing of pairings.filter((held) => sessionsPending.has(held.sandboxId) && !dormant(mutagen, held))) {
|
|
284
|
+
if (await prepareSession(mutagen, pairing, sessionsPending, say)) {
|
|
285
|
+
say(` ${pairing.sandboxId}: file sync is running on this build's rules`);
|
|
264
286
|
}
|
|
265
287
|
}
|
|
266
288
|
};
|
|
289
|
+
const holdSyncDuringSwaps = async (mutagen, pairings, unreachable, say) => {
|
|
290
|
+
const records = await readSwapRecords();
|
|
291
|
+
const now = Date.now();
|
|
292
|
+
const held = new Set();
|
|
293
|
+
for (const pairing of pairings) {
|
|
294
|
+
const record = recordOf(pairing, records);
|
|
295
|
+
const holds = holdsSync(record, now, !unreachable.has(pairing.sandboxId));
|
|
296
|
+
if (holds) {
|
|
297
|
+
held.add(pairing.sandboxId);
|
|
298
|
+
}
|
|
299
|
+
const step = swapPauseStep(pairing, holds);
|
|
300
|
+
if (step === "pause" && pauseRunningSync(mutagen, pairing)) {
|
|
301
|
+
await setFileSyncSwapPaused(pairing.sandboxId, true);
|
|
302
|
+
say(` ${pairing.sandboxId}: its sandbox is being swapped on this machine; file sync is paused until the new version has held.`);
|
|
303
|
+
}
|
|
304
|
+
else if (step === "resume") {
|
|
305
|
+
resumeSwapPausedSync(mutagen, pairing);
|
|
306
|
+
await setFileSyncSwapPaused(pairing.sandboxId, false);
|
|
307
|
+
say(` ${pairing.sandboxId}: its sandbox's swap is settled; file sync resumed.`);
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
return held;
|
|
311
|
+
};
|
|
267
312
|
const runPairingPass = async (context, pairing, base) => {
|
|
268
|
-
const { mutagen, tick, claimedBy, tracking, bases, say } = context;
|
|
269
|
-
const { rejectedPolls, unreachable, repos
|
|
313
|
+
const { mutagen, tick, claimedBy, tracking, bases, swapHeld, say } = context;
|
|
314
|
+
const { rejectedPolls, unreachable, repos } = tracking;
|
|
315
|
+
const swapping = swapHeld.has(pairing.sandboxId);
|
|
270
316
|
let pausedThisPass = false;
|
|
271
317
|
try {
|
|
272
318
|
const mirrored = await servePairing(mutagen, pairing, base, claimedBy, say);
|
|
273
319
|
rejectedPolls.delete(pairing.sandboxId);
|
|
274
320
|
unreachable.delete(pairing.sandboxId);
|
|
275
|
-
if (resumeAutoPausedSync(mutagen, pairing)) {
|
|
321
|
+
if (!swapping && resumeAutoPausedSync(mutagen, pairing)) {
|
|
276
322
|
await setFileSyncAutoPaused(pairing.sandboxId, false);
|
|
277
|
-
sessionsPending.delete(pairing.sandboxId);
|
|
278
323
|
say(` ${pairing.sandboxId}: reachable again; resumed its automatically paused file sync`);
|
|
279
324
|
}
|
|
280
325
|
for (const port of mirrored) {
|
|
@@ -293,7 +338,7 @@ const runPairingPass = async (context, pairing, base) => {
|
|
|
293
338
|
pausedThisPass = outcome.paused;
|
|
294
339
|
say(` ${pairing.sandboxId}: reconcile skipped: ${errorMessage(error)}`);
|
|
295
340
|
}
|
|
296
|
-
if (pairing.fileSyncAutoPaused === true || pausedThisPass) {
|
|
341
|
+
if (pairing.fileSyncAutoPaused === true || pausedThisPass || swapping) {
|
|
297
342
|
return;
|
|
298
343
|
}
|
|
299
344
|
await healPairing(mutagen, pairing, tick, say);
|
|
@@ -323,7 +368,9 @@ export const runMirrorWatch = async (log) => {
|
|
|
323
368
|
const tunnels = createTunnelPool(say);
|
|
324
369
|
const bases = createDaemonBases(say);
|
|
325
370
|
await guard(say, "opening the sync transports", async () => await tunnels.reconcile(tunnelTargets(await dialedPairings(initial.pairings, bases))));
|
|
326
|
-
const sessionsPending =
|
|
371
|
+
const sessionsPending = new Set();
|
|
372
|
+
const sessionsPrepared = new Set();
|
|
373
|
+
await prepareSessions(mutagen, initial.pairings, sessionsPrepared, sessionsPending, say);
|
|
327
374
|
await guard(say, "retiring orphaned sessions", () => retireOrphanSessions(mutagen, initial.pairings, say));
|
|
328
375
|
log(`sync started; polling ${plural(initial.pairings.length, "paired sandbox")} every ${POLL_MS / 1000}s`);
|
|
329
376
|
const rejectedPolls = new Map();
|
|
@@ -347,13 +394,18 @@ export const runMirrorWatch = async (log) => {
|
|
|
347
394
|
}
|
|
348
395
|
const dialed = await dialedPairings(state.pairings, bases);
|
|
349
396
|
await guard(say, "reconciling the sync transports", async () => await tunnels.reconcile(tunnelTargets(dialed)));
|
|
397
|
+
await prepareSessions(mutagen, state.pairings, sessionsPrepared, sessionsPending, say);
|
|
350
398
|
await retryPendingSessions(mutagen, state.pairings, sessionsPending, tick, say);
|
|
399
|
+
let swapHeld = new Set();
|
|
400
|
+
await guard(say, "holding file sync still during swaps", async () => {
|
|
401
|
+
swapHeld = await holdSyncDuringSwaps(mutagen, state.pairings, unreachable, say);
|
|
402
|
+
});
|
|
351
403
|
const claimedBy = new Map();
|
|
352
404
|
for (const { pairing, base } of dialed) {
|
|
353
405
|
if (!pollDue(unreachable.get(pairing.sandboxId), Date.now())) {
|
|
354
406
|
continue;
|
|
355
407
|
}
|
|
356
|
-
await runPairingPass({ mutagen, tick, claimedBy, tracking, bases, say }, pairing, base);
|
|
408
|
+
await runPairingPass({ mutagen, tick, claimedBy, tracking, bases, swapHeld, say }, pairing, base);
|
|
357
409
|
}
|
|
358
410
|
if (tick % REPORT_EVERY_TICKS === 0) {
|
|
359
411
|
await guard(say, "posting this machine's reports", async () => await postReports(dialed, mutagen, reportUnsupported, say));
|