@intentic/machine 1.345.0 → 1.347.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 (113) hide show
  1. package/README.md +100 -135
  2. package/dist/device/commands.d.ts +6 -1
  3. package/dist/device/commands.d.ts.map +1 -1
  4. package/dist/device/commands.js +19 -7
  5. package/dist/device/commands.js.map +1 -1
  6. package/dist/device/grant.d.ts +2 -1
  7. package/dist/device/grant.d.ts.map +1 -1
  8. package/dist/device/router.d.ts +2 -1
  9. package/dist/device/router.d.ts.map +1 -1
  10. package/dist/device/sandbox-rounds/keeper.js +1 -1
  11. package/dist/device/sandbox-rounds/keeper.js.map +1 -1
  12. package/dist/device/tools/agent.d.ts.map +1 -1
  13. package/dist/device/tools/agent.js +7 -7
  14. package/dist/device/tools/agent.js.map +1 -1
  15. package/dist/device/tools/ic-binary.d.ts +1 -0
  16. package/dist/device/tools/ic-binary.d.ts.map +1 -1
  17. package/dist/device/tools/ic-binary.js +29 -1
  18. package/dist/device/tools/ic-binary.js.map +1 -1
  19. package/dist/device/tools/os/settings.js +3 -3
  20. package/dist/device/tools/os/settings.js.map +1 -1
  21. package/dist/device/tools/sandboxes.d.ts +1 -0
  22. package/dist/device/tools/sandboxes.d.ts.map +1 -1
  23. package/dist/device/tools/sandboxes.js +7 -2
  24. package/dist/device/tools/sandboxes.js.map +1 -1
  25. package/dist/install.d.ts +9 -1
  26. package/dist/install.d.ts.map +1 -1
  27. package/dist/install.js +28 -4
  28. package/dist/install.js.map +1 -1
  29. package/dist/resident/resident.d.ts.map +1 -1
  30. package/dist/resident/resident.js +1 -2
  31. package/dist/resident/resident.js.map +1 -1
  32. package/dist/status.d.ts.map +1 -1
  33. package/dist/status.js +1 -8
  34. package/dist/status.js.map +1 -1
  35. package/dist/sync/commands.d.ts +1 -9
  36. package/dist/sync/commands.d.ts.map +1 -1
  37. package/dist/sync/commands.js +48 -89
  38. package/dist/sync/commands.js.map +1 -1
  39. package/dist/sync/config.d.ts +21 -25
  40. package/dist/sync/config.d.ts.map +1 -1
  41. package/dist/sync/config.js +76 -35
  42. package/dist/sync/config.js.map +1 -1
  43. package/dist/sync/endpoint.d.ts +1 -1
  44. package/dist/sync/endpoint.d.ts.map +1 -1
  45. package/dist/sync/endpoint.js +2 -3
  46. package/dist/sync/endpoint.js.map +1 -1
  47. package/dist/sync/folders.d.ts.map +1 -1
  48. package/dist/sync/folders.js.map +1 -1
  49. package/dist/sync/gone-watch.d.ts +0 -1
  50. package/dist/sync/gone-watch.d.ts.map +1 -1
  51. package/dist/sync/gone-watch.js +16 -53
  52. package/dist/sync/gone-watch.js.map +1 -1
  53. package/dist/sync/holds.d.ts +30 -0
  54. package/dist/sync/holds.d.ts.map +1 -0
  55. package/dist/sync/holds.js +117 -0
  56. package/dist/sync/holds.js.map +1 -0
  57. package/dist/sync/low-disk.d.ts +2 -9
  58. package/dist/sync/low-disk.d.ts.map +1 -1
  59. package/dist/sync/low-disk.js +10 -38
  60. package/dist/sync/low-disk.js.map +1 -1
  61. package/dist/sync/mirror.d.ts +1 -4
  62. package/dist/sync/mirror.d.ts.map +1 -1
  63. package/dist/sync/mirror.js +57 -161
  64. package/dist/sync/mirror.js.map +1 -1
  65. package/dist/sync/mutagen-env.d.ts +1 -3
  66. package/dist/sync/mutagen-env.d.ts.map +1 -1
  67. package/dist/sync/mutagen-env.js +2 -12
  68. package/dist/sync/mutagen-env.js.map +1 -1
  69. package/dist/sync/mutagen-move.d.ts +3 -1
  70. package/dist/sync/mutagen-move.d.ts.map +1 -1
  71. package/dist/sync/mutagen-move.js +30 -22
  72. package/dist/sync/mutagen-move.js.map +1 -1
  73. package/dist/sync/mutagen.d.ts +4 -9
  74. package/dist/sync/mutagen.d.ts.map +1 -1
  75. package/dist/sync/mutagen.js +11 -71
  76. package/dist/sync/mutagen.js.map +1 -1
  77. package/dist/sync/project/project-commands.d.ts +0 -3
  78. package/dist/sync/project/project-commands.d.ts.map +1 -1
  79. package/dist/sync/project/project-commands.js +3 -2
  80. package/dist/sync/project/project-commands.js.map +1 -1
  81. package/dist/sync/project/project-delivery.d.ts.map +1 -1
  82. package/dist/sync/project/project-delivery.js +3 -3
  83. package/dist/sync/project/project-delivery.js.map +1 -1
  84. package/dist/sync/project/project-transfer.d.ts +4 -0
  85. package/dist/sync/project/project-transfer.d.ts.map +1 -1
  86. package/dist/sync/project/project-transfer.js +9 -2
  87. package/dist/sync/project/project-transfer.js.map +1 -1
  88. package/dist/sync/report.d.ts.map +1 -1
  89. package/dist/sync/report.js +16 -10
  90. package/dist/sync/report.js.map +1 -1
  91. package/dist/sync/retire.d.ts.map +1 -1
  92. package/dist/sync/retire.js +1 -2
  93. package/dist/sync/retire.js.map +1 -1
  94. package/dist/sync/tunnel.d.ts +4 -3
  95. package/dist/sync/tunnel.d.ts.map +1 -1
  96. package/dist/sync/tunnel.js +107 -42
  97. package/dist/sync/tunnel.js.map +1 -1
  98. package/dist/sync/uninstall.d.ts.map +1 -1
  99. package/dist/sync/uninstall.js +1 -1
  100. package/dist/sync/uninstall.js.map +1 -1
  101. package/dist/sync/wake.d.ts +3 -0
  102. package/dist/sync/wake.d.ts.map +1 -0
  103. package/dist/sync/wake.js +43 -0
  104. package/dist/sync/wake.js.map +1 -0
  105. package/package.json +9 -9
  106. package/dist/sync/attach-commands.d.ts +0 -39
  107. package/dist/sync/attach-commands.d.ts.map +0 -1
  108. package/dist/sync/attach-commands.js +0 -164
  109. package/dist/sync/attach-commands.js.map +0 -1
  110. package/dist/sync/swap-pause.d.ts +0 -10
  111. package/dist/sync/swap-pause.d.ts.map +0 -1
  112. package/dist/sync/swap-pause.js +0 -29
  113. package/dist/sync/swap-pause.js.map +0 -1
@@ -3,7 +3,5 @@ export declare const mutagenEnv: (base?: NodeJS.ProcessEnv) => NodeJS.ProcessEnv
3
3
  export declare const isMutagenCommand: (command: string) => boolean;
4
4
  export declare const childEnv: (command: string, env?: NodeJS.ProcessEnv) => NodeJS.ProcessEnv | undefined;
5
5
  export declare const movedAlready: () => Promise<boolean>;
6
- export declare const recordMove: (paused: readonly string[]) => Promise<void>;
7
- export declare const carriedPause: (name: string) => Promise<boolean>;
8
- export declare const dropCarriedPause: (name: string) => Promise<void>;
6
+ export declare const recordMove: () => Promise<void>;
9
7
  //# sourceMappingURL=mutagen-env.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutagen-env.d.ts","sourceRoot":"","sources":["../../src/sync/mutagen-env.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,cAAc,QAA2B,CAAC;AAGvD,eAAO,MAAM,UAAU,UAAU,MAAM,CAAC,UAAU,KAAiB,MAAM,CAAC,UAIxE,CAAC;AAIH,eAAO,MAAM,gBAAgB,YAAa,MAAM,KAAG,OAA+E,CAAC;AAKnI,eAAO,MAAM,QAAQ,YAAa,MAAM,QAAQ,MAAM,CAAC,UAAU,KAAG,MAAM,CAAC,UAAU,GAAG,SACvB,CAAC;AAWlE,eAAO,MAAM,YAAY,QAAa,OAAO,CAAC,OAAO,CAAgC,CAAC;AAEtF,eAAO,MAAM,UAAU,WAAkB,SAAS,MAAM,EAAE,KAAG,OAAO,CAAC,IAAI,CAAiF,CAAC;AAG3J,eAAO,MAAM,YAAY,SAAgB,MAAM,KAAG,OAAO,CAAC,OAAO,CAAqF,CAAC;AAGvJ,eAAO,MAAM,gBAAgB,SAAgB,MAAM,KAAG,OAAO,CAAC,IAAI,CAKjE,CAAC"}
1
+ {"version":3,"file":"mutagen-env.d.ts","sourceRoot":"","sources":["../../src/sync/mutagen-env.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,cAAc,QAA2B,CAAC;AAGvD,eAAO,MAAM,UAAU,UAAU,MAAM,CAAC,UAAU,KAAiB,MAAM,CAAC,UAIxE,CAAC;AAIH,eAAO,MAAM,gBAAgB,YAAa,MAAM,KAAG,OAA+E,CAAC;AAKnI,eAAO,MAAM,QAAQ,YAAa,MAAM,QAAQ,MAAM,CAAC,UAAU,KAAG,MAAM,CAAC,UAAU,GAAG,SACvB,CAAC;AAOlE,eAAO,MAAM,YAAY,QAAa,OAAO,CAAC,OAAO,CAAgC,CAAC;AAEtF,eAAO,MAAM,UAAU,QAAa,OAAO,CAAC,IAAI,CAAmG,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { basename, join } from "node:path";
2
- import { pathExists, readJsonIfExists, writeFileAtomic } from "@intentic/base/fs";
3
- import { z } from "zod";
2
+ import { pathExists, writeFileAtomic } from "@intentic/base/fs";
4
3
  import { baseDir } from "../config.js";
5
4
  export const mutagenDataDir = join(baseDir, "mutagen");
6
5
  export const mutagenEnv = (base = process.env) => ({
@@ -11,15 +10,6 @@ export const mutagenEnv = (base = process.env) => ({
11
10
  export const isMutagenCommand = (command) => /^mutagen(?:\.exe)?$/i.test(basename(command.replaceAll("\\", "/")));
12
11
  export const childEnv = (command, env) => env ?? (isMutagenCommand(command) ? mutagenEnv() : undefined);
13
12
  const movedPath = join(baseDir, "mutagen-moved.json");
14
- const MovedSchema = z.object({ movedAt: z.string(), paused: z.array(z.string()) });
15
- const writeMoved = async (moved) => await writeFileAtomic(movedPath, `${JSON.stringify(moved)}\n`);
16
13
  export const movedAlready = async () => await pathExists(movedPath);
17
- export const recordMove = async (paused) => await writeMoved({ movedAt: new Date().toISOString(), paused: [...paused] });
18
- export const carriedPause = async (name) => (await readJsonIfExists(movedPath, MovedSchema))?.paused.includes(name) === true;
19
- export const dropCarriedPause = async (name) => {
20
- const moved = await readJsonIfExists(movedPath, MovedSchema);
21
- if (moved?.paused.includes(name) === true) {
22
- await writeMoved({ ...moved, paused: moved.paused.filter((held) => held !== name) });
23
- }
24
- };
14
+ export const recordMove = async () => await writeFileAtomic(movedPath, `${JSON.stringify({ movedAt: new Date().toISOString() })}\n`);
25
15
  //# sourceMappingURL=mutagen-env.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutagen-env.js","sourceRoot":"","sources":["../../src/sync/mutagen-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAgBvC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAGvD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAI,GAAsB,OAAO,CAAC,GAAG,EAAqB,EAAE,CAAC,CAAC;IACrF,GAAG,IAAI;IACP,sBAAsB,EAAE,cAAc;IACtC,yBAAyB,EAAE,GAAG;CACjC,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAW,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;AAKnI,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,GAAuB,EAAiC,EAAE,CAChG,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAKlE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;AACtD,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;AAGnF,MAAM,UAAU,GAAG,KAAK,EAAE,KAAY,EAAiB,EAAE,CAAC,MAAM,eAAe,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAEzH,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,IAAsB,EAAE,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC;AAEtF,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,MAAyB,EAAiB,EAAE,CAAC,MAAM,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;AAG3J,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE,CAAC,CAAC,MAAM,gBAAgB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;AAGvJ,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,IAAY,EAAiB,EAAE;IAClE,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAC7D,IAAI,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACxC,MAAM,UAAU,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;IACzF,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"mutagen-env.js","sourceRoot":"","sources":["../../src/sync/mutagen-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAgBvC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAGvD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAI,GAAsB,OAAO,CAAC,GAAG,EAAqB,EAAE,CAAC,CAAC;IACrF,GAAG,IAAI;IACP,sBAAsB,EAAE,cAAc;IACtC,yBAAyB,EAAE,GAAG;CACjC,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAW,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;AAKnI,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,GAAuB,EAAiC,EAAE,CAChG,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAKlE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;AAEtD,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,IAAsB,EAAE,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC;AAEtF,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,IAAmB,EAAE,CAAC,MAAM,eAAe,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC"}
@@ -29,6 +29,8 @@ export interface MoveSeams {
29
29
  readonly startOwn: () => boolean;
30
30
  readonly ownSessions: (names: readonly string[]) => readonly string[] | undefined;
31
31
  readonly carry: (identifier: string) => Promise<boolean>;
32
+ readonly pausedBefore: (names: readonly string[]) => Promise<readonly string[]>;
33
+ readonly declarePaused: (names: readonly string[]) => Promise<void>;
32
34
  readonly restartTheirs: () => boolean;
33
35
  readonly settle: () => Promise<void>;
34
36
  }
@@ -43,11 +45,11 @@ export interface Moved {
43
45
  readonly carried: readonly MovingSession[];
44
46
  readonly remade: readonly MovingSession[];
45
47
  readonly ended: boolean;
46
- readonly resumed: boolean;
47
48
  }
48
49
  export declare const moveSessions: (seams: MoveSeams, plan: MovePlan) => Promise<Moved>;
49
50
  export declare const registrationIsOurs: (registration: string | undefined, own: string, platform: NodeJS.Platform) => boolean;
50
51
  export declare const carryState: (from: string, to: string, identifier: string) => Promise<boolean>;
52
+ export declare const firstSighting: (path: string, names: readonly string[]) => Promise<readonly string[]>;
51
53
  export declare const moveOffSharedMutagen: (mutagen: string, log: Log, seams?: MoveSeams) => Promise<void>;
52
54
  export {};
53
55
  //# sourceMappingURL=mutagen-move.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutagen-move.d.ts","sourceRoot":"","sources":["../../src/sync/mutagen-move.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutagen-move.d.ts","sourceRoot":"","sources":["../../src/sync/mutagen-move.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,17 @@ import { existsSync } from "node:fs";
2
2
  import { copyFile, mkdir, rm } from "node:fs/promises";
3
3
  import { join } from "node:path";
4
4
  import { setTimeout as sleep } from "node:timers/promises";
5
- import { readTextIfExists } from "@intentic/base/fs";
5
+ import { readTextIfExists, writeFileAtomic } from "@intentic/base/fs";
6
6
  import { parseJsonOr } from "@intentic/base/json";
7
7
  import { clearWindowsRunValue, homeDir } from "@intentic/local-agent";
8
+ import { z } from "zod";
9
+ import { baseDir } from "../config.js";
8
10
  import { readRegistryValue } from "../windows-registry.js";
9
11
  import { sessionOwner } from "./environment.js";
10
12
  import { runProcessSync } from "./exec.js";
11
- import { existingSyncSessions, MUTAGEN_CALL_TIMEOUT_MS, MUTAGEN_RUN_VALUE, ownershipOf, saysDaemonDown, saysVersionMismatch, SESSION_PREFIX, startMutagenDaemon, } from "./mutagen.js";
13
+ import { pairingKey, readState } from "./config.js";
14
+ import { declareOwnerPauses, markOwnerPausesAdopted, syncHeld } from "./holds.js";
15
+ import { existingSyncSessions, MUTAGEN_CALL_TIMEOUT_MS, MUTAGEN_RUN_VALUE, ownershipOf, saysDaemonDown, saysVersionMismatch, SESSION_PREFIX, startMutagenDaemon, syncSessionNames, } from "./mutagen.js";
12
16
  import { ownMutagenPath, resolveOnPath } from "./binary/mutagen-binary.js";
13
17
  import { movedAlready, mutagenDataDir, recordMove } from "./mutagen-env.js";
14
18
  const ours = (session, owner) => session.name?.startsWith(SESSION_PREFIX) === true && ownershipOf(session.labels, owner) !== "theirs";
@@ -69,32 +73,21 @@ const carrySessions = async (seams, plan) => {
69
73
  const RELOAD_TRIES = 20;
70
74
  const loadCarried = async (seams, carried) => {
71
75
  if (carried.length === 0) {
72
- return true;
76
+ return;
73
77
  }
74
78
  seams.own(["daemon", "stop"]);
75
79
  for (let tries = 0; tries < RELOAD_TRIES && seams.own(["sync", "list"]); tries += 1) {
76
80
  await seams.settle();
77
81
  }
78
82
  seams.startOwn();
79
- const resume = carried.filter((session) => !session.paused).map((session) => session.name);
80
- if (resume.length === 0) {
81
- return true;
82
- }
83
- for (let tries = 0; tries < RELOAD_TRIES; tries += 1) {
84
- if (seams.own(["sync", "resume", ...resume])) {
85
- return true;
86
- }
87
- await seams.settle();
88
- seams.startOwn();
89
- }
90
- return false;
91
83
  };
92
84
  export const moveSessions = async (seams, plan) => {
85
+ await seams.declarePaused(await seams.pausedBefore(plan.sync.filter((session) => session.paused).map((session) => session.name)));
93
86
  const carried = await carrySessions(seams, plan);
94
87
  const ended = (plan.sync.length === 0 || seams.shared(["sync", "terminate", ...plan.sync.map((session) => session.target)]).ok) &&
95
88
  (plan.terminateForwards.length === 0 || seams.shared(["forward", "terminate", ...plan.terminateForwards]).ok);
96
- const resumed = await loadCarried(seams, carried);
97
- return { carried, remade: plan.sync.filter((session) => !carried.includes(session)), ended, resumed };
89
+ await loadCarried(seams, carried);
90
+ return { carried, remade: plan.sync.filter((session) => !carried.includes(session)), ended };
98
91
  };
99
92
  export const registrationIsOurs = (registration, own, platform) => {
100
93
  if (registration === undefined) {
@@ -127,6 +120,16 @@ export const carryState = async (from, to, identifier) => {
127
120
  return false;
128
121
  }
129
122
  };
123
+ const pausedBeforePath = join(baseDir, "mutagen-move-paused.json");
124
+ const SightingSchema = z.array(z.string());
125
+ export const firstSighting = async (path, names) => {
126
+ const kept = SightingSchema.safeParse(parseJsonOr((await readTextIfExists(path)) ?? "", undefined));
127
+ if (kept.success) {
128
+ return kept.data;
129
+ }
130
+ await writeFileAtomic(path, `${JSON.stringify(names)}\n`);
131
+ return names;
132
+ };
130
133
  const realSeams = (mutagen, from) => ({
131
134
  shared: (args, autostart = false) => {
132
135
  const ran = runProcessSync(mutagen, args, { timeoutMs: MUTAGEN_CALL_TIMEOUT_MS, env: sharedEnv(autostart) });
@@ -136,6 +139,13 @@ const realSeams = (mutagen, from) => ({
136
139
  startOwn: () => startMutagenDaemon(mutagen),
137
140
  ownSessions: (names) => existingSyncSessions(mutagen, names),
138
141
  carry: async (identifier) => await carryState(from, mutagenDataDir, identifier),
142
+ pausedBefore: async (names) => await firstSighting(pausedBeforePath, names),
143
+ declarePaused: async (names) => {
144
+ const now = Date.now();
145
+ const owned = (await readState()).pairings.filter((pairing) => !syncHeld(pairing, now) && syncSessionNames(pairing).some((name) => names.includes(name)));
146
+ await declareOwnerPauses(new Set(owned.map(pairingKey)), now);
147
+ await markOwnerPausesAdopted();
148
+ },
139
149
  settle: async () => await sleep(500),
140
150
  restartTheirs: () => {
141
151
  const theirs = resolveOnPath("mutagen");
@@ -168,7 +178,7 @@ export const moveOffSharedMutagen = async (mutagen, log, seams) => {
168
178
  }
169
179
  const from = sharedDataDir();
170
180
  if (!existsSync(from) || from === mutagenDataDir) {
171
- await recordMove([]);
181
+ await recordMove();
172
182
  return;
173
183
  }
174
184
  const acts = seams ?? realSeams(mutagen, from);
@@ -191,9 +201,6 @@ export const moveOffSharedMutagen = async (mutagen, log, seams) => {
191
201
  else if (process.platform === "win32") {
192
202
  clearWindowsRunValue(MUTAGEN_RUN_VALUE);
193
203
  }
194
- if (!moved.resumed) {
195
- log(`this agent's Mutagen daemon did not resume the carried sessions that were running, so they are paused: \`intentic-machine sync resume\` resumes them.`);
196
- }
197
204
  if (!moved.ended) {
198
205
  log(`this agent's sessions in ${from} did not all end, so moving off it is tried again at the next start.`);
199
206
  return;
@@ -202,6 +209,7 @@ export const moveOffSharedMutagen = async (mutagen, log, seams) => {
202
209
  if (count > 0) {
203
210
  log(`moved off Mutagen's shared data directory (${from}): carried ${moved.carried.length} of this agent's ${plan.sync.length} sync session(s) to ${mutagenDataDir} with what they had synced${moved.remade.length > 0 ? `, the rest are made again there` : ""}, and ended its ${plan.terminateForwards.length} forward(s), which are made again${plan.othersRemain ? ". Everything else in it is left running" : ""}.`);
204
211
  }
205
- await recordMove(moved.remade.filter((session) => session.paused).map((session) => session.name));
212
+ await recordMove();
213
+ await rm(pausedBeforePath, { force: true });
206
214
  };
207
215
  //# sourceMappingURL=mutagen-move.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mutagen-move.js","sourceRoot":"","sources":["../../src/sync/mutagen-move.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,IAAI,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAY,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EACH,oBAAoB,EACpB,uBAAuB,EACvB,iBAAiB,EACjB,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,kBAAkB,GACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AA6C5E,MAAM,IAAI,GAAG,CAAC,OAAsB,EAAE,KAAa,EAAwD,EAAE,CACzG,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,cAAc,CAAC,KAAK,IAAI,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,QAAQ,CAAC;AAGzG,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAA8B,EAAE,QAAkC,EAAE,KAAa,EAAY,EAAE;IACpH,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IACxE,OAAO;QACH,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACzB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,IAAI;YAC1C,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,IAAI;SAClC,CAAC,CAAC;QACH,iBAAiB,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;QACpF,YAAY,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM;KACnF,CAAC;AACN,CAAC,CAAC;AAIF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAoC,EAAE,aAAsB,EAAW,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,aAAa,CAAC;AA8B7I,MAAM,SAAS,GAAG,CAAC,IAAiB,EAAW,EAAE;IAC7C,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACX,OAAO,EAAE,IAAI,EAAE,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;IACzH,CAAC;IACD,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAEnD,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAG,MAAiC,IAAI,EAAE,EAAE,CAAC;AAClI,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,KAAgB,EAAE,IAAwB,EAAE,SAAS,GAAG,KAAK,EAAW,EAAE,CACtF,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;AAWnF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAgB,EAAsB,EAAE;IAC/D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACpC,IAAI,IAAI,GAAY,KAAK,CAAC;IAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC5B,KAAK,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACrD,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;QACxD,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;AAC9I,CAAC,CAAC;AAaF,MAAM,aAAa,GAAG,KAAK,EAAE,KAAgB,EAAE,IAAc,EAA4B,EAAE;IACvF,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAG/D,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtH,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;QACxD,OAAO,EAAE,CAAC;IACd,CAAC;IAGD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC;IACxD,MAAM,OAAO,GAAoB,EAAE,CAAC;IACpC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAE/E,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;YAC9E,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC,CAAC;AAGF,MAAM,YAAY,GAAG,EAAE,CAAC;AAOxB,MAAM,WAAW,GAAG,KAAK,EAAE,KAAgB,EAAE,OAAiC,EAAoB,EAAE;IAChG,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAElF,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,QAAQ,EAAE,CAAC;IACjB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3F,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACnD,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;QACrB,KAAK,CAAC,QAAQ,EAAE,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,KAAgB,EAAE,IAAc,EAAkB,EAAE;IACnF,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACjD,MAAM,KAAK,GACP,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjH,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClH,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAClD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAC1G,CAAC,CAAC;AAIF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,YAAgC,EAAE,GAAW,EAAE,QAAyB,EAAW,EAAE;IACpH,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAChH,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC;AAGF,MAAM,aAAa,GAAG,GAAW,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AAGzG,MAAM,SAAS,GAAG,CAAC,SAAkB,EAAqB,EAAE;IACxD,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC/B,OAAO,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACxC,OAAO,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,yBAAyB,EAAE,GAAG,EAAE,CAAC;AACxE,CAAC,CAAC;AAIF,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,UAAU,CAAU,CAAC;AAIxD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,IAAY,EAAE,EAAU,EAAE,UAAkB,EAAoB,EAAE;IAC/F,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAC7F,IAAI,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAE3B,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACnD,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QAEL,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAChH,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,IAAY,EAAa,EAAE,CAAC,CAAC;IAC7D,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,GAAG,KAAK,EAAE,EAAE;QAChC,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,GAAG,EAAE,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC7G,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;IAC5E,CAAC;IACD,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC;IAC9G,QAAQ,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC;IAC3C,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC;IAC5D,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,CAAC;IAC/E,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC;IACpC,aAAa,EAAE,GAAG,EAAE;QAChB,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QACxC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,cAAc,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;YAClF,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,cAAc,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,GAAG,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IAC/I,CAAC;CACJ,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,0DAA0D,CAAC;AACnF,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,0BAA0B,CAAC,CAAC;AAG5F,MAAM,mBAAmB,GAAG,KAAK,IAAiC,EAAE;IAChE,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAE/B,OAAO,CAAC,MAAM,iBAAiB,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC;IAC9F,CAAC;IACD,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5F,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,KAAK,EAAE,KAAgB,EAAE,GAAQ,EAAiB,EAAE;IAC/E,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC/B,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,kBAAkB,CAAC,MAAM,mBAAmB,EAAE,EAAE,cAAc,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtF,KAAK,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;QACvC,GAAG,CAAC,6FAA6F,CAAC,CAAC;IACvG,CAAC;AACL,CAAC,CAAC;AAIF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,OAAe,EAAE,GAAQ,EAAE,KAAiB,EAAiB,EAAE;IACtG,IAAI,MAAM,YAAY,EAAE,EAAE,CAAC;QACvB,OAAO;IACX,CAAC;IACD,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;QAC/C,MAAM,UAAU,CAAC,EAAE,CAAC,CAAC;QACrB,OAAO;IACX,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACvB,GAAG,CAAC,wCAAwC,IAAI,0EAA0E,CAAC,CAAC;QAC5H,OAAO;IACX,CAAC;IACD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC;IACpE,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7C,IAAI,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,MAAM,sBAAsB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC5C,CAAC;aAAM,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YACnD,GAAG,CAAC,2BAA2B,IAAI,mHAAmH,CAAC,CAAC;QAC5J,CAAC;IACL,CAAC;SAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACtC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACjB,GAAG,CAAC,uJAAuJ,CAAC,CAAC;IACjK,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,4BAA4B,IAAI,sEAAsE,CAAC,CAAC;QAC5G,OAAO;IACX,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;IAC/D,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACZ,GAAG,CACC,8CAA8C,IAAI,cAAc,KAAK,CAAC,OAAO,CAAC,MAAM,oBAAoB,IAAI,CAAC,IAAI,CAAC,MAAM,uBAAuB,cAAc,6BAA6B,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,EAAE,mBAAmB,IAAI,CAAC,iBAAiB,CAAC,MAAM,oCAAoC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC,CAAC,EAAE,GAAG,CACtZ,CAAC;IACN,CAAC;IACD,MAAM,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AACtG,CAAC,CAAC"}
1
+ {"version":3,"file":"mutagen-move.js","sourceRoot":"","sources":["../../src/sync/mutagen-move.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,7 @@ export type Ownership = "ours" | "theirs" | "unlabelled";
21
21
  export declare const ownershipOf: (labels: Readonly<Record<string, string>> | undefined, owner: string) => Ownership;
22
22
  export declare const sessionName: (key: string) => string;
23
23
  export declare const backupSessionName: (key: string) => string;
24
- export declare const syncSessionNames: (pairing: Pick<Pairing, "sandboxId" | "project" | "key" | "projectsHost">) => readonly string[];
24
+ export declare const syncSessionNames: (pairing: Pick<Pairing, "sandboxId" | "project">) => readonly string[];
25
25
  export declare const forwardSessionName: (sandboxId: string, port: number) => string;
26
26
  export interface ListedSession {
27
27
  readonly name: string;
@@ -135,13 +135,8 @@ export interface SessionState {
135
135
  export declare const readSessionState: (mutagen: string, name: string) => SessionState;
136
136
  export declare const sessionStateOf: (session: LiveSession | undefined) => SessionState;
137
137
  export declare const existingSyncSessions: (mutagen: string, names: readonly string[]) => string[] | undefined;
138
- export declare const pauseRunningSync: (mutagen: string, pairing: Pairing) => boolean;
139
- export declare const pauseRunningSessions: (mutagen: string, pairing: Pairing) => readonly string[] | undefined;
138
+ export declare const pauseSessions: (mutagen: string, names: readonly string[]) => boolean;
140
139
  export declare const resumeSessions: (mutagen: string, names: readonly string[]) => Promise<boolean>;
141
- export declare const resumeNamedSessions: (mutagen: string, names: readonly string[]) => Promise<boolean>;
142
- export declare const resumeSwapPausedSync: (mutagen: string, pairing: Pairing) => Promise<boolean>;
143
- export declare const resumeAutoPausedSync: (mutagen: string, pairing: Pairing) => Promise<boolean>;
144
- export declare const resumeWatcherPausedSync: (mutagen: string, pairing: Pairing) => Promise<boolean>;
145
140
  export declare const sameEnds: (session: Pick<LiveSession, "alpha" | "beta">, spec: SyncSessionSpec) => boolean;
146
141
  export declare const liveMode: (session: Pick<LiveSession, "mode">) => string;
147
142
  export declare const liveWatchMode: (session: Pick<LiveSession, "alpha" | "beta" | "watch">, from: SyncSessionSpec["from"]) => string;
@@ -151,11 +146,11 @@ export interface RelabelBudget {
151
146
  readonly take: () => boolean;
152
147
  }
153
148
  export declare const relabelBudget: (count: number) => RelabelBudget;
154
- export declare const ensureSyncSession: (mutagen: string, pairing: Pairing, log: Log, relabels?: RelabelBudget) => Promise<boolean>;
149
+ export declare const ensureSyncSession: (mutagen: string, pairing: Pairing, log: Log, held: boolean, relabels?: RelabelBudget) => Promise<boolean>;
155
150
  export declare const sessionSpecs: (pairing: Pairing & {
156
151
  readonly localDir: string;
157
152
  }, symlinks: SymlinkMode, owner?: string) => readonly SyncSessionSpec[];
158
- export declare const strayBackupSessions: (pairing: Pick<Pairing, "sandboxId" | "project" | "key">, live: readonly string[]) => string[];
153
+ export declare const strayBackupSessions: (pairing: Pick<Pairing, "sandboxId" | "project">, live: readonly string[]) => string[];
159
154
  export declare const surplusSessions: (sessions: readonly LiveSession[]) => string[];
160
155
  export declare const convergePlan: (sessions: readonly LiveSession[], spec: SyncSessionSpec) => "keep" | "create" | "replace" | "relabel";
161
156
  export declare const settlesFirst: (spec: Pick<SyncSessionSpec, "mode">, live: readonly Pick<LiveSession, "mode">[]) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"mutagen.d.ts","sourceRoot":"","sources":["../../src/sync/mutagen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutagen.d.ts","sourceRoot":"","sources":["../../src/sync/mutagen.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { spawnSync } from "node:child_process";
2
- import { createHash } from "node:crypto";
3
2
  import { join } from "node:path";
4
3
  import { errorMessage } from "@intentic/base/errors";
5
4
  import { plural } from "@intentic/base/format";
@@ -10,7 +9,7 @@ import { clearAdoptFolder, isProjectPairing, pairingKey, pairingRemoteDir, proje
10
9
  import { dockerEndpointAnswers, liveIdentity, mutagenForwardUrl, mutagenUrl, pairingEndpoint } from "./endpoint.js";
11
10
  import { labelValue, sessionOwner } from "./environment.js";
12
11
  import { runProcess, runProcessSync } from "./exec.js";
13
- import { carriedPause, dropCarriedPause, mutagenEnv } from "./mutagen-env.js";
12
+ import { mutagenEnv } from "./mutagen-env.js";
14
13
  import { projectShell, realProjectRunner, sandboxCopy } from "./project/project-remote.js";
15
14
  import { clearConflictResidue, sweepDerivedResidue } from "./residue.js";
16
15
  import { BACKUP_IGNORES, ignoresFor, mutagenSshPath, sanitizeId, sshTransportAnswers } from "./ssh.js";
@@ -33,20 +32,9 @@ export const ownershipOf = (labels, owner) => {
33
32
  const said = labels?.[OWNER_LABEL];
34
33
  return said === undefined || said === "" ? "unlabelled" : said === owner ? "ours" : "theirs";
35
34
  };
36
- export const sessionName = (key) => {
37
- const at = key.lastIndexOf("~");
38
- if (at === -1) {
39
- return `${SESSION_PREFIX}${sanitizeId(key)}`;
40
- }
41
- const name = key.slice(at + 1);
42
- const hash = createHash("sha256").update(name).digest("hex").slice(0, 8);
43
- return `${SESSION_PREFIX}${sanitizeId(key.slice(0, at))}--${sanitizeId(name)}-${hash}`;
44
- };
35
+ export const sessionName = (key) => `${SESSION_PREFIX}${sanitizeId(key)}`;
45
36
  export const backupSessionName = (key) => `${sessionName(key)}-state`;
46
37
  export const syncSessionNames = (pairing) => {
47
- if (pairing.projectsHost === true) {
48
- return [];
49
- }
50
38
  const key = pairingKey(pairing);
51
39
  return isProjectPairing(pairing) ? [sessionName(key)] : [sessionName(key), backupSessionName(key)];
52
40
  };
@@ -315,31 +303,7 @@ export const existingSyncSessions = (mutagen, names) => {
315
303
  const held = new Set(oursIn(listed, SESSION_PREFIX, sessionOwner()));
316
304
  return names.filter((name) => held.has(name));
317
305
  };
318
- export const pauseRunningSync = (mutagen, pairing) => {
319
- if (pairing.mode !== "sync") {
320
- return false;
321
- }
322
- const names = existingSyncSessions(mutagen, syncSessionNames(pairing));
323
- if (names === undefined || names.every((name) => readSessionState(mutagen, name).paused === true)) {
324
- return false;
325
- }
326
- const result = runProcessSync(mutagen, ["sync", "pause", ...names], { timeoutMs: MUTAGEN_CALL_TIMEOUT_MS, quiet: true });
327
- return result.status === 0;
328
- };
329
- export const pauseRunningSessions = (mutagen, pairing) => {
330
- if (pairing.mode !== "sync") {
331
- return [];
332
- }
333
- const names = existingSyncSessions(mutagen, syncSessionNames(pairing));
334
- if (names === undefined) {
335
- return undefined;
336
- }
337
- const running = names.filter((name) => readSessionState(mutagen, name).paused !== true);
338
- if (running.length === 0) {
339
- return [];
340
- }
341
- return runProcessSync(mutagen, ["sync", "pause", ...running], { timeoutMs: MUTAGEN_CALL_TIMEOUT_MS, quiet: true }).status === 0 ? running : undefined;
342
- };
306
+ export const pauseSessions = (mutagen, names) => names.length === 0 || runProcessSync(mutagen, ["sync", "pause", ...names], { timeoutMs: MUTAGEN_CALL_TIMEOUT_MS, quiet: true }).status === 0;
343
307
  export const resumeSessions = async (mutagen, names) => {
344
308
  for (const name of names) {
345
309
  await runProcess(mutagen, ["sync", "resume", name], { timeoutMs: MUTAGEN_CALL_TIMEOUT_MS });
@@ -347,22 +311,6 @@ export const resumeSessions = async (mutagen, names) => {
347
311
  const after = names.length === 0 ? [] : listSessions(mutagen, names);
348
312
  return after !== undefined && !after.some((session) => session.paused === true);
349
313
  };
350
- export const resumeNamedSessions = async (mutagen, names) => {
351
- const held = names.length === 0 ? [] : existingSyncSessions(mutagen, names);
352
- return held !== undefined && (await resumeSessions(mutagen, held));
353
- };
354
- export const resumeSwapPausedSync = async (mutagen, pairing) => {
355
- const names = pairing.fileSyncLowDisk === undefined ? existingSyncSessions(mutagen, syncSessionNames(pairing)) : undefined;
356
- return names !== undefined && (await resumeSessions(mutagen, names));
357
- };
358
- export const resumeAutoPausedSync = async (mutagen, pairing) => {
359
- if (pairing.mode !== "sync" || pairing.fileSyncAutoPaused !== true || pairing.fileSyncLowDisk !== undefined) {
360
- return false;
361
- }
362
- const names = existingSyncSessions(mutagen, syncSessionNames(pairing));
363
- return names !== undefined && names.length > 0 && (await resumeSessions(mutagen, names));
364
- };
365
- export const resumeWatcherPausedSync = async (mutagen, pairing) => await resumeSwapPausedSync(mutagen, pairing);
366
314
  export const sameEnds = (session, spec) => {
367
315
  const local = {
368
316
  protocol: "local",
@@ -400,12 +348,12 @@ export const relabelBudget = (count) => {
400
348
  };
401
349
  };
402
350
  const NO_RELABELS = { take: () => false };
403
- export const ensureSyncSession = async (mutagen, pairing, log, relabels = NO_RELABELS) => {
351
+ export const ensureSyncSession = async (mutagen, pairing, log, held, relabels = NO_RELABELS) => {
404
352
  if (pairing.mode !== "sync" || pairing.localDir === undefined) {
405
353
  return true;
406
354
  }
407
- const held = { ...pairing, localDir: pairing.localDir };
408
- if (pairing.adoptFolder === true && !(await adoptBeforeFirstSession(mutagen, held, log))) {
355
+ const placed = { ...pairing, localDir: pairing.localDir };
356
+ if (pairing.adoptFolder === true && !(await adoptBeforeFirstSession(mutagen, placed, log))) {
409
357
  return false;
410
358
  }
411
359
  const symlinks = await deviceSymlinks();
@@ -414,8 +362,8 @@ export const ensureSyncSession = async (mutagen, pairing, log, relabels = NO_REL
414
362
  }
415
363
  let converged = true;
416
364
  const answers = transportAnswers(pairing);
417
- for (const spec of sessionSpecs(held, symlinks.mode, sessionOwner())) {
418
- converged = (await convergeSession(mutagen, spec, log, answers, relabels)) && converged;
365
+ for (const spec of sessionSpecs(placed, symlinks.mode, sessionOwner())) {
366
+ converged = (await convergeSession(mutagen, spec, { log, answers, relabels, held })) && converged;
419
367
  }
420
368
  retireStrayBackup(mutagen, pairing, log);
421
369
  return converged;
@@ -520,7 +468,7 @@ export const transportAnswers = (pairing) => {
520
468
  export const terminationTargets = (sessions, name) => sessions.length > 0 && sessions.every((session) => session.identifier !== undefined)
521
469
  ? sessions.flatMap((session) => session.identifier ?? [])
522
470
  : [name];
523
- const convergeSession = async (mutagen, spec, log, answers, relabels) => {
471
+ const convergeSession = async (mutagen, spec, { log, answers, relabels, held }) => {
524
472
  const listed = readSessions(mutagen, spec.name);
525
473
  if (listed === undefined) {
526
474
  log(`${spec.name}: Mutagen did not answer a listing, so this session is left as it is this pass. Retrying later.`);
@@ -542,7 +490,6 @@ const convergeSession = async (mutagen, spec, log, answers, relabels) => {
542
490
  if (plan === "relabel" && !relabels.take()) {
543
491
  return false;
544
492
  }
545
- const live = sessions.length === 1 ? sessions[0] : undefined;
546
493
  if (sessions.length > 1) {
547
494
  log(`${spec.name}: ${sessions.length} sync sessions share this name, which conflict with each other; replacing them with one.`);
548
495
  }
@@ -563,23 +510,16 @@ const convergeSession = async (mutagen, spec, log, answers, relabels) => {
563
510
  : `${spec.name}: the running sync session does not match this build's rules (its ignores, its folder, which way it syncs, or what it does with symbolic links): recreating it so they apply, as ${spec.mode}. This starts the comparison from scratch.`);
564
511
  await runProcess(mutagen, ["sync", "terminate", ...terminationTargets(sessions, spec.name)], { timeoutMs: MUTAGEN_CALL_TIMEOUT_MS });
565
512
  }
566
- await createSession(mutagen, spec, live, log);
513
+ await runMutagenAsync(mutagen, mutagenCreateArgs(spec, held), log);
567
514
  return true;
568
515
  };
569
- const createSession = async (mutagen, spec, replaced, log) => {
570
- const carried = replaced === undefined && (await carriedPause(spec.name));
571
- await runMutagenAsync(mutagen, mutagenCreateArgs(spec, replaced?.paused === true || carried), log);
572
- if (carried) {
573
- await dropCarriedPause(spec.name);
574
- }
575
- };
576
516
  const SWEEP_TIMEOUT_MS = 60_000;
577
517
  export const healDerivedConflicts = async (mutagen, pairing, log, asked = false) => {
578
518
  const idle = { removed: [], standing: 0 };
579
519
  if (pairing.mode !== "sync" || pairing.localDir === undefined || syncMode(pairing) !== "two-way-safe") {
580
520
  return idle;
581
521
  }
582
- if (!asked && (pairing.autoHealOff === true || pairing.fileSyncAutoPaused === true)) {
522
+ if (!asked && pairing.autoHealOff === true) {
583
523
  return idle;
584
524
  }
585
525
  const held = readSessionConflicts(mutagen, sessionName(pairingKey(pairing)));