@superblocksteam/sdk 2.0.155 → 2.0.156-next.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 (62) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/dist/cli-replacement/automatic-upgrades.d.ts.map +1 -1
  3. package/dist/cli-replacement/automatic-upgrades.js +4 -8
  4. package/dist/cli-replacement/automatic-upgrades.js.map +1 -1
  5. package/dist/cli-replacement/automatic-upgrades.test.js +2 -1
  6. package/dist/cli-replacement/automatic-upgrades.test.js.map +1 -1
  7. package/dist/cli-replacement/dev-s3-restore.test.mjs +6 -2
  8. package/dist/cli-replacement/dev-s3-restore.test.mjs.map +1 -1
  9. package/dist/cli-replacement/dev-startup-git-before-dbfs-order.test.mjs +6 -2
  10. package/dist/cli-replacement/dev-startup-git-before-dbfs-order.test.mjs.map +1 -1
  11. package/dist/cli-replacement/dev-startup-lock-acquisition.test.d.mts +2 -0
  12. package/dist/cli-replacement/dev-startup-lock-acquisition.test.d.mts.map +1 -0
  13. package/dist/cli-replacement/dev-startup-lock-acquisition.test.mjs +487 -0
  14. package/dist/cli-replacement/dev-startup-lock-acquisition.test.mjs.map +1 -0
  15. package/dist/cli-replacement/dev.d.mts +6 -6
  16. package/dist/cli-replacement/dev.d.mts.map +1 -1
  17. package/dist/cli-replacement/dev.interception.test.mjs +12 -12
  18. package/dist/cli-replacement/dev.interception.test.mjs.map +1 -1
  19. package/dist/cli-replacement/dev.mjs +100 -42
  20. package/dist/cli-replacement/dev.mjs.map +1 -1
  21. package/dist/dev-utils/dev-server.d.mts +34 -1
  22. package/dist/dev-utils/dev-server.d.mts.map +1 -1
  23. package/dist/dev-utils/dev-server.mjs +69 -70
  24. package/dist/dev-utils/dev-server.mjs.map +1 -1
  25. package/dist/dev-utils/dev-server.shutdown-lock.test.d.mts +2 -0
  26. package/dist/dev-utils/dev-server.shutdown-lock.test.d.mts.map +1 -0
  27. package/dist/dev-utils/dev-server.shutdown-lock.test.mjs +48 -0
  28. package/dist/dev-utils/dev-server.shutdown-lock.test.mjs.map +1 -0
  29. package/dist/dev-utils/fatal-process-barrier.d.mts +71 -0
  30. package/dist/dev-utils/fatal-process-barrier.d.mts.map +1 -0
  31. package/dist/dev-utils/fatal-process-barrier.mjs +161 -0
  32. package/dist/dev-utils/fatal-process-barrier.mjs.map +1 -0
  33. package/dist/dev-utils/fatal-process-barrier.spawn-fixture.d.mts +2 -0
  34. package/dist/dev-utils/fatal-process-barrier.spawn-fixture.d.mts.map +1 -0
  35. package/dist/dev-utils/fatal-process-barrier.spawn-fixture.mjs +9 -0
  36. package/dist/dev-utils/fatal-process-barrier.spawn-fixture.mjs.map +1 -0
  37. package/dist/dev-utils/fatal-process-barrier.test.d.mts +2 -0
  38. package/dist/dev-utils/fatal-process-barrier.test.d.mts.map +1 -0
  39. package/dist/dev-utils/fatal-process-barrier.test.mjs +281 -0
  40. package/dist/dev-utils/fatal-process-barrier.test.mjs.map +1 -0
  41. package/dist/telemetry/logging.js +1 -1
  42. package/dist/telemetry/logging.js.map +1 -1
  43. package/dist/telemetry/safe-stringify.d.ts.map +1 -1
  44. package/dist/telemetry/safe-stringify.js +25 -9
  45. package/dist/telemetry/safe-stringify.js.map +1 -1
  46. package/package.json +10 -6
  47. package/src/cli-replacement/automatic-upgrades.test.ts +2 -1
  48. package/src/cli-replacement/automatic-upgrades.ts +4 -11
  49. package/src/cli-replacement/dev-s3-restore.test.mts +6 -2
  50. package/src/cli-replacement/dev-startup-git-before-dbfs-order.test.mts +6 -2
  51. package/src/cli-replacement/dev-startup-lock-acquisition.test.mts +573 -0
  52. package/src/cli-replacement/dev.interception.test.mts +12 -12
  53. package/src/cli-replacement/dev.mts +112 -56
  54. package/src/dev-utils/dev-server.mts +93 -88
  55. package/src/dev-utils/dev-server.shutdown-lock.test.mts +58 -0
  56. package/src/dev-utils/fatal-process-barrier.mts +262 -0
  57. package/src/dev-utils/fatal-process-barrier.spawn-fixture.mts +12 -0
  58. package/src/dev-utils/fatal-process-barrier.test.mts +346 -0
  59. package/src/telemetry/logging.ts +1 -1
  60. package/src/telemetry/safe-stringify.ts +25 -10
  61. package/test/safe-stringify.test.mts +25 -0
  62. package/tsconfig.tsbuildinfo +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dev.d.mts","sourceRoot":"","sources":["../../src/cli-replacement/dev.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.d.mts","sourceRoot":"","sources":["../../src/cli-replacement/dev.mts"],"names":[],"mappings":"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"}
@@ -246,38 +246,38 @@ describe("runFatalExitShutdown", () => {
246
246
  removeIntegrationCache: async () => {
247
247
  calls.push("cache");
248
248
  },
249
- shutdownLockService: async () => {
249
+ relinquishLock: async () => {
250
250
  calls.push("lock");
251
251
  },
252
252
  });
253
253
  expect(calls).toEqual(["cache", "lock"]);
254
254
  });
255
255
  it("still releases the lock when cache removal rejects", async () => {
256
- const shutdownLockService = vi.fn(async () => { });
256
+ const relinquishLock = vi.fn(async () => { });
257
257
  await expect(runFatalExitShutdown({
258
258
  logger: makeLogger(),
259
259
  removeIntegrationCache: async () => {
260
260
  throw new Error("ai-service IPC is gone");
261
261
  },
262
- shutdownLockService,
262
+ relinquishLock,
263
263
  })).resolves.toBeUndefined();
264
- expect(shutdownLockService).toHaveBeenCalledOnce();
264
+ expect(relinquishLock).toHaveBeenCalledOnce();
265
265
  });
266
266
  it("still releases the lock when cache removal throws synchronously", async () => {
267
- const shutdownLockService = vi.fn(async () => { });
267
+ const relinquishLock = vi.fn(async () => { });
268
268
  await runFatalExitShutdown({
269
269
  logger: makeLogger(),
270
270
  removeIntegrationCache: () => {
271
271
  throw new Error("sync boom");
272
272
  },
273
- shutdownLockService,
273
+ relinquishLock,
274
274
  });
275
- expect(shutdownLockService).toHaveBeenCalledOnce();
275
+ expect(relinquishLock).toHaveBeenCalledOnce();
276
276
  });
277
277
  it("never rejects when the lock release itself rejects", async () => {
278
278
  await expect(runFatalExitShutdown({
279
279
  logger: makeLogger(),
280
- shutdownLockService: async () => {
280
+ relinquishLock: async () => {
281
281
  throw new Error("lock server unreachable");
282
282
  },
283
283
  })).resolves.toBeUndefined();
@@ -290,18 +290,18 @@ describe("runFatalExitShutdown", () => {
290
290
  it("abandons a step that never settles and still runs the later steps", async () => {
291
291
  vi.useFakeTimers();
292
292
  try {
293
- const shutdownLockService = vi.fn(async () => { });
293
+ const relinquishLock = vi.fn(async () => { });
294
294
  const settled = vi.fn();
295
295
  const done = runFatalExitShutdown({
296
296
  logger: makeLogger(),
297
297
  removeIntegrationCache: () => new Promise(() => { }),
298
- shutdownLockService,
298
+ relinquishLock,
299
299
  }).then(settled);
300
300
  await vi.advanceTimersByTimeAsync(stepTimeoutMs - 1);
301
- expect(shutdownLockService).not.toHaveBeenCalled();
301
+ expect(relinquishLock).not.toHaveBeenCalled();
302
302
  await vi.advanceTimersByTimeAsync(2);
303
303
  await done;
304
- expect(shutdownLockService).toHaveBeenCalledOnce();
304
+ expect(relinquishLock).toHaveBeenCalledOnce();
305
305
  expect(settled).toHaveBeenCalledOnce();
306
306
  }
307
307
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"dev.interception.test.mjs","sourceRoot":"","sources":["../../src/cli-replacement/dev.interception.test.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.interception.test.mjs","sourceRoot":"","sources":["../../src/cli-replacement/dev.interception.test.mts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import { green } from "colorette";
9
9
  import fs from "fs-extra";
10
10
  import { resolveCommand } from "package-manager-detector";
11
11
  import { detect } from "package-manager-detector/detect";
12
- import { buildGithubSuperblocksSyncWorkflow, buildGithubSuperblocksSyncWorkflowFromBaseUrl, ConflictError, DEFAULT_NON_GIT_BRANCH, isGitAuthErrorMessage, isGitHubRemoteUrl, SUPERBLOCKS_LIVE_GIT_BRANCH, } from "@superblocksteam/shared";
12
+ import { buildGithubSuperblocksSyncWorkflow, buildGithubSuperblocksSyncWorkflowFromBaseUrl, DEFAULT_NON_GIT_BRANCH, isGitAuthErrorMessage, isGitHubRemoteUrl, SUPERBLOCKS_LIVE_GIT_BRANCH, } from "@superblocksteam/shared";
13
13
  import { npmRegistryEmitter } from "@superblocksteam/telemetry";
14
14
  import { maskUnixSignals } from "@superblocksteam/util";
15
15
  import { AiService, AiServiceFeatureFlags, SnapshotManager, hasEditLifecycleCapability, isSdkApiTemplate, stripResolvedFromLockfile, } from "@superblocksteam/vite-plugin-file-sync/ai-service";
@@ -84,6 +84,18 @@ async function handleInactiveLockTakeover(lockInfo, lockSvc, span, logger) {
84
84
  });
85
85
  throw new Error("Lock takeover prompt shown");
86
86
  }
87
+ // Only ask if somebody can answer. `promptUser` reads stdin, which on a
88
+ // sandbox nothing is attached to — it would wait forever for a keystroke
89
+ // that cannot come. Reachable now that conflicts surface when a client
90
+ // attaches rather than only during a CLI startup.
91
+ if (!process.stdin.isTTY) {
92
+ logger.warn(`${warningMessage} Run with --force-takeover to take it.`);
93
+ span.setStatus({
94
+ code: SpanStatusCode.ERROR,
95
+ message: "Lock held by an inactive user, nobody available to prompt",
96
+ });
97
+ throw new Error(warningMessage);
98
+ }
87
99
  // Prompt user to force takeover (CLI only)
88
100
  logger.warn(warningMessage);
89
101
  const shouldTakeover = await getBooleanUserResponse(prompt);
@@ -801,12 +813,12 @@ export async function flushTelemetryWithTimeout() {
801
813
  * MUST BE CALLED LAST in any shutdown sequence. This does not merely flush: it
802
814
  * awaits `shutdownTelemetry()`, which tears the provider down, so every signal
803
815
  * emitted after it goes into a dead pipeline. It can also block for up to
804
- * `TELEMETRY_FLUSH_TIMEOUT_MS`, and delaying `lockService.shutdown()` by that
805
- * much delays the lock release that lets a replacement sandbox take over —
816
+ * `TELEMETRY_FLUSH_TIMEOUT_MS`, and delaying `lockService.relinquishLock()` by
817
+ * that much delays the lock release that lets a replacement sandbox take over —
806
818
  * which is the entire recovery story this exit path exists to enable.
807
819
  *
808
820
  * "Last" is only reachable because the callers drive the lock service with
809
- * `shutdown()` rather than `shutdownAndExit()`. The latter ends in an
821
+ * `relinquishLock()` rather than `shutdownAndExit()`. The latter ends in an
810
822
  * unconditional `finally { process.exit(1) }`, and `process.exit` is
811
823
  * synchronous, so anything sequenced after it never runs at all. See the two
812
824
  * fatal-exit blocks in `dev()`.
@@ -895,7 +907,7 @@ async function runFatalExitStep(logger, name, step) {
895
907
  *
896
908
  * Order is load-bearing:
897
909
  * 1. `removeIntegrationCache` — ai-service state that must not outlive us.
898
- * 2. `shutdownLockService` — releases the AppBranchLock. Recovery-critical:
910
+ * 2. `relinquishLock` — hands the AppBranchLock back. Recovery-critical:
899
911
  * the heartbeat dies with the process, so skipping this makes the
900
912
  * replacement sandbox's `acquireLock()` fail with a ConflictError until
901
913
  * the server-side TTL expires, and the replacement is the entire point of
@@ -910,15 +922,15 @@ async function runFatalExitStep(logger, name, step) {
910
922
  *
911
923
  * This does NOT exit. The caller owns `process.exit(1)` from a `finally`, so
912
924
  * the exit still happens even if this function is somehow bypassed. That is
913
- * also why callers must drive the lock service through `shutdown()` and not
914
- * `shutdownAndExit()`: the latter ends in its own unconditional
925
+ * also why callers must drive the lock service through `relinquishLock()` and
926
+ * not `shutdownAndExit()`: the latter ends in its own unconditional
915
927
  * `finally { process.exit(1) }`, and `process.exit` is synchronous, so
916
928
  * everything sequenced after it — including the flush — silently never ran.
917
929
  */
918
930
  export async function runFatalExitShutdown(steps) {
919
931
  const { logger } = steps;
920
932
  await runFatalExitStep(logger, "ai-service integration cache removal", steps.removeIntegrationCache);
921
- await runFatalExitStep(logger, "lock service shutdown", steps.shutdownLockService);
933
+ await runFatalExitStep(logger, "lock hand-back", steps.relinquishLock);
922
934
  await flushTelemetryBeforeExit(logger);
923
935
  }
924
936
  /**
@@ -1253,29 +1265,75 @@ export async function dev(options) {
1253
1265
  removeManualCommitsEnabled: featureFlags.removeManualCommitsEnabled(),
1254
1266
  });
1255
1267
  logger.info("Checking if local files are synced with the server");
1268
+ const lockSvc = lockService;
1269
+ // Nobody takes the lock to boot: nothing startup does is gated on
1270
+ // holding one, and a lock taken before any client exists is held on
1271
+ // behalf of nobody. `LockService` takes it when the first client
1272
+ // attaches, and tells us here if somebody else already has it —
1273
+ // this is the `ConflictError` catch that used to wrap the boot-time
1274
+ // acquire, moved to where acquisition actually happens (ENG-6090).
1275
+ lockSvc.setOnLockConflict(async (error) => {
1276
+ let stopForExtension = false;
1277
+ await tracer.startActiveSpan("handlingLockConflict", async (span) => {
1278
+ try {
1279
+ await handleLockConflict(error, lockSvc, span, logger);
1280
+ }
1281
+ catch (conflictError) {
1282
+ // Reporting is all this owes the caller. The holder is someone
1283
+ // else's live session and the pod is still serving preview, so
1284
+ // there is nothing to tear down — the lock does not decide how
1285
+ // long this process lives (ENG-6032).
1286
+ logger.warn(`Could not take the live-edit lock: ${conflictError instanceof Error ? conflictError.message : String(conflictError)}`);
1287
+ // Except under the VS Code extension, which reads the `cliprompt`
1288
+ // above, asks the user, and answers by restarting this command
1289
+ // with `--force-takeover`. That hand-off has always ended with
1290
+ // this process gone: it used to abort startup before anything
1291
+ // bound a port. Staying up now would leave the replacement
1292
+ // fighting us for :5173.
1293
+ if (process.env.SUPERBLOCKS_VSCODE === "true") {
1294
+ logger.info("Stopping so the extension can restart with --force-takeover");
1295
+ stopForExtension = true;
1296
+ }
1297
+ }
1298
+ finally {
1299
+ span.end();
1300
+ }
1301
+ });
1302
+ if (!stopForExtension) {
1303
+ return;
1304
+ }
1305
+ // Outside the span, so `span.end()` above has already run and the
1306
+ // flush below can carry it. This is the same teardown the two
1307
+ // fatal-exit blocks in `dev()` use, and for the same reason: the
1308
+ // `shutdownAndExit()` that used to be inside the `catch` exits
1309
+ // synchronously from its own `finally`, which made both the
1310
+ // `span.end()` and the telemetry flush unreachable — the trace for
1311
+ // the one event this handler exists to record never left the process.
1312
+ try {
1313
+ await runFatalExitShutdown({
1314
+ logger,
1315
+ removeIntegrationCache: () => aiService?.removeIntegrationCache(),
1316
+ relinquishLock: () => lockSvc.relinquishLock(),
1317
+ });
1318
+ }
1319
+ finally {
1320
+ process.exit(1);
1321
+ }
1322
+ });
1256
1323
  try {
1257
1324
  await maskUnixSignals(async () => {
1258
- if (lockService) {
1259
- const lockSvc = lockService;
1260
- await tracer.startActiveSpan("acquiringInitialLock", async (span) => {
1325
+ // `--force-takeover` is the one thing that still acquires at boot:
1326
+ // it is an explicit "take it from them now" rather than a pod
1327
+ // helping itself to a lock nobody asked it to hold.
1328
+ if (options.forceTakeover) {
1329
+ await tracer.startActiveSpan("forcingInitialLockTakeover", async (span) => {
1261
1330
  try {
1262
- // If --force-takeover flag is set, immediately force takeover instead of acquiring
1263
- if (options.forceTakeover) {
1264
- logger.info("Force takeover requested, taking over lock...");
1265
- await lockSvc.forceTakeover();
1266
- logger.info("Lock acquired successfully via force takeover.");
1267
- }
1268
- else {
1269
- await lockSvc.acquireLock();
1270
- }
1331
+ logger.info("Force takeover requested, taking over lock...");
1332
+ await lockSvc.forceTakeover();
1333
+ logger.info("Lock acquired successfully via force takeover.");
1271
1334
  }
1272
1335
  catch (error) {
1273
- // If we got a conflict error (409), inspect the lock for more information
1274
- if (error instanceof ConflictError) {
1275
- await handleLockConflict(error, lockSvc, span, logger);
1276
- return;
1277
- }
1278
- logger.error("Failed to acquire lock on application", getErrorMeta(error));
1336
+ logger.error("Failed to force takeover of lock on application", getErrorMeta(error));
1279
1337
  span.setStatus({
1280
1338
  code: SpanStatusCode.ERROR,
1281
1339
  message: JSON.stringify(error),
@@ -1780,7 +1838,7 @@ export async function dev(options) {
1780
1838
  try {
1781
1839
  logger.info("Releasing lock before restarting the dev server");
1782
1840
  await aiService?.removeIntegrationCache();
1783
- await lockService?.shutdown({ serverInitiated: false });
1841
+ await lockService?.relinquishLock();
1784
1842
  }
1785
1843
  catch (e) {
1786
1844
  logger.error("Error releasing lock before restarting the dev server", getErrorMeta(e));
@@ -1848,13 +1906,13 @@ export async function dev(options) {
1848
1906
  isWarm: parseIsWarm(process.env.SUPERBLOCKS_WARM_STANDBY),
1849
1907
  }));
1850
1908
  try {
1851
- // `shutdown()`, NOT `shutdownAndExit()`. The latter ends in an
1852
- // unconditional `finally { process.exit(1) }`; `process.exit` is
1853
- // synchronous, so every statement below it would be dead code
1909
+ // `relinquishLock()`, NOT `shutdownAndExit()`. The latter ends in
1910
+ // an unconditional `finally { process.exit(1) }`; `process.exit`
1911
+ // is synchronous, so every statement below it would be dead code
1854
1912
  // whenever `lockService` is set — which is the normal state in a
1855
1913
  // SABS pod, exactly the population this exit path targets. The
1856
- // telemetry flush was silently never running. `shutdown()` does
1857
- // the same teardown without owning the exit, matching how
1914
+ // telemetry flush was silently never running. `relinquishLock()`
1915
+ // does the same teardown without owning the exit, matching how
1858
1916
  // `runGracefulShutdown` in dev-server.mts drives it; the
1859
1917
  // `finally` below performs the exit instead.
1860
1918
  //
@@ -1864,7 +1922,7 @@ export async function dev(options) {
1864
1922
  await runFatalExitShutdown({
1865
1923
  logger,
1866
1924
  removeIntegrationCache: () => aiService?.removeIntegrationCache(),
1867
- shutdownLockService: () => lockService?.shutdown({ serverInitiated: false }),
1925
+ relinquishLock: () => lockService?.relinquishLock(),
1868
1926
  });
1869
1927
  }
1870
1928
  finally {
@@ -1916,14 +1974,14 @@ export async function dev(options) {
1916
1974
  isWarm: parseIsWarm(process.env.SUPERBLOCKS_WARM_STANDBY),
1917
1975
  }));
1918
1976
  try {
1919
- // `shutdown()`, NOT `shutdownAndExit()` — same reason as the
1977
+ // `relinquishLock()`, NOT `shutdownAndExit()` — same reason as the
1920
1978
  // sync/lock catch above: `shutdownAndExit()` exits the process
1921
1979
  // synchronously in its own `finally`, which made everything
1922
1980
  // sequenced after it unreachable.
1923
1981
  await runFatalExitShutdown({
1924
1982
  logger,
1925
1983
  removeIntegrationCache: () => aiService?.removeIntegrationCache(),
1926
- shutdownLockService: () => lockService?.shutdown({ serverInitiated: false }),
1984
+ relinquishLock: () => lockService?.relinquishLock(),
1927
1985
  });
1928
1986
  }
1929
1987
  finally {
@@ -2091,7 +2149,8 @@ export async function dev(options) {
2091
2149
  logger.warn(`Error removing integration cache: ${error}`);
2092
2150
  });
2093
2151
  lockService?.shutdownAndExit().catch(() => {
2094
- // this is redundant, but it's here to make sure the lock service is shutdown and the process exits
2152
+ // Redundant `shutdownAndExit` exits from its own `finally` but
2153
+ // kept so the process still goes away if that ever stops being true.
2095
2154
  process.exit(1);
2096
2155
  });
2097
2156
  });
@@ -2380,19 +2439,18 @@ async function ensureRuntimeDbfsBranchConsistency({ sdk, applicationConfig, logg
2380
2439
  }
2381
2440
  const lockSvc = lockService;
2382
2441
  const syncSvc = syncService;
2383
- const wasLocked = lockSvc.isLocked;
2442
+ // Retain the pre-switch state for explicit fallback and rollback paths.
2443
+ const wasLocked = await lockSvc.isLockedWhenSettled();
2384
2444
  logger.info(`Switching runtime DBFS branch context from '${currentBranchName}' to '${targetBranchName}'`);
2385
2445
  try {
2386
2446
  syncSvc.setBranchName(targetBranchName);
2387
2447
  try {
2388
- await lockSvc.switchBranch(targetBranchName, {
2389
- reacquireLock: wasLocked,
2390
- });
2448
+ await lockSvc.switchBranch(targetBranchName);
2391
2449
  }
2392
2450
  catch (switchError) {
2393
2451
  // Disconnecting native git can invalidate the previous live branch
2394
2452
  // context. Fall back to explicit release/reacquire on the target branch.
2395
- logger.warn(`Lock branch transfer failed for '${currentBranchName}' -> '${targetBranchName}', performing shutdown-style lock reset: ${switchError instanceof Error ? switchError.message : String(switchError)}`);
2453
+ logger.warn(`Lock branch transfer failed for '${currentBranchName}' -> '${targetBranchName}', performing an explicit release and reacquire: ${switchError instanceof Error ? switchError.message : String(switchError)}`);
2396
2454
  await lockSvc.switchBranch(targetBranchName, { reacquireLock: false });
2397
2455
  if (wasLocked) {
2398
2456
  await lockSvc.acquireLock();
@@ -2407,7 +2465,7 @@ async function ensureRuntimeDbfsBranchConsistency({ sdk, applicationConfig, logg
2407
2465
  syncSvc.setBranchName(currentBranchName);
2408
2466
  try {
2409
2467
  await lockSvc.switchBranch(currentBranchName, {
2410
- reacquireLock: lockSvc.isLocked || wasLocked,
2468
+ reacquireLock: (await lockSvc.isLockedWhenSettled()) || wasLocked,
2411
2469
  });
2412
2470
  }
2413
2471
  catch (rollbackError) {