@intentic/machine 1.233.0 → 1.235.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.
Files changed (57) hide show
  1. package/README.md +27 -3
  2. package/dist/commands.d.ts.map +1 -1
  3. package/dist/commands.js +5 -16
  4. package/dist/commands.js.map +1 -1
  5. package/dist/computer/auto-prepare.d.ts +18 -0
  6. package/dist/computer/auto-prepare.d.ts.map +1 -0
  7. package/dist/computer/auto-prepare.js +83 -0
  8. package/dist/computer/auto-prepare.js.map +1 -0
  9. package/dist/computer/commands.d.ts +1 -0
  10. package/dist/computer/commands.d.ts.map +1 -1
  11. package/dist/computer/commands.js +28 -2
  12. package/dist/computer/commands.js.map +1 -1
  13. package/dist/computer/config.d.ts +3 -0
  14. package/dist/computer/config.d.ts.map +1 -1
  15. package/dist/computer/config.js +21 -12
  16. package/dist/computer/config.js.map +1 -1
  17. package/dist/computer/tools/sandboxes.d.ts +6 -0
  18. package/dist/computer/tools/sandboxes.d.ts.map +1 -1
  19. package/dist/computer/tools/sandboxes.js +22 -6
  20. package/dist/computer/tools/sandboxes.js.map +1 -1
  21. package/dist/install.d.ts +17 -0
  22. package/dist/install.d.ts.map +1 -0
  23. package/dist/install.js +152 -0
  24. package/dist/install.js.map +1 -0
  25. package/dist/resident.d.ts.map +1 -1
  26. package/dist/resident.js +5 -0
  27. package/dist/resident.js.map +1 -1
  28. package/dist/status.d.ts.map +1 -1
  29. package/dist/status.js +12 -9
  30. package/dist/status.js.map +1 -1
  31. package/dist/sync/commands.d.ts +1 -0
  32. package/dist/sync/commands.d.ts.map +1 -1
  33. package/dist/sync/commands.js +41 -4
  34. package/dist/sync/commands.js.map +1 -1
  35. package/dist/sync/config.d.ts +2 -0
  36. package/dist/sync/config.d.ts.map +1 -1
  37. package/dist/sync/config.js +3 -0
  38. package/dist/sync/config.js.map +1 -1
  39. package/dist/sync/mirror.d.ts.map +1 -1
  40. package/dist/sync/mirror.js +9 -7
  41. package/dist/sync/mirror.js.map +1 -1
  42. package/dist/sync/mutagen.d.ts +5 -1
  43. package/dist/sync/mutagen.d.ts.map +1 -1
  44. package/dist/sync/mutagen.js +55 -8
  45. package/dist/sync/mutagen.js.map +1 -1
  46. package/dist/sync/report.d.ts.map +1 -1
  47. package/dist/sync/report.js +3 -1
  48. package/dist/sync/report.js.map +1 -1
  49. package/dist/sync/ssh.d.ts +0 -1
  50. package/dist/sync/ssh.d.ts.map +1 -1
  51. package/dist/sync/ssh.js +1 -13
  52. package/dist/sync/ssh.js.map +1 -1
  53. package/dist/upgrade.d.ts +5 -3
  54. package/dist/upgrade.d.ts.map +1 -1
  55. package/dist/upgrade.js +92 -31
  56. package/dist/upgrade.js.map +1 -1
  57. package/package.json +10 -10
@@ -0,0 +1,152 @@
1
+ import { spawnSync } from "node:child_process";
2
+ import { mkdir, realpath, rename, rm, symlink } from "node:fs/promises";
3
+ import { homedir } from "node:os";
4
+ import { join } from "node:path";
5
+ import { WINDOWS_LAUNCH_STUB } from "@intentic/local-agent";
6
+ import { DEV_VERSION } from "@intentic/sandbox-contract";
7
+ import { readResidentPid, reconcileResidency, stopResident } from "./resident.js";
8
+ import { binDir } from "./sync/config.js";
9
+ import { archToken, download } from "./sync/mutagen.js";
10
+ import { agentPath, assetUrl, realUpgradeExec, runUpgrade, upgradeMessage } from "./upgrade.js";
11
+ import { MACHINE_VERSION } from "./version.js";
12
+ export const SELF_UPDATE_GUARD_ENV = "INTENTIC_MACHINE_NO_SELF_UPDATE";
13
+ const RESIDENT_START_TIMEOUT_MS = 10_000;
14
+ const RESIDENT_START_POLL_MS = 200;
15
+ export const residentCameUp = async () => {
16
+ for (let waited = 0; waited < RESIDENT_START_TIMEOUT_MS; waited += RESIDENT_START_POLL_MS) {
17
+ if ((await readResidentPid()) !== undefined) {
18
+ return true;
19
+ }
20
+ await new Promise((resolvePromise) => setTimeout(resolvePromise, RESIDENT_START_POLL_MS));
21
+ }
22
+ return false;
23
+ };
24
+ export const machineUpgradeExec = (out) => realUpgradeExec(stopResident, async () => await reconcileResidency(() => undefined), residentCameUp, out);
25
+ const runningAsInstalledAgent = async () => {
26
+ const from = await realpath(process.execPath).catch(() => undefined);
27
+ const at = await realpath(agentPath).catch(() => undefined);
28
+ return from !== undefined && from === at;
29
+ };
30
+ export const selfUpdateBeforeSetup = async (io, env, args, out) => {
31
+ if (env[SELF_UPDATE_GUARD_ENV] !== undefined) {
32
+ return;
33
+ }
34
+ if (io.installed === DEV_VERSION) {
35
+ return;
36
+ }
37
+ if (!(await io.installedAgent())) {
38
+ return;
39
+ }
40
+ const outcome = await io.upgrade();
41
+ if (outcome.kind === "upgraded") {
42
+ out(upgradeMessage(outcome));
43
+ io.reexec(args);
44
+ }
45
+ if (outcome.kind === "failed") {
46
+ out(`note: couldn't update the agent first (${outcome.reason}) — continuing with ${io.installed}.`);
47
+ }
48
+ };
49
+ export const realSelfUpdateIo = (out) => ({
50
+ installed: MACHINE_VERSION,
51
+ installedAgent: runningAsInstalledAgent,
52
+ upgrade: async () => await runUpgrade(machineUpgradeExec(out), assetUrl, MACHINE_VERSION, false, out),
53
+ reexec: (args) => {
54
+ const child = spawnSync(agentPath, [...args], {
55
+ stdio: "inherit",
56
+ env: { ...process.env, [SELF_UPDATE_GUARD_ENV]: "1" },
57
+ windowsHide: true,
58
+ });
59
+ process.exit(child.status ?? 1);
60
+ },
61
+ });
62
+ const posixPathRepair = async (out) => {
63
+ const linkDir = join(homedir(), ".local", "bin");
64
+ const link = join(linkDir, "intentic-machine");
65
+ try {
66
+ await mkdir(linkDir, { recursive: true });
67
+ await rm(link, { force: true });
68
+ await symlink(agentPath, link);
69
+ }
70
+ catch (error) {
71
+ out(`note: couldn't link ${link} (${error instanceof Error ? error.message : String(error)}) — run ${agentPath} directly.`);
72
+ return;
73
+ }
74
+ if (!(process.env["PATH"] ?? "").split(":").includes(linkDir)) {
75
+ out(`note: add ~/.local/bin to your PATH to use \`intentic-machine\` directly (or run ${agentPath}).`);
76
+ }
77
+ };
78
+ export const addToWindowsPathValue = (stored, folder) => {
79
+ const entries = stored.split(";").filter((entry) => entry !== "");
80
+ if (entries.some((entry) => entry.toLowerCase() === folder.toLowerCase())) {
81
+ return undefined;
82
+ }
83
+ return [...entries, folder].join(";");
84
+ };
85
+ const WINDOWS_ENV_BROADCAST = [
86
+ `$s='[DllImport("user32.dll",CharSet=CharSet.Auto)]public static extern IntPtr SendMessageTimeout(IntPtr w,uint m,UIntPtr wp,string lp,uint f,uint t,out UIntPtr r);'`,
87
+ `Add-Type -Namespace Intentic -Name Native -MemberDefinition $s`,
88
+ `$r=[UIntPtr]::Zero`,
89
+ `[void][Intentic.Native]::SendMessageTimeout([IntPtr]0xffff,0x1A,[UIntPtr]::Zero,'Environment',2,5000,[ref]$r)`,
90
+ ].join(";");
91
+ const readWindowsPath = () => {
92
+ const query = spawnSync("reg", ["query", "HKCU\\Environment", "/v", "Path"], { encoding: "utf8", windowsHide: true, timeout: 15_000 });
93
+ const match = query.status === 0 ? /^\s*Path\s+(REG_SZ|REG_EXPAND_SZ)\s+(.*)$/m.exec(query.stdout) : null;
94
+ return { kind: match?.[1] ?? "REG_EXPAND_SZ", stored: match?.[2]?.trimEnd() ?? "" };
95
+ };
96
+ const writeWindowsPath = (kind, value) => {
97
+ const add = spawnSync("reg", ["add", "HKCU\\Environment", "/v", "Path", "/t", kind, "/d", value, "/f"], {
98
+ encoding: "utf8",
99
+ windowsHide: true,
100
+ timeout: 15_000,
101
+ });
102
+ if (add.status !== 0) {
103
+ throw new Error(add.stderr.trim() === "" ? `reg add exited ${String(add.status)}` : add.stderr.trim());
104
+ }
105
+ spawnSync("powershell", ["-NoProfile", "-NonInteractive", "-Command", WINDOWS_ENV_BROADCAST], { windowsHide: true, timeout: 15_000 });
106
+ };
107
+ const windowsPathRepair = (out) => {
108
+ try {
109
+ const { kind, stored } = readWindowsPath();
110
+ const next = addToWindowsPathValue(stored, binDir);
111
+ if (next === undefined) {
112
+ return;
113
+ }
114
+ writeWindowsPath(kind, next);
115
+ out(`note: ${binDir} was added to your PATH — open a new terminal to use \`intentic-machine\` directly.`);
116
+ }
117
+ catch (error) {
118
+ out(`note: couldn't put ${binDir} on your PATH (${error instanceof Error ? error.message : String(error)}). Run intentic-machine from that folder, or add it to your PATH yourself.`);
119
+ }
120
+ };
121
+ export const ensureWindowsLauncher = async (out) => {
122
+ if (process.platform !== "win32") {
123
+ return;
124
+ }
125
+ const stub = join(binDir, WINDOWS_LAUNCH_STUB);
126
+ const staged = `${stub}.tmp`;
127
+ try {
128
+ await rm(staged, { force: true });
129
+ await download(`https://github.com/intentic/intentic/releases/latest/download/intentic-launch-windows-${archToken()}.exe`, staged);
130
+ await rm(`${stub}.old`, { force: true }).catch(() => undefined);
131
+ await rename(stub, `${stub}.old`).catch(() => undefined);
132
+ await rename(staged, stub);
133
+ await rm(`${stub}.old`, { force: true }).catch(() => undefined);
134
+ }
135
+ catch (error) {
136
+ await rm(staged, { force: true }).catch(() => undefined);
137
+ out(`note: couldn't download the windowless launcher (${error instanceof Error ? error.message : String(error)}). Everything still works; a console window will flash on your desktop when this machine starts the agent at login.`);
138
+ }
139
+ };
140
+ export const prepareSetup = async (out, args) => {
141
+ await selfUpdateBeforeSetup(realSelfUpdateIo(out), process.env, args, out);
142
+ if (!(await runningAsInstalledAgent())) {
143
+ return;
144
+ }
145
+ if (process.platform === "win32") {
146
+ windowsPathRepair(out);
147
+ await ensureWindowsLauncher(out);
148
+ return;
149
+ }
150
+ await posixPathRepair(out);
151
+ };
152
+ //# sourceMappingURL=install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAY,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAyC,cAAc,EAAE,MAAM,cAAc,CAAC;AACvI,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAiB/C,MAAM,CAAC,MAAM,qBAAqB,GAAG,iCAAiC,CAAC;AAIvE,MAAM,yBAAyB,GAAG,MAAM,CAAC;AACzC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAEnC,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,IAAsB,EAAE;IACvD,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,yBAAyB,EAAE,MAAM,IAAI,sBAAsB,EAAE,CAAC;QAExF,IAAI,CAAC,MAAM,eAAe,EAAE,CAAC,KAAK,SAAS,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE,sBAAsB,CAAC,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAIF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAQ,EAAe,EAAE,CAAC,eAAe,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,kBAAkB,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC;AAIvK,MAAM,uBAAuB,GAAG,KAAK,IAAsB,EAAE;IACzD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACrE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC5D,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,CAAC;AAC7C,CAAC,CAAC;AAiBF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EAAE,EAAgB,EAAE,GAAuC,EAAE,IAAuB,EAAE,GAAQ,EAAiB,EAAE;IACvJ,IAAI,GAAG,CAAC,qBAAqB,CAAC,KAAK,SAAS,EAAE,CAAC;QAC3C,OAAO;IACX,CAAC;IACD,IAAI,EAAE,CAAC,SAAS,KAAK,WAAW,EAAE,CAAC;QAE/B,OAAO;IACX,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC;QAC/B,OAAO;IACX,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;IACnC,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC9B,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC5B,GAAG,CAAC,0CAA0C,OAAO,CAAC,MAAM,uBAAuB,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC;IACxG,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,GAAQ,EAAgB,EAAE,CAAC,CAAC;IACzD,SAAS,EAAE,eAAe;IAC1B,cAAc,EAAE,uBAAuB;IACvC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,CAAC;IACrG,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACb,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE;YAC1C,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,GAAG,EAAE;YACrD,WAAW,EAAE,IAAI;SACpB,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IACpC,CAAC;CACJ,CAAC,CAAC;AAKH,MAAM,eAAe,GAAG,KAAK,EAAE,GAAQ,EAAiB,EAAE;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IAC/C,IAAI,CAAC;QACD,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,MAAM,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,GAAG,CAAC,uBAAuB,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAC5H,OAAO;IACX,CAAC;IACD,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5D,GAAG,CAAC,oFAAoF,SAAS,IAAI,CAAC,CAAC;IAC3G,CAAC;AACL,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,MAAc,EAAE,MAAc,EAAsB,EAAE;IACxF,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;IAClE,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QACxE,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,OAAO,CAAC,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1C,CAAC,CAAC;AAKF,MAAM,qBAAqB,GAAG;IAC1B,sKAAsK;IACtK,gEAAgE;IAChE,oBAAoB;IACpB,+GAA+G;CAClH,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAKZ,MAAM,eAAe,GAAG,GAAuD,EAAE;IAC7E,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IACvI,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,4CAA4C,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1G,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;AACxF,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAQ,EAAE;IAC3D,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE;QACpG,QAAQ,EAAE,MAAM;QAChB,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,MAAM;KAClB,CAAC,CAAC;IACH,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,kBAAkB,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3G,CAAC;IACD,SAAS,CAAC,YAAY,EAAE,CAAC,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,qBAAqB,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AAC1I,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,GAAQ,EAAQ,EAAE;IACzC,IAAI,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,eAAe,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACnD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrB,OAAO;QACX,CAAC;QACD,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,GAAG,CAAC,SAAS,MAAM,qFAAqF,CAAC,CAAC;IAC9G,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAEb,GAAG,CACC,sBAAsB,MAAM,kBAAkB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,4EAA4E,CACnL,CAAC;IACN,CAAC;AACL,CAAC,CAAC;AAQF,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EAAE,GAAQ,EAAiB,EAAE;IACnE,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC/B,OAAO;IACX,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC;IAC7B,IAAI,CAAC;QACD,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAClC,MAAM,QAAQ,CAAC,yFAAyF,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACnI,MAAM,EAAE,CAAC,GAAG,IAAI,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC3B,MAAM,EAAE,CAAC,GAAG,IAAI,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACzD,GAAG,CACC,oDAAoD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,qHAAqH,CAClO,CAAC;IACN,CAAC;AACL,CAAC,CAAC;AAKF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,GAAQ,EAAE,IAAuB,EAAiB,EAAE;IACnF,MAAM,qBAAqB,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAC3E,IAAI,CAAC,CAAC,MAAM,uBAAuB,EAAE,CAAC,EAAE,CAAC;QACrC,OAAO;IACX,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC/B,iBAAiB,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,qBAAqB,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO;IACX,CAAC;IACD,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;AAC/B,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"resident.d.ts","sourceRoot":"","sources":["../src/resident.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,WAAW,EAIhB,KAAK,GAAG,EAMX,MAAM,uBAAuB,CAAC;AAgC/B,eAAO,MAAM,eAAe,QAAO,WAA8C,CAAC;AAGlF,eAAO,MAAM,eAAe,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAA8B,CAAC;AAUlG,eAAO,MAAM,aAAa,QAAe,GAAG,KAAG,OAAO,CAAC,IAAI,CAQ1D,CAAC;AAMF,eAAO,MAAM,YAAY,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAiB/D,CAAC;AAiBF,eAAO,MAAM,kBAAkB,QAAe,GAAG,KAAG,OAAO,CAAC,IAAI,CAY/D,CAAC;AAeF,eAAO,MAAM,aAAa,QAAe,GAAG,KAAG,OAAO,CAAC,IAAI,CAqD1D,CAAC"}
1
+ {"version":3,"file":"resident.d.ts","sourceRoot":"","sources":["../src/resident.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,WAAW,EAIhB,KAAK,GAAG,EAMX,MAAM,uBAAuB,CAAC;AAiC/B,eAAO,MAAM,eAAe,QAAO,WAA8C,CAAC;AAGlF,eAAO,MAAM,eAAe,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAA8B,CAAC;AAUlG,eAAO,MAAM,aAAa,QAAe,GAAG,KAAG,OAAO,CAAC,IAAI,CAQ1D,CAAC;AAMF,eAAO,MAAM,YAAY,QAAa,OAAO,CAAC,MAAM,GAAG,SAAS,CAiB/D,CAAC;AAiBF,eAAO,MAAM,kBAAkB,QAAe,GAAG,KAAG,OAAO,CAAC,IAAI,CAY/D,CAAC;AAsBF,eAAO,MAAM,aAAa,QAAe,GAAG,KAAG,OAAO,CAAC,IAAI,CAyD1D,CAAC"}
package/dist/resident.js CHANGED
@@ -2,6 +2,7 @@ import { rm } from "node:fs/promises";
2
2
  import { setTimeout as sleep } from "node:timers/promises";
3
3
  import { cliLauncher, isProcessAlive, livePid, pidFileBody, registerAutostart, spawnDetached, unregisterAutostart, writeSecretFile, } from "@intentic/local-agent";
4
4
  import { MACHINE_AUTOSTART } from "./autostart.js";
5
+ import { startAutoPrepare } from "./computer/auto-prepare.js";
5
6
  import { readLinks } from "./computer/config.js";
6
7
  import { connect } from "./computer/connection.js";
7
8
  import { baseDir, runLogPath, runPidPath } from "./config.js";
@@ -51,6 +52,7 @@ export const reconcileResidency = async (log) => {
51
52
  await startResident(log);
52
53
  }
53
54
  };
55
+ const computerTick = (links, log) => (links > 0 ? startAutoPrepare(log) : undefined);
54
56
  export const runForeground = async (log) => {
55
57
  const holder = await readResidentPid();
56
58
  if (holder !== undefined && holder !== process.pid) {
@@ -66,7 +68,9 @@ export const runForeground = async (log) => {
66
68
  return;
67
69
  }
68
70
  const connections = links.map((link) => connect(link, MACHINE_VERSION, log));
71
+ const autoPrepare = computerTick(links.length, log);
69
72
  const shutdown = (signal) => {
73
+ autoPrepare?.stop();
70
74
  for (const connection of connections) {
71
75
  connection.stop();
72
76
  }
@@ -82,6 +86,7 @@ export const runForeground = async (log) => {
82
86
  halves.push(runMirrorWatch(log));
83
87
  }
84
88
  await Promise.all(halves);
89
+ autoPrepare?.stop();
85
90
  const [linksNow, stateNow] = await Promise.all([readLinks(), readState()]);
86
91
  if (linksNow.length === 0 && stateNow.pairings.length === 0) {
87
92
  await unregisterAutostart(MACHINE_AUTOSTART, log);
@@ -1 +1 @@
1
- {"version":3,"file":"resident.js","sourceRoot":"","sources":["../src/resident.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resident.js","sourceRoot":"","sources":["../src/resident.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAe,aAAa,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAoBlE,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAK1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,SAAS;YAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;SAAE,EAAE,CAAA;KAAE,CAAC;IACpI,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;CAChC;AAMD,eAAO,MAAM,aAAa,YAAa,MAAM,GAAG,SAAS,SAAS,MAAM,QAAQ,aAAa,OAAO,MAAM,KAAG,MAgB5G,CAAC;AAEF,eAAO,MAAM,aAAa,YAAmB,MAAM,GAAG,SAAS,KAAG,OAAO,CAAC,aAAa,CAStF,CAAC;AA0BF,eAAO,MAAM,WAAW,YAAa,aAAa,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAG,MAoBxE,CAAC;AAUF,eAAO,MAAM,WAAW,YAAa,aAAa,CAAC,SAAS,CAAC,OAAO,MAAM,KAAG,MAc5E,CAAC;AA2BF,eAAO,MAAM,MAAM,iDA+DjB,CAAC"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAe,aAAa,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAoBlE,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAK1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,SAAS;YAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;SAAE,EAAE,CAAA;KAAE,CAAC;IACpI,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;CAChC;AAMD,eAAO,MAAM,aAAa,YAAa,MAAM,GAAG,SAAS,SAAS,MAAM,QAAQ,aAAa,OAAO,MAAM,KAAG,MAgB5G,CAAC;AAEF,eAAO,MAAM,aAAa,YAAmB,MAAM,GAAG,SAAS,KAAG,OAAO,CAAC,aAAa,CAStF,CAAC;AAyCF,eAAO,MAAM,WAAW,YAAa,aAAa,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAG,MAUxE,CAAC;AAUF,eAAO,MAAM,WAAW,YAAa,aAAa,CAAC,SAAS,CAAC,OAAO,MAAM,KAAG,MAc5E,CAAC;AAiCF,eAAO,MAAM,MAAM,iDA+DjB,CAAC"}
package/dist/status.js CHANGED
@@ -41,17 +41,17 @@ const portLine = (port) => {
41
41
  const reason = port.heldBy === undefined ? "something else on this machine has the port" : `${port.heldBy} has it`;
42
42
  return ` localhost:${port.port}, NOT mirrored from ${port.sandboxId}: ${reason} (${what})`;
43
43
  };
44
+ const fileSyncState = (pairing) => [
45
+ pairing.paused === true ? "paused" : (pairing.mutagenStatus ?? "NO FILE-SYNC SESSION, this folder is not syncing"),
46
+ pairing.conflicts === undefined || pairing.conflicts === 0 ? undefined : `${pairing.conflicts} conflict(s)`,
47
+ pairing.paused === true ? undefined : `backup ${pairing.backupStatus ?? "NOT RUNNING, this sandbox's own state is not being copied here"}`,
48
+ ];
44
49
  export const pairingLine = (pairing) => {
45
50
  const where = pairing.mode === "sync" ? (pairing.localDir ?? "(no folder)") : "(ports only)";
46
- const state = pairing.mode !== "sync"
47
- ? []
48
- : [
49
- pairing.paused === true ? "paused" : (pairing.mutagenStatus ?? "NO FILE-SYNC SESSION, this folder is not syncing"),
50
- pairing.conflicts === undefined || pairing.conflicts === 0 ? undefined : `${pairing.conflicts} conflict(s)`,
51
- pairing.paused === true
52
- ? undefined
53
- : `backup ${pairing.backupStatus ?? "NOT RUNNING, this sandbox's own state is not being copied here"}`,
54
- ].filter((part) => part !== undefined);
51
+ const state = [
52
+ pairing.mirroring === "off" ? "port mirroring OFF" : undefined,
53
+ ...(pairing.mode === "sync" ? fileSyncState(pairing) : []),
54
+ ].filter((part) => part !== undefined);
55
55
  return ` ${pairing.sandboxId} ${where}${state.length === 0 ? "" : ` [${state.join(", ")}]`}`;
56
56
  };
57
57
  export const watcherLine = (watcher, now) => {
@@ -76,6 +76,9 @@ const printReport = (report, out) => {
76
76
  for (const port of report.ports) {
77
77
  out(portLine(port));
78
78
  }
79
+ for (const pairing of report.pairings.filter((held) => held.mirroring === "off")) {
80
+ out(` ${pairing.sandboxId}: port mirroring is OFF here. Put its ports back with \`intentic-machine sync mirror on --sandbox ${pairing.sandboxId}\`.`);
81
+ }
79
82
  };
80
83
  export const status = buildCommand({
81
84
  docs: { brief: "Show what this machine's agent is connected to, syncing, and mirroring, and whether it is alive" },
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export declare const syncCommands: {
15
15
  setup: import("@stricli/core").Command<CommandContext>;
16
16
  pause: import("@stricli/core").Command<CommandContext>;
17
17
  resume: import("@stricli/core").Command<CommandContext>;
18
+ mirror: import("@stricli/core").RouteMap<CommandContext>;
18
19
  uninstall: import("@stricli/core").Command<CommandContext>;
19
20
  };
20
21
  //# sourceMappingURL=commands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/sync/commands.ts"],"names":[],"mappings":"AAKA,OAAO,EAAY,KAAK,GAAG,EAA0B,MAAM,uBAAuB,CAAC;AAEnF,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAElE,OAAO,EAAE,KAAK,OAAO,EAA4B,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAiB,MAAM,aAAa,CAAC;AA4BnH,eAAO,MAAM,cAAc,UAAW,SAAS,YAAY,MAAM,GAAG,SAAS,KAAG,SAAS,OAAO,EAkB/F,CAAC;AAUF,eAAO,MAAM,SAAS,eACN,MAAM,aACP,MAAM,OACZ,MAAM,oCAC0C;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,KACjH,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAsD/C,CAAC;AAiOF,eAAO,MAAM,aAAa,QAAe,GAAG,YAAY,MAAM,KAAG,OAAO,CAAC,IAAI,CAuD5E,CAAC;AAWF,eAAO,MAAM,YAAY;;;;;CAAsC,CAAC"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/sync/commands.ts"],"names":[],"mappings":"AAKA,OAAO,EAAY,KAAK,GAAG,EAA0B,MAAM,uBAAuB,CAAC;AAEnF,OAAO,EAA+B,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAGjF,OAAO,EAAE,KAAK,OAAO,EAA0C,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAiB,MAAM,aAAa,CAAC;AA4BjI,eAAO,MAAM,cAAc,UAAW,SAAS,YAAY,MAAM,GAAG,SAAS,KAAG,SAAS,OAAO,EAkB/F,CAAC;AAUF,eAAO,MAAM,SAAS,eACN,MAAM,aACP,MAAM,OACZ,MAAM,oCAC0C;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,KACjH,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAsD/C,CAAC;AA8RF,eAAO,MAAM,aAAa,QAAe,GAAG,YAAY,MAAM,KAAG,OAAO,CAAC,IAAI,CAuD5E,CAAC;AAWF,eAAO,MAAM,YAAY;;;;;;CAA8C,CAAC"}
@@ -5,9 +5,10 @@ import { homedir } from "node:os";
5
5
  import { join, resolve } from "node:path";
6
6
  import { createUi } from "@intentic/local-agent";
7
7
  import { sandboxIdFromUrl } from "@intentic/sandbox-contract";
8
- import { buildCommand } from "@stricli/core";
9
- import { machineLauncher, reconcileResidency } from "../resident.js";
10
- import { readState, removePairing, upsertPairing } from "./config.js";
8
+ import { buildCommand, buildRouteMap } from "@stricli/core";
9
+ import { prepareSetup } from "../install.js";
10
+ import { machineLauncher, readResidentPid, reconcileResidency } from "../resident.js";
11
+ import { readState, removePairing, setMirrorOff, upsertPairing } from "./config.js";
11
12
  import { realBridgeExec, runGitBridge } from "./git-bridge.js";
12
13
  import { retirePairingMirror, teardownAllForwards } from "./mirror.js";
13
14
  import { ensureMutagen, ensureSyncSession, registerMutagenAutostart, retireOrphanSessions, runMutagen, syncSessionNames, unregisterMutagenAutostart, } from "./mutagen.js";
@@ -96,6 +97,7 @@ const setup = buildCommand({
96
97
  },
97
98
  },
98
99
  async func(flags) {
100
+ await prepareSetup((message) => void this.process.stdout.write(`${message}\n`), process.argv.slice(2));
99
101
  const ui = createUi(this.process);
100
102
  const out = ui.note;
101
103
  ui.begin("intentic · desktop sync", SETUP_PLAN);
@@ -198,6 +200,41 @@ const fileSyncOnly = (brief, verb) => buildCommand({
198
200
  });
199
201
  const pause = fileSyncOnly("Pause file syncing", "pause");
200
202
  const resume = fileSyncOnly("Resume file syncing", "resume");
203
+ const mirrorSwitch = (brief, off) => buildCommand({
204
+ docs: { brief },
205
+ parameters: { flags: sandboxFlag },
206
+ async func(flags) {
207
+ const out = (message) => void this.process.stdout.write(`${message}\n`);
208
+ const selected = selectPairings(await readState(), flags.sandbox);
209
+ if (selected.length === 0) {
210
+ out("no sandboxes are paired on this machine: nothing to mirror. Enable it from a sandbox's Desktop sync card.");
211
+ return;
212
+ }
213
+ const mutagen = await ensureMutagen();
214
+ for (const pairing of selected) {
215
+ await setMirrorOff(pairing.sandboxId, off);
216
+ if (off) {
217
+ await retirePairingMirror(mutagen, pairing.sandboxId);
218
+ }
219
+ }
220
+ const named = selected.map((pairing) => pairing.sandboxId).join(", ");
221
+ if (off) {
222
+ out(`Port mirroring OFF for: ${named}. Those ports are off this computer's localhost. File syncing is untouched.`);
223
+ return;
224
+ }
225
+ out(`Port mirroring on for: ${named}. Their ports return to localhost within a few seconds.`);
226
+ if ((await readResidentPid()) === undefined) {
227
+ out("Note: this machine's agent is NOT running, so nothing will mirror until you start it: `intentic-machine run`.");
228
+ }
229
+ },
230
+ });
231
+ const mirror = buildRouteMap({
232
+ routes: {
233
+ off: mirrorSwitch("Stop putting a sandbox's ports on this computer's localhost (file syncing continues)", true),
234
+ on: mirrorSwitch("Put a sandbox's ports back on this computer's localhost", false),
235
+ },
236
+ docs: { brief: "Turn this computer's port mirroring off or on, for one paired sandbox or all of them" },
237
+ });
201
238
  export const syncUninstall = async (out, sandbox) => {
202
239
  const state = await readState();
203
240
  const dropped = selectPairings(state, sandbox);
@@ -240,5 +277,5 @@ const uninstall = buildCommand({
240
277
  await syncUninstall(out, flags.sandbox);
241
278
  },
242
279
  });
243
- export const syncCommands = { setup, pause, resume, uninstall };
280
+ export const syncCommands = { setup, pause, resume, mirror, uninstall };
244
281
  //# sourceMappingURL=commands.js.map
@@ -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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"}
@@ -28,6 +28,7 @@ export interface Pairing {
28
28
  readonly syncToken?: string;
29
29
  readonly mirroredPorts?: readonly MirroredPort[];
30
30
  readonly skippedPorts?: readonly SkippedPort[];
31
+ readonly mirrorOff?: boolean | undefined;
31
32
  readonly fileSyncAutoPaused?: boolean | undefined;
32
33
  }
33
34
  export interface SyncState {
@@ -37,5 +38,6 @@ export declare const readState: () => Promise<SyncState>;
37
38
  export declare const updateState: (mutate: (state: SyncState) => SyncState) => Promise<void>;
38
39
  export declare const upsertPairing: (pairing: Pairing) => Promise<void>;
39
40
  export declare const removePairing: (sandboxId: string) => Promise<void>;
41
+ export declare const setMirrorOff: (sandboxId: string, off: boolean) => Promise<void>;
40
42
  export declare const setFileSyncAutoPaused: (sandboxId: string, paused: boolean) => Promise<void>;
41
43
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/sync/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAU9D,eAAO,MAAM,UAAU,QAA8B,CAAC;AACtD,eAAO,MAAM,cAAc,QAA+B,CAAC;AAC3D,eAAO,MAAM,MAAM,QAAuB,CAAC;AAK3C,eAAO,MAAM,MAAM,QAA0B,CAAC;AAC9C,eAAO,MAAM,aAAa,0BAA0B,CAAC;AACrD,eAAO,MAAM,aAAa,QAA8B,CAAC;AACzD,eAAO,MAAM,iBAAiB,QAAyB,CAAC;AAOxD,eAAO,MAAM,oBAAoB,QAAsC,CAAC;AAaxE,eAAO,MAAM,mBAAmB,QAA+B,CAAC;AAMhE,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;AAOD,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,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;AAiBzC,MAAM,WAAW,OAAO;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IACjD,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC/C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACrD;AAUD,MAAM,WAAW,SAAS;IACtB,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;CACzC;AAMD,eAAO,MAAM,SAAS,QAAa,OAAO,CAAC,SAAS,CAYnD,CAAC;AAUF,eAAO,MAAM,WAAW,WAAkB,CAAC,KAAK,EAAE,SAAS,KAAK,SAAS,KAAG,OAAO,CAAC,IAAI,CACe,CAAC;AAIxG,eAAO,MAAM,aAAa,YAAmB,OAAO,KAAG,OAAO,CAAC,IAAI,CACkE,CAAC;AAEtI,eAAO,MAAM,aAAa,cAAqB,MAAM,KAAG,OAAO,CAAC,IAAI,CAC2C,CAAC;AAEhH,eAAO,MAAM,qBAAqB,cAAqB,MAAM,UAAU,OAAO,KAAG,OAAO,CAAC,IAAI,CAGtF,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/sync/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAU9D,eAAO,MAAM,UAAU,QAA8B,CAAC;AACtD,eAAO,MAAM,cAAc,QAA+B,CAAC;AAC3D,eAAO,MAAM,MAAM,QAAuB,CAAC;AAK3C,eAAO,MAAM,MAAM,QAA0B,CAAC;AAC9C,eAAO,MAAM,aAAa,0BAA0B,CAAC;AACrD,eAAO,MAAM,aAAa,QAA8B,CAAC;AACzD,eAAO,MAAM,iBAAiB,QAAyB,CAAC;AAOxD,eAAO,MAAM,oBAAoB,QAAsC,CAAC;AAaxE,eAAO,MAAM,mBAAmB,QAA+B,CAAC;AAMhE,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;AAOD,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,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;AAkBzC,MAAM,WAAW,OAAO;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IACjD,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAC/C,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACrD;AAUD,MAAM,WAAW,SAAS;IACtB,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;CACzC;AAMD,eAAO,MAAM,SAAS,QAAa,OAAO,CAAC,SAAS,CAYnD,CAAC;AAUF,eAAO,MAAM,WAAW,WAAkB,CAAC,KAAK,EAAE,SAAS,KAAK,SAAS,KAAG,OAAO,CAAC,IAAI,CACe,CAAC;AAIxG,eAAO,MAAM,aAAa,YAAmB,OAAO,KAAG,OAAO,CAAC,IAAI,CACkE,CAAC;AAEtI,eAAO,MAAM,aAAa,cAAqB,MAAM,KAAG,OAAO,CAAC,IAAI,CAC2C,CAAC;AAkBhH,eAAO,MAAM,YAAY,cAAqB,MAAM,OAAO,OAAO,KAAG,OAAO,CAAC,IAAI,CAG1E,CAAC;AAER,eAAO,MAAM,qBAAqB,cAAqB,MAAM,UAAU,OAAO,KAAG,OAAO,CAAC,IAAI,CAGtF,CAAC"}
@@ -29,6 +29,9 @@ export const readState = async () => {
29
29
  export const updateState = async (mutate) => await writeSecretFile(configPath, baseDir, JSON.stringify(mutate(await readState()), undefined, 2));
30
30
  export const upsertPairing = async (pairing) => await updateState((state) => ({ pairings: [...state.pairings.filter((held) => held.sandboxId !== pairing.sandboxId), pairing] }));
31
31
  export const removePairing = async (sandboxId) => await updateState((state) => ({ pairings: state.pairings.filter((held) => held.sandboxId !== sandboxId) }));
32
+ export const setMirrorOff = async (sandboxId, off) => await updateState((state) => ({
33
+ pairings: state.pairings.map((held) => (held.sandboxId === sandboxId ? { ...held, mirrorOff: off ? true : undefined } : held)),
34
+ }));
32
35
  export const setFileSyncAutoPaused = async (sandboxId, paused) => await updateState((state) => ({
33
36
  pairings: state.pairings.map((held) => (held.sandboxId === sandboxId ? { ...held, fileSyncAutoPaused: paused ? true : undefined } : held)),
34
37
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/sync/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/sync/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mirror.d.ts","sourceRoot":"","sources":["../../src/sync/mirror.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,KAAK,WAAW,EAAmB,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAEH,KAAK,YAAY,EAKjB,KAAK,WAAW,EAEnB,MAAM,aAAa,CAAC;AAuErB,eAAO,MAAM,uBAAuB,gBAAiB,MAAM,KAAG,OAAiD,CAAC;AAIhH,qBAAa,aAAc,SAAQ,KAAK;CAAG;AAM3C,eAAO,MAAM,mBAAmB,eAAsB,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,WAAW,EAAE,CActG,CAAC;AAaF,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAI3C,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;AA+BD,eAAO,MAAM,iBAAiB,aAChB,eAAe,WAChB,SAAS,YAAY,EAAE,WACvB,SAAS,WAAW,EAAE,aACpB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,OACjC,GAAG,KACT,OAAO,CAAC,YAAY,EAAE,CAwCxB,CAAC;AA6BF,eAAO,MAAM,cAAc,YACd,SAAS,WAAW,EAAE,YACrB,SAAS,YAAY,EAAE,aACtB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KACvC,WAAW,EAKb,CAAC;AAwBF,eAAO,MAAM,cAAc,WAAY,MAAM,CAAC,OAAO,KAAG,MAA2C,CAAC;AA6LpG,eAAO,MAAM,cAAc,QAAe,GAAG,KAAG,OAAO,CAAC,IAAI,CAwK3D,CAAC;AAwBF,eAAO,MAAM,mBAAmB,YAAmB,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,MAAM,CAA+C,CAAC;AAI7I,eAAO,MAAM,mBAAmB,YAAmB,MAAM,OAAO,GAAG,KAAG,OAAO,CAAC,IAAI,CAGjF,CAAC"}
1
+ {"version":3,"file":"mirror.d.ts","sourceRoot":"","sources":["../../src/sync/mirror.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,KAAK,WAAW,EAAmB,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAEH,KAAK,YAAY,EAKjB,KAAK,WAAW,EAEnB,MAAM,aAAa,CAAC;AAuErB,eAAO,MAAM,uBAAuB,gBAAiB,MAAM,KAAG,OAAiD,CAAC;AAIhH,qBAAa,aAAc,SAAQ,KAAK;CAAG;AAM3C,eAAO,MAAM,mBAAmB,eAAsB,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,WAAW,EAAE,CActG,CAAC;AAaF,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAI3C,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;AA+BD,eAAO,MAAM,iBAAiB,aAChB,eAAe,WAChB,SAAS,YAAY,EAAE,WACvB,SAAS,WAAW,EAAE,aACpB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,OACjC,GAAG,KACT,OAAO,CAAC,YAAY,EAAE,CAwCxB,CAAC;AA6BF,eAAO,MAAM,cAAc,YACd,SAAS,WAAW,EAAE,YACrB,SAAS,YAAY,EAAE,aACtB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KACvC,WAAW,EAKb,CAAC;AAwBF,eAAO,MAAM,cAAc,WAAY,MAAM,CAAC,OAAO,KAAG,MAA2C,CAAC;AA6MpG,eAAO,MAAM,cAAc,QAAe,GAAG,KAAG,OAAO,CAAC,IAAI,CAkK3D,CAAC;AAwBF,eAAO,MAAM,mBAAmB,YAAmB,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,MAAM,CAA+C,CAAC;AAI7I,eAAO,MAAM,mBAAmB,YAAmB,MAAM,OAAO,GAAG,KAAG,OAAO,CAAC,IAAI,CAGjF,CAAC"}
@@ -7,7 +7,7 @@ import { mirrorHeartbeatPath, readState, removePairing, setFileSyncAutoPaused, u
7
7
  import { realBridgeExec, runGitBridge } from "./git-bridge.js";
8
8
  import { ensureMutagen, ensureSyncSession, forwardSessionName, mutagenForwardArgs, ourForwardSessions, pauseUnreachableSync, retireOrphanSessions, resumeAutoPausedSync, runMutagenAsync, } from "./mutagen.js";
9
9
  import { machineReport, scopedReport } from "./report.js";
10
- import { pairingSshConfig, pruneKnownHosts, sshAlias, writeManagedSshConfig } from "./ssh.js";
10
+ import { pairingSshConfig, sshAlias, writeManagedSshConfig } from "./ssh.js";
11
11
  import { createTunnelPool, tunnelTargets } from "./tunnel.js";
12
12
  const POLL_MS = 5000;
13
13
  const PORTS_TIMEOUT_MS = 10_000;
@@ -115,6 +115,13 @@ const savePorts = async (sandboxId, mirroredPorts, skippedPorts) => await update
115
115
  const servePairing = async (mutagen, pairing, claimedBy, log) => {
116
116
  const baseline = pairing.mirroredPorts ?? [];
117
117
  const ports = pairing.syncToken === undefined ? [] : await fetchWorkspacePorts(pairing.sandboxUrl, pairing.syncToken);
118
+ if (pairing.mirrorOff === true) {
119
+ if (baseline.length > 0 || (pairing.skippedPorts ?? []).length > 0) {
120
+ await retirePairingMirror(mutagen, pairing.sandboxId);
121
+ log(` ${pairing.sandboxId}: port mirroring is off on this computer; took ${baseline.length} port(s) off localhost.`);
122
+ }
123
+ return [];
124
+ }
118
125
  const next = await reconcileForwards(mutagenExecutor(mutagen, pairing, log), baseline, ports, claimedBy, log);
119
126
  const skipped = skippedPortsOf(ports, next, claimedBy);
120
127
  if (!sameMirrorSet(baseline, next) || !sameSkippedSet(pairing.skippedPorts ?? [], skipped)) {
@@ -198,12 +205,7 @@ export const runMirrorWatch = async (log) => {
198
205
  log("no sandboxes are paired: nothing to mirror. Enable it from a sandbox's Desktop sync card.");
199
206
  return;
200
207
  }
201
- await guard(log, "refreshing the ssh configuration", async () => {
202
- await writeManagedSshConfig(pairingSshConfig(initial.pairings));
203
- if (await pruneKnownHosts()) {
204
- log(" removed a stale `%h` host-key entry left by an older agent: it was refusing every sandbox but the first.");
205
- }
206
- });
208
+ await guard(log, "refreshing the ssh configuration", async () => await writeManagedSshConfig(pairingSshConfig(initial.pairings)));
207
209
  const tunnels = createTunnelPool(log);
208
210
  await guard(log, "opening the sync transports", async () => await tunnels.reconcile(tunnelTargets(initial.pairings)));
209
211
  const sessionsPending = new Set();