create-principles-disciple 1.145.38 → 1.145.41

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 (51) hide show
  1. package/_release/product-identity.json +1 -1
  2. package/codex-adapter/dist/ingestion/catch-up.d.ts +1 -1
  3. package/codex-adapter/dist/ingestion/catch-up.js +10 -2
  4. package/codex-adapter/dist/pd-hook.js +6 -2
  5. package/codex-adapter/dist/worker/workspace-worker.js +2 -1
  6. package/core/package.json +1 -1
  7. package/dist/installer.d.ts +20 -6
  8. package/dist/installer.d.ts.map +1 -1
  9. package/dist/installer.js +80 -30
  10. package/dist/installer.js.map +1 -1
  11. package/dist/installers/workbuddy-host-installer.d.ts +36 -0
  12. package/dist/installers/workbuddy-host-installer.d.ts.map +1 -1
  13. package/dist/installers/workbuddy-host-installer.js +103 -8
  14. package/dist/installers/workbuddy-host-installer.js.map +1 -1
  15. package/dist/utils/config-file-io.d.ts +10 -2
  16. package/dist/utils/config-file-io.d.ts.map +1 -1
  17. package/dist/utils/config-file-io.js +32 -9
  18. package/dist/utils/config-file-io.js.map +1 -1
  19. package/host-runtime/dist/workbuddy-worker-status.js +4 -1
  20. package/host-runtime/package.json +1 -1
  21. package/package.json +10 -3
  22. package/pd-cli/dist/commands/health-codex-install.d.ts +4 -0
  23. package/pd-cli/dist/commands/health-codex-install.d.ts.map +1 -1
  24. package/pd-cli/dist/commands/health-codex-install.js +2 -2
  25. package/pd-cli/dist/commands/health-codex-install.js.map +1 -1
  26. package/pd-cli/dist/commands/health-codex.d.ts.map +1 -1
  27. package/pd-cli/dist/commands/health-codex.js +30 -2
  28. package/pd-cli/dist/commands/health-codex.js.map +1 -1
  29. package/pd-cli/dist/commands/pain-explicit.d.ts.map +1 -1
  30. package/pd-cli/dist/commands/pain-explicit.js +20 -20
  31. package/pd-cli/dist/commands/pain-explicit.js.map +1 -1
  32. package/pd-cli/package.json +1 -1
  33. package/plugin/dist/bundle.js +1 -1
  34. package/plugin/dist/openclaw.plugin.json +1 -1
  35. package/plugin/openclaw.plugin.json +1 -1
  36. package/plugin/package.json +1 -1
  37. package/release-manager/dist/installer.d.ts +20 -6
  38. package/release-manager/dist/installer.d.ts.map +1 -1
  39. package/release-manager/dist/installer.js +80 -30
  40. package/release-manager/dist/installer.js.map +1 -1
  41. package/release-manager/dist/installers/workbuddy-host-installer.d.ts +36 -0
  42. package/release-manager/dist/installers/workbuddy-host-installer.d.ts.map +1 -1
  43. package/release-manager/dist/installers/workbuddy-host-installer.js +103 -8
  44. package/release-manager/dist/installers/workbuddy-host-installer.js.map +1 -1
  45. package/release-manager/dist/utils/config-file-io.d.ts +10 -2
  46. package/release-manager/dist/utils/config-file-io.d.ts.map +1 -1
  47. package/release-manager/dist/utils/config-file-io.js +32 -9
  48. package/release-manager/dist/utils/config-file-io.js.map +1 -1
  49. package/release-manager/package.json +10 -3
  50. package/workbuddy-adapter/dist/pd-hook.js +5 -1
  51. package/workbuddy-adapter/dist/worker/workspace-worker.js +2 -1
@@ -174,6 +174,42 @@ export interface WorkbuddyDetectDetails extends HostDetectResult {
174
174
  /** settings.json exists AND parsed (false also when unparsable — install fails loud there). */
175
175
  settingsExisted: boolean;
176
176
  }
177
+ export interface WorkbuddyEarlyPreflightDeps {
178
+ homeDir?: () => string;
179
+ /** Bash availability probe override (default: literal `bash -c "exit 0"`). */
180
+ probeBash?: () => {
181
+ ok: true;
182
+ } | {
183
+ ok: false;
184
+ detail: string;
185
+ };
186
+ /** Exclusive-open probe; returns the errno string when the file is held. */
187
+ probeHostFileLock?: (filePath: string) => string | undefined;
188
+ platform?: (typeof process)['platform'];
189
+ }
190
+ export type WorkbuddyEarlyPreflight = {
191
+ ok: true;
192
+ } | {
193
+ ok: false;
194
+ reason: string;
195
+ nextAction: string;
196
+ };
197
+ /**
198
+ * PRI-1062: hard preflights the main installer runs BEFORE any side effect.
199
+ *
200
+ * Call-site contract (enforced in installer.ts): this must run before the
201
+ * gateway pre-flight, because that block may STOP a running OpenClaw gateway.
202
+ * A refusal from here returns immediately and would otherwise leave the
203
+ * Owner's gateway down, since the restart is only honoured at the end of the
204
+ * install flow.
205
+ *
206
+ * A RUNNING WorkBuddy holds settings.json with exclusive sharing — the
207
+ * commit-stage atomic rename fails with EPERM after minutes of npm work and
208
+ * the whole install rolls back. Git Bash availability is equally knowable
209
+ * up front. Both checks are cheap (one bash spawn + two file opens) and
210
+ * fail with a nextAction naming the exact user action.
211
+ */
212
+ export declare function runWorkbuddyEarlyPreflight(deps?: WorkbuddyEarlyPreflightDeps): WorkbuddyEarlyPreflight;
177
213
  export declare class WorkBuddyHostInstaller implements HostInstaller {
178
214
  readonly hostId = "workbuddy";
179
215
  private readonly deps;
@@ -1 +1 @@
1
- {"version":3,"file":"workbuddy-host-installer.d.ts","sourceRoot":"","sources":["../../src/installers/workbuddy-host-installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workbuddy-host-installer.d.ts","sourceRoot":"","sources":["../../src/installers/workbuddy-host-installer.ts"],"names":[],"mappings":"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"}
@@ -41,8 +41,8 @@
41
41
  * - rc-9-no-silent-fallback: engine-unreachable fallback is reported in the
42
42
  * result reason; every result carries reason + nextAction.
43
43
  */
44
- import { spawnSync } from 'node:child_process';
45
- import { existsSync, mkdirSync, readdirSync, readFileSync, renameSync, rmSync, cpSync, writeFileSync } from 'node:fs';
44
+ import { spawnSync, execFileSync } from 'node:child_process';
45
+ import { existsSync, mkdirSync, readdirSync, readFileSync, renameSync, rmSync, cpSync, writeFileSync, openSync, closeSync } from 'node:fs';
46
46
  import * as path from 'node:path';
47
47
  import * as yaml from 'js-yaml';
48
48
  import semver from 'semver';
@@ -937,6 +937,105 @@ function applyWorkbuddyGovernanceRuntimeProfile(governanceDir, profile) {
937
937
  return { ok: true, configPath, profileId: GOVERNANCE_PROFILE_ID, model, pendingAgents };
938
938
  }
939
939
  // ─── WorkBuddyHostInstaller ─────────────────────────────────────────────────
940
+ /** Shared Git Bash failure message (win32 hooks launch through bash). */
941
+ function gitBashUnavailableReason(detail) {
942
+ return {
943
+ reason: `git_bash_not_available: WorkBuddy executes command hooks through Git Bash on Windows, but "bash" is not resolvable (${detail}). Hooks would fail to launch.`,
944
+ nextAction: 'Install Git for Windows (or otherwise provide bash.exe on PATH), then re-run the installer.',
945
+ };
946
+ }
947
+ /** Default bash probe: literal program name + argv array, no shell. */
948
+ function defaultProbeBash() {
949
+ try {
950
+ execFileSync('bash', ['-c', 'exit 0'], { encoding: 'utf-8', timeout: 15_000, windowsHide: true });
951
+ return { ok: true };
952
+ }
953
+ catch (error) {
954
+ const err = error;
955
+ return { ok: false, detail: typeof err.status === 'number' ? `exit ${err.status}` : (err.message ?? 'unresolvable') };
956
+ }
957
+ }
958
+ /**
959
+ * Default lock probe: a read-WRITE open of the host JSON file.
960
+ *
961
+ * Why `r+` and not `r`: a plain read open succeeds whenever the holder shared
962
+ * FILE_SHARE_READ — the common case for a running editor-host — while the
963
+ * commit-stage `rename` still fails. A write-intent open narrows that gap by
964
+ * requiring write access on the shared handle.
965
+ *
966
+ * Known limit (documented, not guessed): the final `rename` to this path needs
967
+ * DELETE sharing, which Node exposes no flag for, so a host that grants
968
+ * read+write but not delete is NOT detectable here. That residual case is
969
+ * covered by atomicReplaceTextFile's rename retry rather than by this probe.
970
+ *
971
+ * EPERM/EBUSY (sharing violation while WorkBuddy runs) and EACCES are lock
972
+ * signals; anything else (incl. ENOENT) is not a lock verdict.
973
+ */
974
+ function defaultProbeHostFileLock(filePath) {
975
+ let fd;
976
+ try {
977
+ fd = openSync(filePath, 'r+');
978
+ closeSync(fd);
979
+ fd = undefined;
980
+ return undefined;
981
+ }
982
+ catch (error) {
983
+ const code = error?.code;
984
+ if (code === 'EPERM' || code === 'EBUSY' || code === 'EACCES')
985
+ return String(code);
986
+ return undefined;
987
+ }
988
+ finally {
989
+ if (fd !== undefined) {
990
+ try {
991
+ closeSync(fd);
992
+ }
993
+ catch { /* already closed */ }
994
+ }
995
+ }
996
+ }
997
+ /**
998
+ * PRI-1062: hard preflights the main installer runs BEFORE any side effect.
999
+ *
1000
+ * Call-site contract (enforced in installer.ts): this must run before the
1001
+ * gateway pre-flight, because that block may STOP a running OpenClaw gateway.
1002
+ * A refusal from here returns immediately and would otherwise leave the
1003
+ * Owner's gateway down, since the restart is only honoured at the end of the
1004
+ * install flow.
1005
+ *
1006
+ * A RUNNING WorkBuddy holds settings.json with exclusive sharing — the
1007
+ * commit-stage atomic rename fails with EPERM after minutes of npm work and
1008
+ * the whole install rolls back. Git Bash availability is equally knowable
1009
+ * up front. Both checks are cheap (one bash spawn + two file opens) and
1010
+ * fail with a nextAction naming the exact user action.
1011
+ */
1012
+ export function runWorkbuddyEarlyPreflight(deps = {}) {
1013
+ const platform = deps.platform ?? process.platform;
1014
+ if (platform === 'win32') {
1015
+ const bash = (deps.probeBash ?? defaultProbeBash)();
1016
+ if (!bash.ok)
1017
+ return { ok: false, ...gitBashUnavailableReason(bash.detail) };
1018
+ }
1019
+ const paths = resolveWorkbuddyPaths((deps.homeDir ?? getHomeDir)());
1020
+ const probe = deps.probeHostFileLock ?? defaultProbeHostFileLock;
1021
+ const hostFiles = [
1022
+ ['settings.json', paths.settingsPath],
1023
+ ['installed_plugins.json', paths.registryPath],
1024
+ ];
1025
+ for (const [label, filePath] of hostFiles) {
1026
+ if (!existsSync(filePath))
1027
+ continue;
1028
+ const code = probe(filePath);
1029
+ if (code !== undefined) {
1030
+ return {
1031
+ ok: false,
1032
+ reason: `workbuddy_host_file_locked: ${label} is held with an exclusive handle (${code}) — WorkBuddy appears to be running. The registration commit would fail after minutes of work and roll the install back.`,
1033
+ nextAction: 'Fully exit WorkBuddy (tray icon → Quit, then confirm in Task Manager that no WorkBuddy process remains) and re-run the installer. This check ran before any installation work, so nothing needs recovering.',
1034
+ };
1035
+ }
1036
+ }
1037
+ return { ok: true };
1038
+ }
940
1039
  /** Materialize the PD-owned marketplace dir (source never escapes its root). */
941
1040
  function materializeMarketplace(marketplaceRoot, pluginDir) {
942
1041
  rmSync(marketplaceRoot, { recursive: true, force: true });
@@ -1024,11 +1123,7 @@ export class WorkBuddyHostInstaller {
1024
1123
  if (process.platform === 'win32') {
1025
1124
  const bashCheck = this.deps.runCommand('bash', ['-c', 'exit 0'], { timeoutMs: 15_000 });
1026
1125
  if (bashCheck.status !== 0) {
1027
- return {
1028
- ok: false,
1029
- reason: `git_bash_not_available: WorkBuddy executes command hooks through Git Bash on Windows, but "bash" is not resolvable (${bashCheck.error ?? `exit ${bashCheck.status}`}). Hooks would fail to launch.`,
1030
- nextAction: 'Install Git for Windows (or otherwise provide bash.exe on PATH), then re-run the installer.',
1031
- };
1126
+ return { ok: false, ...gitBashUnavailableReason(bashCheck.error ?? `exit ${bashCheck.status}`) };
1032
1127
  }
1033
1128
  }
1034
1129
  return { ok: true };
@@ -1189,7 +1284,7 @@ export class WorkBuddyHostInstaller {
1189
1284
  configPath: p.settingsPath,
1190
1285
  configAction: registration.settingsAction,
1191
1286
  reason: `Registered ${WORKBUDDY_PLUGIN_KEY} via ${registration.mode}${registration.mode === 'engine' ? '' : ` (engine unreachable: ${registration.engineNote})`}. Governance workspace initialized at ${p.governanceDir}${governance.dbInit === 'skipped' ? ` (${governance.note})` : ''}.${profileNote}${keywordDefaultsNote}`,
1192
- nextAction: `${effectiveNote}${governance.dbInit === 'skipped' ? ` After the install, run "pd runtime init --workspace ${p.governanceDir}" to create the governance databases.` : ''} To disable keyword Pain, set features.workbuddy_live_keyword_pain.enabled=false; to disable all WorkBuddy governance, set features.host.workbuddy.enabled=false. Existing workspaces retain their prior settings.${pendingRebindNote}`,
1287
+ nextAction: `${effectiveNote}${governance.dbInit === 'skipped' ? ` After the install, run "pd runtime init --workspace ${p.governanceDir}" to create the governance databases.` : ''} To disable, edit ${path.join(p.governanceDir, '.pd', 'config.yaml')} — each flag id is ONE flat key (not nested). In the existing "features:" block set workbuddy_live_keyword_pain: {enabled: false} to disable keyword Pain only, or host.workbuddy: {enabled: false} to disable all WorkBuddy governance. Existing workspaces retain their prior settings.${pendingRebindNote}`,
1193
1288
  };
1194
1289
  }
1195
1290
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"workbuddy-host-installer.js","sourceRoot":"","sources":["../../src/installers/workbuddy-host-installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workbuddy-host-installer.js","sourceRoot":"","sources":["../../src/installers/workbuddy-host-installer.ts"],"names":[],"mappings":"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"}
@@ -14,8 +14,16 @@ export interface ConfigFileOps {
14
14
  }
15
15
  /** Extract a POSIX errno code (EPERM/EACCES/ENOENT/...) from a thrown fs error. */
16
16
  export declare function errnoCode(value: unknown): string | undefined;
17
- /** Same-directory, flushed temp write followed by atomic replacement. */
18
- export declare function atomicReplaceTextFile(filePath: string, content: string, ops?: ConfigFileOps): void;
17
+ export interface AtomicReplaceRetryOptions {
18
+ /** Total rename attempts (default 5: initial + 4 retries). */
19
+ maxAttempts?: number;
20
+ sleep?: (milliseconds: number) => void;
21
+ }
22
+ /** Same-directory, flushed temp write followed by atomic replacement.
23
+ * PRI-1062: the rename stage retries briefly on Windows lock errnos — the
24
+ * WorkBuddy host holds settings.json while running and a single-attempt
25
+ * rename turned minutes of installer work into a full rollback. */
26
+ export declare function atomicReplaceTextFile(filePath: string, content: string, ops?: ConfigFileOps, retry?: AtomicReplaceRetryOptions): void;
19
27
  export interface ConfigFileLockOptions {
20
28
  ops?: ConfigFileOps;
21
29
  maxAttempts?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"config-file-io.d.ts","sourceRoot":"","sources":["../../src/utils/config-file-io.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,OAAO,EAAE,CAAC,WAAW,CAAC;IACnC,QAAQ,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC;IAC7B,aAAa,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC;IACvC,SAAS,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC;IAC/B,SAAS,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC;IAC/B,SAAS,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC;IAC/B,UAAU,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC;IACjC,UAAU,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC;IACjC,SAAS,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC;IAC/B,YAAY,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC;IACrC,UAAU,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC;CAClC;AAID,mFAAmF;AACnF,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAI5D;AAED,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,GAAE,aAAwB,GAAG,IAAI,CAkC5G;AAgBD,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;CACxC;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,EACf,OAAO,GAAE,qBAA0B,GAClC,CAAC,CAyCH"}
1
+ {"version":3,"file":"config-file-io.d.ts","sourceRoot":"","sources":["../../src/utils/config-file-io.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAG9B,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,OAAO,EAAE,CAAC,WAAW,CAAC;IACnC,QAAQ,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC;IAC7B,aAAa,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC;IACvC,SAAS,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC;IAC/B,SAAS,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC;IAC/B,SAAS,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC;IAC/B,UAAU,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC;IACjC,UAAU,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC;IACjC,SAAS,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC;IAC/B,YAAY,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC;IACrC,UAAU,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC;CAClC;AAID,mFAAmF;AACnF,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAI5D;AAOD,MAAM,WAAW,yBAAyB;IACxC,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;CACxC;AAOD;;;mEAGmE;AAEnE,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,GAAG,GAAE,aAAwB,EAC7B,KAAK,GAAE,yBAA8B,GACpC,IAAI,CA8CN;AAWD,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;CACxC;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,CAAC,EACf,OAAO,GAAE,qBAA0B,GAClC,CAAC,CAyCH"}
@@ -8,8 +8,23 @@ export function errnoCode(value) {
8
8
  const { code } = value;
9
9
  return typeof code === 'string' ? code : undefined;
10
10
  }
11
- /** Same-directory, flushed temp write followed by atomic replacement. */
12
- export function atomicReplaceTextFile(filePath, content, ops = FILE_OPS) {
11
+ /** Rename errnos worth retrying: a host process (WorkBuddy) holding the
12
+ * target with exclusive sharing surfaces as these on Windows. Transient by
13
+ * nature — the host rewrites its settings periodically and releases. */
14
+ const RETRYABLE_RENAME_ERRNOS = new Set(['EPERM', 'EBUSY', 'EACCES']);
15
+ function sleepSync(milliseconds) {
16
+ if (milliseconds <= 0)
17
+ return;
18
+ Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, milliseconds);
19
+ }
20
+ /** Same-directory, flushed temp write followed by atomic replacement.
21
+ * PRI-1062: the rename stage retries briefly on Windows lock errnos — the
22
+ * WorkBuddy host holds settings.json while running and a single-attempt
23
+ * rename turned minutes of installer work into a full rollback. */
24
+ // eslint-disable-next-line @typescript-eslint/max-params -- fs-ops seam + retry options; merging them would break every existing ops caller
25
+ export function atomicReplaceTextFile(filePath, content, ops = FILE_OPS, retry = {}) {
26
+ const maxAttempts = Math.max(1, retry.maxAttempts ?? 5);
27
+ const wait = retry.sleep ?? sleepSync;
13
28
  const tempDir = ops.mkdtempSync(path.join(path.dirname(filePath), '.pd-config-write-'));
14
29
  const tempPath = path.join(tempDir, 'config.yaml');
15
30
  let fd;
@@ -21,8 +36,21 @@ export function atomicReplaceTextFile(filePath, content, ops = FILE_OPS) {
21
36
  ops.fsyncSync(fd);
22
37
  ops.closeSync(fd);
23
38
  fd = undefined;
24
- ops.renameSync(tempPath, filePath);
25
- replaced = true;
39
+ for (let attempt = 0;; attempt += 1) {
40
+ try {
41
+ ops.renameSync(tempPath, filePath);
42
+ operationError = undefined;
43
+ break;
44
+ }
45
+ catch (error) {
46
+ operationError = error;
47
+ if (attempt >= maxAttempts - 1 || !RETRYABLE_RENAME_ERRNOS.has(errnoCode(error) ?? ''))
48
+ break;
49
+ wait(Math.min(100 * 2 ** attempt, 1_600));
50
+ }
51
+ }
52
+ if (operationError === undefined)
53
+ replaced = true;
26
54
  }
27
55
  catch (error) {
28
56
  operationError = error;
@@ -60,11 +88,6 @@ export function atomicReplaceTextFile(filePath, content, ops = FILE_OPS) {
60
88
  if (cleanupError !== undefined)
61
89
  throw cleanupError instanceof Error ? cleanupError : new Error(String(cleanupError));
62
90
  }
63
- function sleepSync(milliseconds) {
64
- if (milliseconds <= 0)
65
- return;
66
- Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, milliseconds);
67
- }
68
91
  function readLockPid(lockPath, ops) {
69
92
  try {
70
93
  const value = Number.parseInt(ops.readFileSync(lockPath, 'utf8').trim(), 10);