@costrict/csc 4.2.21-beta1 → 4.2.21

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.
@@ -736,8 +736,8 @@ function getClientVersion() {
736
736
  if (cached)
737
737
  return cached;
738
738
  try {
739
- if ("4.2.21-beta1") {
740
- cached = "4.2.21-beta1";
739
+ if ("4.2.21") {
740
+ cached = "4.2.21";
741
741
  return cached;
742
742
  }
743
743
  } catch {}
@@ -61588,46 +61588,60 @@ var init_memoize2 = __esm(() => {
61588
61588
 
61589
61589
  // src/utils/windowsPaths.ts
61590
61590
  import { existsSync as existsSync3 } from "fs";
61591
- import * as path12 from "path";
61592
61591
  import * as pathWin32 from "path/win32";
61593
- function checkPathExists(filePath) {
61594
- return existsSync3(filePath);
61595
- }
61596
- function findExecutable(executable) {
61597
- if (executable === "git") {
61598
- const defaultLocations = [
61599
- "C:\\Program Files\\Git\\cmd\\git.exe",
61600
- "C:\\Program Files (x86)\\Git\\cmd\\git.exe"
61601
- ];
61602
- for (const location of defaultLocations) {
61603
- if (checkPathExists(location)) {
61604
- return location;
61605
- }
61606
- }
61607
- }
61592
+ function findExecutableWithDeps(executable, deps) {
61608
61593
  try {
61609
- const result = execSync_DEPRECATED(`where.exe ${executable}`, {
61610
- stdio: "pipe",
61611
- encoding: "utf8"
61612
- }).trim();
61613
- const paths2 = result.split(`\r
61614
- `).filter(Boolean);
61615
- const cwd2 = getCwd().toLowerCase();
61594
+ const paths2 = deps.execCommand(`where.exe ${executable}`).split(/\r?\n/u).map((candidate) => candidate.trim()).filter(Boolean);
61595
+ const cwd2 = pathWin32.resolve(deps.cwdFn()).toLowerCase();
61616
61596
  for (const candidatePath of paths2) {
61617
- const normalizedPath = path12.resolve(candidatePath).toLowerCase();
61618
- const pathDir = path12.dirname(normalizedPath).toLowerCase();
61619
- if (pathDir === cwd2 || normalizedPath.startsWith(cwd2 + path12.sep)) {
61597
+ const candidateDirectory = pathWin32.dirname(pathWin32.resolve(candidatePath)).toLowerCase();
61598
+ const relativeDirectory = pathWin32.relative(cwd2, candidateDirectory);
61599
+ const isWithinCwd = relativeDirectory === "" || !relativeDirectory.startsWith("..") && !pathWin32.isAbsolute(relativeDirectory);
61600
+ if (isWithinCwd) {
61620
61601
  logForDebugging(`Skipping potentially malicious executable in current directory: ${candidatePath}`);
61621
61602
  continue;
61622
61603
  }
61623
61604
  return candidatePath;
61624
61605
  }
61625
- return null;
61626
- } catch {
61627
- return null;
61606
+ } catch {}
61607
+ return null;
61608
+ }
61609
+ function findCommonGitBashPath(checkExists, userProfile) {
61610
+ const candidates = [
61611
+ "C:\\Program Files\\Git\\bin\\bash.exe",
61612
+ "C:\\Program Files\\Git\\usr\\bin\\bash.exe",
61613
+ "C:\\Program Files (x86)\\Git\\bin\\bash.exe",
61614
+ "C:\\Program Files (x86)\\Git\\usr\\bin\\bash.exe"
61615
+ ];
61616
+ if (userProfile) {
61617
+ candidates.push(`${userProfile}\\scoop\\apps\\git\\current\\usr\\bin\\bash.exe`);
61618
+ }
61619
+ return candidates.find(checkExists) ?? null;
61620
+ }
61621
+ function findGitBashPathOrNullWithDeps(deps = DEFAULT_DEPS) {
61622
+ const envOverride = deps.envOverride ?? process.env.COSTRICT_GIT_BASH_PATH ?? process.env.CLAUDE_CODE_GIT_BASH_PATH;
61623
+ if (envOverride) {
61624
+ return deps.checkExists(envOverride) ? envOverride : null;
61625
+ }
61626
+ const bashPath = findExecutableWithDeps("bash", deps);
61627
+ if (bashPath && deps.checkExists(bashPath)) {
61628
+ return bashPath;
61629
+ }
61630
+ const gitPath = findExecutableWithDeps("git", deps);
61631
+ if (gitPath) {
61632
+ const candidates = [
61633
+ pathWin32.join(gitPath, "..", "..", "bin", "bash.exe"),
61634
+ pathWin32.join(gitPath, "..", "..", "usr", "bin", "bash.exe"),
61635
+ pathWin32.join(gitPath, "..", "bash.exe")
61636
+ ];
61637
+ const derivedPath = candidates.find(deps.checkExists);
61638
+ if (derivedPath) {
61639
+ return derivedPath;
61640
+ }
61628
61641
  }
61642
+ return findCommonGitBashPath(deps.checkExists, deps.userProfile);
61629
61643
  }
61630
- var findGitBashPath, windowsPathToPosixPath, posixPathToWindowsPath;
61644
+ var DEFAULT_DEPS, findGitBashPathOrNull, windowsPathToPosixPath, posixPathToWindowsPath;
61631
61645
  var init_windowsPaths = __esm(() => {
61632
61646
  init_memoize();
61633
61647
  init_cwd2();
@@ -61635,24 +61649,13 @@ var init_windowsPaths = __esm(() => {
61635
61649
  init_execSyncWrapper();
61636
61650
  init_memoize2();
61637
61651
  init_platform2();
61638
- findGitBashPath = memoize_default(() => {
61639
- if (process.env.CLAUDE_CODE_GIT_BASH_PATH) {
61640
- if (checkPathExists(process.env.CLAUDE_CODE_GIT_BASH_PATH)) {
61641
- return process.env.CLAUDE_CODE_GIT_BASH_PATH;
61642
- }
61643
- console.error(`CoStrict was unable to find CLAUDE_CODE_GIT_BASH_PATH path "${process.env.CLAUDE_CODE_GIT_BASH_PATH}"`);
61644
- process.exit(1);
61645
- }
61646
- const gitPath = findExecutable("git");
61647
- if (gitPath) {
61648
- const bashPath = pathWin32.join(gitPath, "..", "..", "bin", "bash.exe");
61649
- if (checkPathExists(bashPath)) {
61650
- return bashPath;
61651
- }
61652
- }
61653
- console.error("CoStrict on Windows requires git-bash (https://git-scm.com/downloads/win). If installed but not in PATH, set environment variable pointing to your bash.exe, similar to: COSTRICT_GIT_BASH_PATH=C:\\Program Files\\Git\\bin\\bash.exe");
61654
- process.exit(1);
61655
- });
61652
+ DEFAULT_DEPS = {
61653
+ checkExists: existsSync3,
61654
+ execCommand: (cmd) => execSync_DEPRECATED(cmd, { stdio: "pipe", encoding: "utf8" }).trim(),
61655
+ cwdFn: getCwd,
61656
+ userProfile: process.env.USERPROFILE
61657
+ };
61658
+ findGitBashPathOrNull = memoize_default(() => findGitBashPathOrNullWithDeps());
61656
61659
  windowsPathToPosixPath = memoizeWithLRU((windowsPath) => {
61657
61660
  if (windowsPath.startsWith("\\\\")) {
61658
61661
  return windowsPath.replace(/\\/g, "/");
@@ -61687,15 +61690,15 @@ var init_windowsPaths = __esm(() => {
61687
61690
  // src/utils/path.ts
61688
61691
  import {
61689
61692
  dirname as dirname4,
61690
- isAbsolute,
61693
+ isAbsolute as isAbsolute2,
61691
61694
  join as join8,
61692
61695
  normalize,
61693
61696
  posix,
61694
- relative,
61697
+ relative as relative2,
61695
61698
  resolve as resolve2
61696
61699
  } from "path";
61697
- function normalizePathForConfigKey(path13) {
61698
- const normalized = normalize(path13);
61700
+ function normalizePathForConfigKey(path12) {
61701
+ const normalized = normalize(path12);
61699
61702
  return normalized.replace(/\\/g, "/");
61700
61703
  }
61701
61704
  var init_path2 = __esm(() => {
@@ -61712,12 +61715,12 @@ import {
61712
61715
  basename,
61713
61716
  dirname as dirname5,
61714
61717
  extname,
61715
- isAbsolute as isAbsolute2,
61718
+ isAbsolute as isAbsolute3,
61716
61719
  join as join9,
61717
61720
  normalize as normalize2,
61718
- relative as relative2,
61721
+ relative as relative3,
61719
61722
  resolve as resolve3,
61720
- sep as sep2
61723
+ sep
61721
61724
  } from "path";
61722
61725
  function detectFileEncoding(filePath) {
61723
61726
  try {
@@ -61740,7 +61743,7 @@ function writeFileSyncAndFlush_DEPRECATED(filePath, content, options = { encodin
61740
61743
  let targetPath = filePath;
61741
61744
  try {
61742
61745
  const linkTarget = fs5.readlinkSync(filePath);
61743
- targetPath = isAbsolute2(linkTarget) ? linkTarget : resolve3(dirname5(filePath), linkTarget);
61746
+ targetPath = isAbsolute3(linkTarget) ? linkTarget : resolve3(dirname5(filePath), linkTarget);
61744
61747
  logForDebugging(`Writing through symlink: ${filePath} -> ${targetPath}`);
61745
61748
  } catch {}
61746
61749
  const tempPath = `${targetPath}.tmp.${process.pid}.${Date.now()}`;
@@ -62234,9 +62237,9 @@ class GitFileWatcher {
62234
62237
  this.stopWatching();
62235
62238
  });
62236
62239
  }
62237
- watchPath(path13, callback) {
62238
- this.watchedPaths.push(path13);
62239
- watchFile(path13, { interval: WATCH_INTERVAL_MS }, callback);
62240
+ watchPath(path12, callback) {
62241
+ this.watchedPaths.push(path12);
62242
+ watchFile(path12, { interval: WATCH_INTERVAL_MS }, callback);
62240
62243
  }
62241
62244
  async watchCurrentBranchRef() {
62242
62245
  if (!this.gitDir) {
@@ -62271,8 +62274,8 @@ class GitFileWatcher {
62271
62274
  }
62272
62275
  }
62273
62276
  stopWatching() {
62274
- for (const path13 of this.watchedPaths) {
62275
- unwatchFile(path13);
62277
+ for (const path12 of this.watchedPaths) {
62278
+ unwatchFile(path12);
62276
62279
  }
62277
62280
  this.watchedPaths = [];
62278
62281
  this.branchRefPath = null;
@@ -62373,7 +62376,7 @@ var init_which = __esm(() => {
62373
62376
 
62374
62377
  // src/utils/git.ts
62375
62378
  import { readFileSync as readFileSync7, realpathSync as realpathSync3, statSync as statSync3 } from "fs";
62376
- import { basename as basename2, dirname as dirname6, join as join12, resolve as resolve6, sep as sep3 } from "path";
62379
+ import { basename as basename2, dirname as dirname6, join as join12, resolve as resolve6, sep as sep2 } from "path";
62377
62380
  function createFindGitRoot() {
62378
62381
  function wrapper(startPath) {
62379
62382
  const result = findGitRootImpl(startPath);
@@ -62411,7 +62414,7 @@ var init_git = __esm(() => {
62411
62414
  const startTime = Date.now();
62412
62415
  logForDiagnosticsNoPII("info", "find_git_root_started");
62413
62416
  let current = resolve6(startPath);
62414
- const root2 = current.substring(0, current.indexOf(sep3) + 1) || sep3;
62417
+ const root2 = current.substring(0, current.indexOf(sep2) + 1) || sep2;
62415
62418
  let statCount = 0;
62416
62419
  while (current !== root2) {
62417
62420
  try {
@@ -62452,7 +62455,7 @@ var init_git = __esm(() => {
62452
62455
  found: false
62453
62456
  });
62454
62457
  return GIT_ROOT_NOT_FOUND;
62455
- }, (path13) => path13, 50);
62458
+ }, (path12) => path12, 50);
62456
62459
  findGitRoot = createFindGitRoot();
62457
62460
  resolveCanonicalRoot = memoizeWithLRU((gitRoot) => {
62458
62461
  try {
@@ -73923,14 +73926,14 @@ var init_measure_text = __esm(() => {
73923
73926
  });
73924
73927
 
73925
73928
  // packages/@costrict/ink/src/core/node-cache.ts
73926
- function addPendingClear(parent, rect, isAbsolute3) {
73929
+ function addPendingClear(parent, rect, isAbsolute4) {
73927
73930
  const existing = pendingClears.get(parent);
73928
73931
  if (existing) {
73929
73932
  existing.push(rect);
73930
73933
  } else {
73931
73934
  pendingClears.set(parent, [rect]);
73932
73935
  }
73933
- if (isAbsolute3) {
73936
+ if (isAbsolute4) {
73934
73937
  absoluteNodeRemoved = true;
73935
73938
  }
73936
73939
  }
@@ -75135,14 +75138,14 @@ function collectRemovedRects(parent, removed, underAbsolute = false) {
75135
75138
  if (removed.nodeName === "#text")
75136
75139
  return;
75137
75140
  const elem = removed;
75138
- const isAbsolute3 = underAbsolute || elem.style.position === "absolute";
75141
+ const isAbsolute4 = underAbsolute || elem.style.position === "absolute";
75139
75142
  const cached3 = nodeCache.get(elem);
75140
75143
  if (cached3) {
75141
- addPendingClear(parent, cached3, isAbsolute3);
75144
+ addPendingClear(parent, cached3, isAbsolute4);
75142
75145
  nodeCache.delete(elem);
75143
75146
  }
75144
75147
  for (const child of elem.childNodes) {
75145
- collectRemovedRects(parent, child, isAbsolute3);
75148
+ collectRemovedRects(parent, child, isAbsolute4);
75146
75149
  }
75147
75150
  }
75148
75151
  function stylesEqual(a2, b) {
@@ -80722,8 +80725,8 @@ function ErrorOverview({ error: error52 }) {
80722
80725
  ]
80723
80726
  });
80724
80727
  }
80725
- var import_stack_utils, jsx_runtime5, cleanupPath = (path13) => {
80726
- return path13?.replace(`file://${process.cwd()}/`, "");
80728
+ var import_stack_utils, jsx_runtime5, cleanupPath = (path12) => {
80729
+ return path12?.replace(`file://${process.cwd()}/`, "");
80727
80730
  }, stackUtils;
80728
80731
  var init_ErrorOverview = __esm(() => {
80729
80732
  init_dist2();
@@ -81337,10 +81340,60 @@ var init_instances = __esm(() => {
81337
81340
  instances_default = instances;
81338
81341
  });
81339
81342
 
81343
+ // packages/@costrict/ink/src/core/legacyConsole.ts
81344
+ import { release } from "os";
81345
+ function isLegacyWindowsBuild(releaseString) {
81346
+ const build = Number(releaseString.split(".")[2]);
81347
+ return Number.isFinite(build) && build < 17763;
81348
+ }
81349
+ function parseLegacyConsoleMode(override, autoDetected) {
81350
+ if (override === "0")
81351
+ return "off";
81352
+ if (override === "2" || override === "always")
81353
+ return "always";
81354
+ if (override === "1")
81355
+ return "periodic";
81356
+ return autoDetected ? "periodic" : "off";
81357
+ }
81358
+ function parseLegacyConsoleResetMs(raw) {
81359
+ if (raw === undefined || raw.trim() === "")
81360
+ return 1000;
81361
+ const parsed = Number(raw);
81362
+ if (!Number.isFinite(parsed))
81363
+ return 1000;
81364
+ return Math.min(1e4, Math.max(100, Math.floor(parsed)));
81365
+ }
81366
+ function legacyConsoleMode() {
81367
+ if (cachedMode === undefined) {
81368
+ const override = process.env.COSTRICT_LEGACY_CONSOLE ?? process.env.CLAUDE_CODE_LEGACY_CONSOLE;
81369
+ cachedMode = parseLegacyConsoleMode(override, process.platform === "win32" && isLegacyWindowsBuild(release()));
81370
+ }
81371
+ return cachedMode;
81372
+ }
81373
+ function isLegacyWindowsConsole() {
81374
+ return legacyConsoleMode() !== "off";
81375
+ }
81376
+ function legacyConsoleResetMs() {
81377
+ if (cachedResetMs === undefined) {
81378
+ const raw = process.env.COSTRICT_LEGACY_CONSOLE_RESET_MS ?? process.env.CLAUDE_CODE_LEGACY_CONSOLE_RESET_MS;
81379
+ cachedResetMs = parseLegacyConsoleResetMs(raw);
81380
+ }
81381
+ return cachedResetMs;
81382
+ }
81383
+ function effectiveColumns(columns) {
81384
+ const terminalColumns = columns || 80;
81385
+ if (!isLegacyWindowsConsole())
81386
+ return terminalColumns;
81387
+ return Math.max(20, terminalColumns - 1);
81388
+ }
81389
+ var cachedMode, cachedResetMs;
81390
+ var init_legacyConsole = () => {};
81391
+
81340
81392
  // packages/@costrict/ink/src/core/log-update.ts
81341
81393
  class LogUpdate {
81342
81394
  options;
81343
81395
  state;
81396
+ lastLegacyReset = 0;
81344
81397
  constructor(options) {
81345
81398
  this.options = options;
81346
81399
  this.state = {
@@ -81417,6 +81470,11 @@ class LogUpdate {
81417
81470
  if (next.viewport.height < prev.viewport.height || prev.viewport.width !== 0 && next.viewport.width !== prev.viewport.width) {
81418
81471
  return fullResetSequence_CAUSES_FLICKER(next, "resize", stylePool);
81419
81472
  }
81473
+ const legacyMode = legacyConsoleMode();
81474
+ if (legacyMode === "always" || legacyMode === "periodic" && startTime2 - this.lastLegacyReset >= legacyConsoleResetMs()) {
81475
+ this.lastLegacyReset = startTime2;
81476
+ return fullResetSequence_CAUSES_FLICKER(next, "clear", stylePool);
81477
+ }
81420
81478
  let scrollPatch = [];
81421
81479
  if (altScreen && next.scrollHint && decstbmSafe) {
81422
81480
  const { top, bottom, delta } = next.scrollHint;
@@ -81723,6 +81781,7 @@ class VirtualScreen {
81723
81781
  var logForDebugging3 = (_message) => {}, CARRIAGE_RETURN, NEWLINE;
81724
81782
  var init_log_update = __esm(() => {
81725
81783
  init_build();
81784
+ init_legacyConsole();
81726
81785
  init_screen();
81727
81786
  init_csi();
81728
81787
  init_osc();
@@ -83855,16 +83914,16 @@ function renderChildren(node, output, offsetX, offsetY, hasRemovedChild, prevScr
83855
83914
  for (const childNode of node.childNodes) {
83856
83915
  const childElem = childNode;
83857
83916
  const wasDirty = childElem.dirty;
83858
- const isAbsolute3 = childElem.style.position === "absolute";
83917
+ const isAbsolute4 = childElem.style.position === "absolute";
83859
83918
  renderNodeToOutput(childElem, output, {
83860
83919
  offsetX,
83861
83920
  offsetY,
83862
83921
  prevScreen: hasRemovedChild || seenDirtyChild ? undefined : prevScreen,
83863
- skipSelfBlit: seenDirtyClipped && isAbsolute3 && !childElem.style.opaque && childElem.style.backgroundColor === undefined,
83922
+ skipSelfBlit: seenDirtyClipped && isAbsolute4 && !childElem.style.opaque && childElem.style.backgroundColor === undefined,
83864
83923
  inheritedBackgroundColor
83865
83924
  });
83866
83925
  if (wasDirty && !seenDirtyChild) {
83867
- if (!clipsBothAxes(childElem) || isAbsolute3) {
83926
+ if (!clipsBothAxes(childElem) || isAbsolute4) {
83868
83927
  seenDirtyChild = true;
83869
83928
  } else {
83870
83929
  seenDirtyClipped = true;
@@ -84249,7 +84308,7 @@ class Ink {
84249
84308
  stdout: options.stdout,
84250
84309
  stderr: options.stderr
84251
84310
  };
84252
- this.terminalColumns = options.stdout.columns || 80;
84311
+ this.terminalColumns = effectiveColumns(options.stdout.columns);
84253
84312
  this.terminalRows = options.stdout.rows || 24;
84254
84313
  this.altScreenParkPatch = makeAltScreenParkPatch(this.terminalRows);
84255
84314
  this.stylePool = new StylePool;
@@ -84313,7 +84372,7 @@ class Ink {
84313
84372
  this.displayCursor = null;
84314
84373
  };
84315
84374
  handleResize = () => {
84316
- const cols = this.options.stdout.columns || 80;
84375
+ const cols = effectiveColumns(this.options.stdout.columns);
84317
84376
  const rows = this.options.stdout.rows || 24;
84318
84377
  if (cols === this.terminalColumns && rows === this.terminalRows)
84319
84378
  return;
@@ -84360,7 +84419,7 @@ class Ink {
84360
84419
  }
84361
84420
  this.options.onBeforeRender?.();
84362
84421
  const renderStart = performance.now();
84363
- const terminalWidth = this.options.stdout.columns || 80;
84422
+ const terminalWidth = effectiveColumns(this.options.stdout.columns);
84364
84423
  const terminalRows = this.options.stdout.rows || 24;
84365
84424
  const frame = this.renderer({
84366
84425
  frontFrame: this.frontFrame,
@@ -85084,6 +85143,7 @@ var init_ink = __esm(() => {
85084
85143
  init_frame();
85085
85144
  init_hit_test();
85086
85145
  init_instances();
85146
+ init_legacyConsole();
85087
85147
  init_log_update();
85088
85148
  init_node_cache();
85089
85149
  init_output2();
@@ -86987,7 +87047,7 @@ function isRunningWithBun() {
86987
87047
  }
86988
87048
 
86989
87049
  // src/utils/findExecutable.ts
86990
- function findExecutable2(exe, args) {
87050
+ function findExecutable(exe, args) {
86991
87051
  const resolved = whichSync(exe);
86992
87052
  return { cmd: resolved ?? exe, args };
86993
87053
  }
@@ -87167,7 +87227,7 @@ var init_env = __esm(() => {
87167
87227
  if (!isWslEnvironment()) {
87168
87228
  return false;
87169
87229
  }
87170
- const { cmd } = findExecutable2("npm", []);
87230
+ const { cmd } = findExecutable("npm", []);
87171
87231
  return cmd.startsWith("/mnt/c/");
87172
87232
  } catch (_error) {
87173
87233
  return false;
@@ -87550,7 +87610,7 @@ var init_schemas3 = __esm(() => {
87550
87610
  RelativePath = lazySchema(() => exports_external.string().startsWith("./"));
87551
87611
  RelativeJSONPath = lazySchema(() => RelativePath().endsWith(".json"));
87552
87612
  McpbPath = lazySchema(() => exports_external.union([
87553
- RelativePath().refine((path13) => path13.endsWith(".mcpb") || path13.endsWith(".dxt"), {
87613
+ RelativePath().refine((path12) => path12.endsWith(".mcpb") || path12.endsWith(".dxt"), {
87554
87614
  message: "MCPB file path must end with .mcpb or .dxt"
87555
87615
  }).describe("Path to MCPB file relative to plugin root"),
87556
87616
  exports_external.string().url().refine((url3) => url3.endsWith(".mcpb") || url3.endsWith(".dxt"), {
@@ -88735,7 +88795,7 @@ function extractReceivedFromMessage(msg) {
88735
88795
  }
88736
88796
  function formatZodError(error52, filePath) {
88737
88797
  return error52.issues.map((issue2) => {
88738
- const path13 = issue2.path.map(String).join(".");
88798
+ const path12 = issue2.path.map(String).join(".");
88739
88799
  let message = issue2.message;
88740
88800
  let expected;
88741
88801
  let enumValues;
@@ -88760,7 +88820,7 @@ function formatZodError(error52, filePath) {
88760
88820
  invalidValue = receivedValue;
88761
88821
  }
88762
88822
  const tip = getValidationTip({
88763
- path: path13,
88823
+ path: path12,
88764
88824
  code: issue2.code,
88765
88825
  expected: expectedValue,
88766
88826
  received: receivedValue,
@@ -88773,7 +88833,7 @@ function formatZodError(error52, filePath) {
88773
88833
  message = `Invalid value. Expected one of: ${expected}`;
88774
88834
  } else if (isInvalidTypeIssue(issue2)) {
88775
88835
  const receivedType = extractReceivedFromMessage(issue2.message) ?? getReceivedType(issue2.input);
88776
- if (issue2.expected === "object" && receivedType === "null" && path13 === "") {
88836
+ if (issue2.expected === "object" && receivedType === "null" && path12 === "") {
88777
88837
  message = "Invalid or malformed JSON";
88778
88838
  } else {
88779
88839
  message = `Expected ${issue2.expected}, but received ${receivedType}`;
@@ -88787,7 +88847,7 @@ function formatZodError(error52, filePath) {
88787
88847
  }
88788
88848
  return {
88789
88849
  file: filePath,
88790
- path: path13,
88850
+ path: path12,
88791
88851
  message,
88792
88852
  expected,
88793
88853
  invalidValue,
@@ -88912,45 +88972,45 @@ function loadManagedFileSettings() {
88912
88972
  }
88913
88973
  return { settings: found ? merged : null, errors: errors3 };
88914
88974
  }
88915
- function handleFileSystemError(error52, path13) {
88975
+ function handleFileSystemError(error52, path12) {
88916
88976
  if (typeof error52 === "object" && error52 && "code" in error52 && error52.code === "ENOENT") {
88917
- logForDebugging(`Broken symlink or missing file encountered for settings.json at path: ${path13}`);
88977
+ logForDebugging(`Broken symlink or missing file encountered for settings.json at path: ${path12}`);
88918
88978
  } else {
88919
88979
  logError2(error52);
88920
88980
  }
88921
88981
  }
88922
- function parseSettingsFile(path13) {
88923
- const cached3 = getCachedParsedFile(path13);
88982
+ function parseSettingsFile(path12) {
88983
+ const cached3 = getCachedParsedFile(path12);
88924
88984
  if (cached3) {
88925
88985
  return {
88926
88986
  settings: cached3.settings ? clone(cached3.settings) : null,
88927
88987
  errors: cached3.errors
88928
88988
  };
88929
88989
  }
88930
- const result = parseSettingsFileUncached(path13);
88931
- setCachedParsedFile(path13, result);
88990
+ const result = parseSettingsFileUncached(path12);
88991
+ setCachedParsedFile(path12, result);
88932
88992
  return {
88933
88993
  settings: result.settings ? clone(result.settings) : null,
88934
88994
  errors: result.errors
88935
88995
  };
88936
88996
  }
88937
- function parseSettingsFileUncached(path13) {
88997
+ function parseSettingsFileUncached(path12) {
88938
88998
  try {
88939
- const { resolvedPath } = safeResolvePath(getFsImplementation(), path13);
88999
+ const { resolvedPath } = safeResolvePath(getFsImplementation(), path12);
88940
89000
  const content = readFileSync6(resolvedPath);
88941
89001
  if (content.trim() === "") {
88942
89002
  return { settings: {}, errors: [] };
88943
89003
  }
88944
89004
  const data = safeParseJSON(content, false);
88945
- const ruleWarnings = filterInvalidPermissionRules(data, path13);
89005
+ const ruleWarnings = filterInvalidPermissionRules(data, path12);
88946
89006
  const result = SettingsSchema().safeParse(data);
88947
89007
  if (!result.success) {
88948
- const errors3 = formatZodError(result.error, path13);
89008
+ const errors3 = formatZodError(result.error, path12);
88949
89009
  return { settings: null, errors: [...ruleWarnings, ...errors3] };
88950
89010
  }
88951
89011
  return { settings: result.data, errors: ruleWarnings };
88952
89012
  } catch (error52) {
88953
- handleFileSystemError(error52, path13);
89013
+ handleFileSystemError(error52, path12);
88954
89014
  return { settings: null, errors: [] };
88955
89015
  }
88956
89016
  }
@@ -88964,8 +89024,8 @@ function getSettingsRootPathForSource(source) {
88964
89024
  return resolve7(getOriginalCwd());
88965
89025
  }
88966
89026
  case "flagSettings": {
88967
- const path13 = getFlagSettingsPath();
88968
- return path13 ? dirname7(resolve7(path13)) : resolve7(getOriginalCwd());
89027
+ const path12 = getFlagSettingsPath();
89028
+ return path12 ? dirname7(resolve7(path12)) : resolve7(getOriginalCwd());
88969
89029
  }
88970
89030
  }
88971
89031
  }
@@ -89522,26 +89582,26 @@ var init_dist4 = __esm(() => {
89522
89582
  });
89523
89583
 
89524
89584
  // src/utils/caCerts.ts
89525
- function readExtraCACert(path13) {
89526
- if (!path13) {
89585
+ function readExtraCACert(path12) {
89586
+ if (!path12) {
89527
89587
  return;
89528
89588
  }
89529
89589
  try {
89530
- const stats = getFsImplementation().statSync(path13);
89590
+ const stats = getFsImplementation().statSync(path12);
89531
89591
  if (!stats.isFile()) {
89532
- logForDebugging(`CA certs: Ignoring NODE_EXTRA_CA_CERTS because it is not a regular file (${path13})`, { level: "error" });
89533
- clearInvalidExtraCACertsEnv(path13);
89592
+ logForDebugging(`CA certs: Ignoring NODE_EXTRA_CA_CERTS because it is not a regular file (${path12})`, { level: "error" });
89593
+ clearInvalidExtraCACertsEnv(path12);
89534
89594
  return;
89535
89595
  }
89536
- return getFsImplementation().readFileSync(path13, { encoding: "utf8" });
89596
+ return getFsImplementation().readFileSync(path12, { encoding: "utf8" });
89537
89597
  } catch (error52) {
89538
- logForDebugging(`CA certs: Ignoring unreadable NODE_EXTRA_CA_CERTS path (${path13}): ${error52}`, { level: "error" });
89539
- clearInvalidExtraCACertsEnv(path13);
89598
+ logForDebugging(`CA certs: Ignoring unreadable NODE_EXTRA_CA_CERTS path (${path12}): ${error52}`, { level: "error" });
89599
+ clearInvalidExtraCACertsEnv(path12);
89540
89600
  return;
89541
89601
  }
89542
89602
  }
89543
- function clearInvalidExtraCACertsEnv(path13) {
89544
- if (process.env.NODE_EXTRA_CA_CERTS === path13) {
89603
+ function clearInvalidExtraCACertsEnv(path12) {
89604
+ if (process.env.NODE_EXTRA_CA_CERTS === path12) {
89545
89605
  delete process.env.NODE_EXTRA_CA_CERTS;
89546
89606
  }
89547
89607
  }
@@ -91893,14 +91953,14 @@ var require_config = __commonJS((exports) => {
91893
91953
  };
91894
91954
  var filePromises = {};
91895
91955
  var fileIntercept = {};
91896
- var readFile3 = (path13, options) => {
91897
- if (fileIntercept[path13] !== undefined) {
91898
- return fileIntercept[path13];
91956
+ var readFile3 = (path12, options) => {
91957
+ if (fileIntercept[path12] !== undefined) {
91958
+ return fileIntercept[path12];
91899
91959
  }
91900
- if (!filePromises[path13] || options?.ignoreCache) {
91901
- filePromises[path13] = promises.readFile(path13, "utf8");
91960
+ if (!filePromises[path12] || options?.ignoreCache) {
91961
+ filePromises[path12] = promises.readFile(path12, "utf8");
91902
91962
  }
91903
- return filePromises[path13];
91963
+ return filePromises[path12];
91904
91964
  };
91905
91965
  var swallowError$1 = () => ({});
91906
91966
  var loadSharedConfigFiles = async (init = {}) => {
@@ -91952,8 +92012,8 @@ var require_config = __commonJS((exports) => {
91952
92012
  getFileRecord() {
91953
92013
  return fileIntercept;
91954
92014
  },
91955
- interceptFile(path13, contents) {
91956
- fileIntercept[path13] = Promise.resolve(contents);
92015
+ interceptFile(path12, contents) {
92016
+ fileIntercept[path12] = Promise.resolve(contents);
91957
92017
  },
91958
92018
  getTokenRecord() {
91959
92019
  return tokenIntercept;
@@ -92226,13 +92286,13 @@ var require_config = __commonJS((exports) => {
92226
92286
  }
92227
92287
  return { hostname: "169.254.169.254", path: "/" };
92228
92288
  };
92229
- var imdsHttpGet = async ({ hostname: hostname3, path: path13 }) => {
92289
+ var imdsHttpGet = async ({ hostname: hostname3, path: path12 }) => {
92230
92290
  const { request } = await import("http");
92231
92291
  return new Promise((resolve8, reject) => {
92232
92292
  const req = request({
92233
92293
  method: "GET",
92234
92294
  hostname: hostname3.replace(/^\[(.+)]$/, "$1"),
92235
- path: path13,
92295
+ path: path12,
92236
92296
  timeout: 1000,
92237
92297
  signal: AbortSignal.timeout(1000)
92238
92298
  });
@@ -92412,8 +92472,8 @@ var require_endpoints = __commonJS((exports) => {
92412
92472
  return endpoint.url.href;
92413
92473
  }
92414
92474
  if ("hostname" in endpoint) {
92415
- const { protocol, hostname: hostname3, port: port2, path: path13 } = endpoint;
92416
- return `${protocol}//${hostname3}${port2 ? ":" + port2 : ""}${path13}`;
92475
+ const { protocol, hostname: hostname3, port: port2, path: path12 } = endpoint;
92476
+ return `${protocol}//${hostname3}${port2 ? ":" + port2 : ""}${path12}`;
92417
92477
  }
92418
92478
  }
92419
92479
  return endpoint;
@@ -92668,18 +92728,18 @@ var require_endpoints = __commonJS((exports) => {
92668
92728
  }
92669
92729
  return;
92670
92730
  }
92671
- var getAttrPathList = (path13) => {
92672
- const parts = path13.split(".");
92731
+ var getAttrPathList = (path12) => {
92732
+ const parts = path12.split(".");
92673
92733
  const pathList = [];
92674
92734
  for (const part of parts) {
92675
92735
  const squareBracketIndex = part.indexOf("[");
92676
92736
  if (squareBracketIndex !== -1) {
92677
92737
  if (part.indexOf("]") !== part.length - 1) {
92678
- throw new EndpointError(`Path: '${path13}' does not end with ']'`);
92738
+ throw new EndpointError(`Path: '${path12}' does not end with ']'`);
92679
92739
  }
92680
92740
  const arrayIndex = part.slice(squareBracketIndex + 1, -1);
92681
92741
  if (Number.isNaN(parseInt(arrayIndex))) {
92682
- throw new EndpointError(`Invalid array index: '${arrayIndex}' in path: '${path13}'`);
92742
+ throw new EndpointError(`Invalid array index: '${arrayIndex}' in path: '${path12}'`);
92683
92743
  }
92684
92744
  if (squareBracketIndex !== 0) {
92685
92745
  pathList.push(part.slice(0, squareBracketIndex));
@@ -92691,9 +92751,9 @@ var require_endpoints = __commonJS((exports) => {
92691
92751
  }
92692
92752
  return pathList;
92693
92753
  };
92694
- var getAttr = (value, path13) => getAttrPathList(path13).reduce((acc, index2) => {
92754
+ var getAttr = (value, path12) => getAttrPathList(path12).reduce((acc, index2) => {
92695
92755
  if (typeof acc !== "object") {
92696
- throw new EndpointError(`Index '${index2}' in '${path13}' not found in '${JSON.stringify(value)}'`);
92756
+ throw new EndpointError(`Index '${index2}' in '${path12}' not found in '${JSON.stringify(value)}'`);
92697
92757
  } else if (Array.isArray(acc)) {
92698
92758
  const i2 = parseInt(index2);
92699
92759
  return acc[i2 < 0 ? acc.length + i2 : i2];
@@ -92718,8 +92778,8 @@ var require_endpoints = __commonJS((exports) => {
92718
92778
  return value;
92719
92779
  }
92720
92780
  if (typeof value === "object" && "hostname" in value) {
92721
- const { hostname: hostname4, port: port2, protocol: protocol2 = "", path: path13 = "", query = {} } = value;
92722
- const url3 = new URL(`${protocol2}//${hostname4}${port2 ? `:${port2}` : ""}${path13}`);
92781
+ const { hostname: hostname4, port: port2, protocol: protocol2 = "", path: path12 = "", query = {} } = value;
92782
+ const url3 = new URL(`${protocol2}//${hostname4}${port2 ? `:${port2}` : ""}${path12}`);
92723
92783
  url3.search = Object.entries(query).map(([k2, v]) => `${k2}=${v}`).join("&");
92724
92784
  return url3;
92725
92785
  }
@@ -95339,13 +95399,13 @@ var require_tslib = __commonJS((exports, module) => {
95339
95399
  }
95340
95400
  return next();
95341
95401
  };
95342
- __rewriteRelativeImportExtension = function(path13, preserveJsx) {
95343
- if (typeof path13 === "string" && /^\.\.?\//.test(path13)) {
95344
- return path13.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m, tsx, d, ext, cm) {
95402
+ __rewriteRelativeImportExtension = function(path12, preserveJsx) {
95403
+ if (typeof path12 === "string" && /^\.\.?\//.test(path12)) {
95404
+ return path12.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m, tsx, d, ext, cm) {
95345
95405
  return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : d + ext + "." + cm.toLowerCase() + "js";
95346
95406
  });
95347
95407
  }
95348
- return path13;
95408
+ return path12;
95349
95409
  };
95350
95410
  exporter("__extends", __extends);
95351
95411
  exporter("__assign", __assign);
@@ -96983,11 +97043,11 @@ var require_protocols = __commonJS((exports) => {
96983
97043
  const opTraits = schema.translateTraits(operationSchema.traits);
96984
97044
  if (opTraits.http) {
96985
97045
  request.method = opTraits.http[0];
96986
- const [path13, search] = opTraits.http[1].split("?");
97046
+ const [path12, search] = opTraits.http[1].split("?");
96987
97047
  if (request.path == "/") {
96988
- request.path = path13;
97048
+ request.path = path12;
96989
97049
  } else {
96990
- request.path += path13;
97050
+ request.path += path12;
96991
97051
  }
96992
97052
  const traitSearchParams = new URLSearchParams(search ?? "");
96993
97053
  for (const [key, value] of traitSearchParams) {
@@ -97362,8 +97422,8 @@ var require_protocols = __commonJS((exports) => {
97362
97422
  return this;
97363
97423
  }
97364
97424
  p(memberName, labelValueProvider, uriLabel, isGreedyLabel) {
97365
- this.resolvePathStack.push((path13) => {
97366
- this.path = resolvedPath(path13, this.input, memberName, labelValueProvider, uriLabel, isGreedyLabel);
97425
+ this.resolvePathStack.push((path12) => {
97426
+ this.path = resolvedPath(path12, this.input, memberName, labelValueProvider, uriLabel, isGreedyLabel);
97367
97427
  });
97368
97428
  return this;
97369
97429
  }
@@ -98062,12 +98122,12 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
98062
98122
  const password = request.password ?? "";
98063
98123
  auth = `${username}:${password}`;
98064
98124
  }
98065
- let path13 = request.path;
98125
+ let path12 = request.path;
98066
98126
  if (queryString) {
98067
- path13 += `?${queryString}`;
98127
+ path12 += `?${queryString}`;
98068
98128
  }
98069
98129
  if (request.fragment) {
98070
- path13 += `#${request.fragment}`;
98130
+ path12 += `#${request.fragment}`;
98071
98131
  }
98072
98132
  let hostname3 = request.hostname ?? "";
98073
98133
  if (hostname3[0] === "[" && hostname3.endsWith("]")) {
@@ -98079,7 +98139,7 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
98079
98139
  headers: request.headers,
98080
98140
  host: hostname3,
98081
98141
  method: request.method,
98082
- path: path13,
98142
+ path: path12,
98083
98143
  port: request.port,
98084
98144
  agent,
98085
98145
  auth
@@ -98486,16 +98546,16 @@ or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler conf
98486
98546
  reject(err);
98487
98547
  };
98488
98548
  const queryString = query ? protocols.buildQueryString(query) : "";
98489
- let path13 = request.path;
98549
+ let path12 = request.path;
98490
98550
  if (queryString) {
98491
- path13 += `?${queryString}`;
98551
+ path12 += `?${queryString}`;
98492
98552
  }
98493
98553
  if (request.fragment) {
98494
- path13 += `#${request.fragment}`;
98554
+ path12 += `#${request.fragment}`;
98495
98555
  }
98496
98556
  const clientHttp2Stream = session.request({
98497
98557
  ...request.headers,
98498
- [constants4.HTTP2_HEADER_PATH]: path13,
98558
+ [constants4.HTTP2_HEADER_PATH]: path12,
98499
98559
  [constants4.HTTP2_HEADER_METHOD]: method
98500
98560
  });
98501
98561
  if (effectiveRequestTimeout) {
@@ -99700,9 +99760,9 @@ var require_dist_cjs6 = __commonJS((exports) => {
99700
99760
  return;
99701
99761
  };
99702
99762
  }
99703
- var get2 = (fromObject, path13) => {
99763
+ var get2 = (fromObject, path12) => {
99704
99764
  let cursor = fromObject;
99705
- const pathComponents = path13.split(".");
99765
+ const pathComponents = path12.split(".");
99706
99766
  for (const step of pathComponents) {
99707
99767
  if (!cursor || typeof cursor !== "object") {
99708
99768
  return;
@@ -103541,12 +103601,12 @@ import fs5 from "fs/promises";
103541
103601
  var import_client4, import_config9, import_node_http_handler, AWS_CONTAINER_CREDENTIALS_RELATIVE_URI = "AWS_CONTAINER_CREDENTIALS_RELATIVE_URI", DEFAULT_LINK_LOCAL_HOST = "http://169.254.170.2", AWS_CONTAINER_CREDENTIALS_FULL_URI = "AWS_CONTAINER_CREDENTIALS_FULL_URI", AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE = "AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE", AWS_CONTAINER_AUTHORIZATION_TOKEN = "AWS_CONTAINER_AUTHORIZATION_TOKEN", fromHttp = (options = {}) => {
103542
103602
  options.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");
103543
103603
  let host;
103544
- const relative3 = options.awsContainerCredentialsRelativeUri ?? process.env[AWS_CONTAINER_CREDENTIALS_RELATIVE_URI];
103604
+ const relative4 = options.awsContainerCredentialsRelativeUri ?? process.env[AWS_CONTAINER_CREDENTIALS_RELATIVE_URI];
103545
103605
  const full = options.awsContainerCredentialsFullUri ?? process.env[AWS_CONTAINER_CREDENTIALS_FULL_URI];
103546
103606
  const token = options.awsContainerAuthorizationToken ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN];
103547
103607
  const tokenFile = options.awsContainerAuthorizationTokenFile ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE];
103548
103608
  const warn = options.logger?.constructor?.name === "NoOpLogger" || !options.logger?.warn ? console.warn : options.logger.warn.bind(options.logger);
103549
- if (relative3 && full) {
103609
+ if (relative4 && full) {
103550
103610
  warn("@aws-sdk/credential-provider-http: " + "you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri.");
103551
103611
  warn("awsContainerCredentialsFullUri will take precedence.");
103552
103612
  }
@@ -103556,8 +103616,8 @@ var import_client4, import_config9, import_node_http_handler, AWS_CONTAINER_CRED
103556
103616
  }
103557
103617
  if (full) {
103558
103618
  host = full;
103559
- } else if (relative3) {
103560
- host = `${DEFAULT_LINK_LOCAL_HOST}${relative3}`;
103619
+ } else if (relative4) {
103620
+ host = `${DEFAULT_LINK_LOCAL_HOST}${relative4}`;
103561
103621
  } else {
103562
103622
  throw new import_config9.CredentialsProviderError(`No HTTP credential provider host provided.
103563
103623
  Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`, { logger: options.logger });
@@ -103933,10 +103993,10 @@ ${longDate}
103933
103993
  ${credentialScope}
103934
103994
  ${serde.toHex(hashedRequest)}`;
103935
103995
  }
103936
- getCanonicalPath({ path: path13 }) {
103996
+ getCanonicalPath({ path: path12 }) {
103937
103997
  if (this.uriEscapePath) {
103938
103998
  const normalizedPathSegments = [];
103939
- for (const pathSegment of path13.split("/")) {
103999
+ for (const pathSegment of path12.split("/")) {
103940
104000
  if (pathSegment?.length === 0)
103941
104001
  continue;
103942
104002
  if (pathSegment === ".")
@@ -103947,11 +104007,11 @@ ${serde.toHex(hashedRequest)}`;
103947
104007
  normalizedPathSegments.push(pathSegment);
103948
104008
  }
103949
104009
  }
103950
- const normalizedPath = `${path13?.startsWith("/") ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && path13?.endsWith("/") ? "/" : ""}`;
104010
+ const normalizedPath = `${path12?.startsWith("/") ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && path12?.endsWith("/") ? "/" : ""}`;
103951
104011
  const doubleEncoded = protocols.escapeUri(normalizedPath);
103952
104012
  return doubleEncoded.replace(/%2F/g, "/");
103953
104013
  }
103954
- return path13;
104014
+ return path12;
103955
104015
  }
103956
104016
  validateResolvedCredentials(credentials) {
103957
104017
  if (typeof credentials !== "object" || typeof credentials.accessKeyId !== "string" || typeof credentials.secretAccessKey !== "string") {
@@ -105258,7 +105318,7 @@ var require_cbor = __commonJS((exports) => {
105258
105318
  throw new Error("Malformed RPCv2 CBOR response, status: " + response.statusCode);
105259
105319
  }
105260
105320
  };
105261
- var buildHttpRpcRequest = async (context, headers, path13, resolvedHostname, body) => {
105321
+ var buildHttpRpcRequest = async (context, headers, path12, resolvedHostname, body) => {
105262
105322
  const endpoint = await context.endpoint();
105263
105323
  const { hostname: hostname3, protocol = "https", port: port2, path: basePath } = endpoint;
105264
105324
  const contents = {
@@ -105266,7 +105326,7 @@ var require_cbor = __commonJS((exports) => {
105266
105326
  hostname: hostname3,
105267
105327
  port: port2,
105268
105328
  method: "POST",
105269
- path: basePath.endsWith("/") ? basePath.slice(0, -1) + path13 : basePath + path13,
105329
+ path: basePath.endsWith("/") ? basePath.slice(0, -1) + path12 : basePath + path12,
105270
105330
  headers: {
105271
105331
  ...headers
105272
105332
  }
@@ -105521,11 +105581,11 @@ var require_cbor = __commonJS((exports) => {
105521
105581
  } catch (e) {}
105522
105582
  }
105523
105583
  const { service, operation } = client.getSmithyContext(context);
105524
- const path13 = `/service/${service}/operation/${operation}`;
105584
+ const path12 = `/service/${service}/operation/${operation}`;
105525
105585
  if (request.path.endsWith("/")) {
105526
- request.path += path13.slice(1);
105586
+ request.path += path12.slice(1);
105527
105587
  } else {
105528
- request.path += path13;
105588
+ request.path += path12;
105529
105589
  }
105530
105590
  return request;
105531
105591
  }
@@ -124353,30 +124413,30 @@ var init_client2 = __esm(() => {
124353
124413
 
124354
124414
  // src/utils/authFileDescriptor.ts
124355
124415
  import { mkdirSync as mkdirSync2, writeFileSync as writeFileSync3 } from "fs";
124356
- function maybePersistTokenForSubprocesses(path13, token, tokenName) {
124416
+ function maybePersistTokenForSubprocesses(path12, token, tokenName) {
124357
124417
  if (!isEnvTruthy(process.env.CLAUDE_CODE_REMOTE)) {
124358
124418
  return;
124359
124419
  }
124360
124420
  try {
124361
124421
  mkdirSync2(CCR_TOKEN_DIR, { recursive: true, mode: 448 });
124362
- writeFileSync3(path13, token, { encoding: "utf8", mode: 384 });
124363
- logForDebugging(`Persisted ${tokenName} to ${path13} for subprocess access`);
124422
+ writeFileSync3(path12, token, { encoding: "utf8", mode: 384 });
124423
+ logForDebugging(`Persisted ${tokenName} to ${path12} for subprocess access`);
124364
124424
  } catch (error52) {
124365
124425
  logForDebugging(`Failed to persist ${tokenName} to disk (non-fatal): ${errorMessage(error52)}`, { level: "error" });
124366
124426
  }
124367
124427
  }
124368
- function readTokenFromWellKnownFile(path13, tokenName) {
124428
+ function readTokenFromWellKnownFile(path12, tokenName) {
124369
124429
  try {
124370
124430
  const fsOps = getFsImplementation();
124371
- const token = fsOps.readFileSync(path13, { encoding: "utf8" }).trim();
124431
+ const token = fsOps.readFileSync(path12, { encoding: "utf8" }).trim();
124372
124432
  if (!token) {
124373
124433
  return null;
124374
124434
  }
124375
- logForDebugging(`Read ${tokenName} from well-known file ${path13}`);
124435
+ logForDebugging(`Read ${tokenName} from well-known file ${path12}`);
124376
124436
  return token;
124377
124437
  } catch (error52) {
124378
124438
  if (!isENOENT(error52)) {
124379
- logForDebugging(`Failed to read ${tokenName} from ${path13}: ${errorMessage(error52)}`, { level: "debug" });
124439
+ logForDebugging(`Failed to read ${tokenName} from ${path12}: ${errorMessage(error52)}`, { level: "debug" });
124380
124440
  }
124381
124441
  return null;
124382
124442
  }
@@ -127682,15 +127742,15 @@ var init_modelCapabilities = __esm(() => {
127682
127742
  models: exports_external.array(ModelCapabilitySchema()),
127683
127743
  timestamp: exports_external.number()
127684
127744
  }));
127685
- loadCache = memoize_default((path13) => {
127745
+ loadCache = memoize_default((path12) => {
127686
127746
  try {
127687
- const raw = readFileSync10(path13, "utf-8");
127747
+ const raw = readFileSync10(path12, "utf-8");
127688
127748
  const parsed = CacheFileSchema().safeParse(safeParseJSON(raw, false));
127689
127749
  return parsed.success ? parsed.data.models : null;
127690
127750
  } catch {
127691
127751
  return null;
127692
127752
  }
127693
- }, (path13) => path13);
127753
+ }, (path12) => path12);
127694
127754
  });
127695
127755
 
127696
127756
  // src/costrict/provider/models.ts
@@ -132576,7 +132636,7 @@ var require_util2 = __commonJS((exports) => {
132576
132636
  exports.getWellKnownCertificateConfigFileLocation = getWellKnownCertificateConfigFileLocation;
132577
132637
  var fs7 = __require("fs");
132578
132638
  var os4 = __require("os");
132579
- var path13 = __require("path");
132639
+ var path12 = __require("path");
132580
132640
  var WELL_KNOWN_CERTIFICATE_CONFIG_FILE = "certificate_config.json";
132581
132641
  var CLOUDSDK_CONFIG_DIRECTORY = "gcloud";
132582
132642
  function snakeToCamel(str) {
@@ -132644,8 +132704,8 @@ var require_util2 = __commonJS((exports) => {
132644
132704
  }
132645
132705
  }
132646
132706
  function getWellKnownCertificateConfigFileLocation() {
132647
- const configDir = process.env.CLOUDSDK_CONFIG || (_isWindows() ? path13.join(process.env.APPDATA || "", CLOUDSDK_CONFIG_DIRECTORY) : path13.join(process.env.HOME || "", ".config", CLOUDSDK_CONFIG_DIRECTORY));
132648
- return path13.join(configDir, WELL_KNOWN_CERTIFICATE_CONFIG_FILE);
132707
+ const configDir = process.env.CLOUDSDK_CONFIG || (_isWindows() ? path12.join(process.env.APPDATA || "", CLOUDSDK_CONFIG_DIRECTORY) : path12.join(process.env.HOME || "", ".config", CLOUDSDK_CONFIG_DIRECTORY));
132708
+ return path12.join(configDir, WELL_KNOWN_CERTIFICATE_CONFIG_FILE);
132649
132709
  }
132650
132710
  function _isWindows() {
132651
132711
  return os4.platform().startsWith("win");
@@ -134356,7 +134416,7 @@ var require_errorWithCode = __commonJS((exports) => {
134356
134416
  var require_getCredentials = __commonJS((exports) => {
134357
134417
  Object.defineProperty(exports, "__esModule", { value: true });
134358
134418
  exports.getCredentials = getCredentials2;
134359
- var path13 = __require("path");
134419
+ var path12 = __require("path");
134360
134420
  var fs7 = __require("fs");
134361
134421
  var util_1 = __require("util");
134362
134422
  var errorWithCode_1 = require_errorWithCode();
@@ -134415,7 +134475,7 @@ var require_getCredentials = __commonJS((exports) => {
134415
134475
 
134416
134476
  class CredentialsProviderFactory {
134417
134477
  static create(keyFilePath) {
134418
- const keyFileExtension = path13.extname(keyFilePath);
134478
+ const keyFileExtension = path12.extname(keyFilePath);
134419
134479
  switch (keyFileExtension) {
134420
134480
  case ExtensionFiles.JSON:
134421
134481
  return new JsonCredentialsProvider(keyFilePath);
@@ -137016,7 +137076,7 @@ var require_googleauth = __commonJS((exports) => {
137016
137076
  var gaxios_1 = require_src3();
137017
137077
  var gcpMetadata = require_src5();
137018
137078
  var os4 = __require("os");
137019
- var path13 = __require("path");
137079
+ var path12 = __require("path");
137020
137080
  var crypto_1 = require_crypto3();
137021
137081
  var computeclient_1 = require_computeclient();
137022
137082
  var idtokenclient_1 = require_idtokenclient();
@@ -137225,11 +137285,11 @@ var require_googleauth = __commonJS((exports) => {
137225
137285
  } else {
137226
137286
  const home = process.env["HOME"];
137227
137287
  if (home) {
137228
- location = path13.join(home, ".config");
137288
+ location = path12.join(home, ".config");
137229
137289
  }
137230
137290
  }
137231
137291
  if (location) {
137232
- location = path13.join(location, "gcloud", "application_default_credentials.json");
137292
+ location = path12.join(location, "gcloud", "application_default_credentials.json");
137233
137293
  if (!fs7.existsSync(location)) {
137234
137294
  location = null;
137235
137295
  }
@@ -137493,7 +137553,7 @@ var require_googleauth = __commonJS((exports) => {
137493
137553
  if (this.jsonContent) {
137494
137554
  return this._cacheClientFromJSON(this.jsonContent, this.clientOptions);
137495
137555
  } else if (this.keyFilename) {
137496
- const filePath = path13.resolve(this.keyFilename);
137556
+ const filePath = path12.resolve(this.keyFilename);
137497
137557
  const stream4 = fs7.createReadStream(filePath);
137498
137558
  return await this.fromStreamAsync(stream4, this.clientOptions);
137499
137559
  } else if (this.apiKey) {
@@ -138481,7 +138541,7 @@ var init_user = __esm(() => {
138481
138541
  deviceId,
138482
138542
  sessionId: getSessionId(),
138483
138543
  email: getEmail(),
138484
- appVersion: "4.2.21-beta1",
138544
+ appVersion: "4.2.21",
138485
138545
  platform: getHostPlatformForAnalytics(),
138486
138546
  organizationUuid,
138487
138547
  accountUuid,
@@ -138768,7 +138828,7 @@ var init_metadata = __esm(() => {
138768
138828
  "sed"
138769
138829
  ]);
138770
138830
  getVersionBase = memoize_default(() => {
138771
- const match = "4.2.21-beta1".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
138831
+ const match = "4.2.21".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
138772
138832
  return match ? match[0] : undefined;
138773
138833
  });
138774
138834
  buildEnvContext = memoize_default(async () => {
@@ -138808,9 +138868,9 @@ var init_metadata = __esm(() => {
138808
138868
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
138809
138869
  isClaudeCodeAction: isEnvTruthy(process.env.CLAUDE_CODE_ACTION),
138810
138870
  isClaudeAiAuth: isClaudeAISubscriber(),
138811
- version: "4.2.21-beta1",
138871
+ version: "4.2.21",
138812
138872
  versionBase: getVersionBase(),
138813
- buildTime: "2026-07-30T10:15:07.375Z",
138873
+ buildTime: "2026-07-31T12:00:35.194Z",
138814
138874
  deploymentEnvironment: env4.detectDeploymentEnvironment(),
138815
138875
  ...isEnvTruthy(process.env.GITHUB_ACTIONS) && {
138816
138876
  githubEventName: process.env.GITHUB_EVENT_NAME,
@@ -139366,7 +139426,7 @@ var init_growthbook = __esm(() => {
139366
139426
 
139367
139427
  // src/memdir/paths.ts
139368
139428
  import { homedir as homedir6 } from "os";
139369
- import { isAbsolute as isAbsolute3, join as join18, normalize as normalize3, sep as sep4 } from "path";
139429
+ import { isAbsolute as isAbsolute4, join as join18, normalize as normalize3, sep as sep3 } from "path";
139370
139430
  function getMemoryBaseDir() {
139371
139431
  const remoteMemoryDir = getCostrictEnv("REMOTE_MEMORY_DIR");
139372
139432
  if (remoteMemoryDir) {
@@ -139388,10 +139448,10 @@ function validateMemoryPath(raw, expandTilde) {
139388
139448
  candidate = join18(homedir6(), rest);
139389
139449
  }
139390
139450
  const normalized = normalize3(candidate).replace(/[/\\]+$/u, "");
139391
- if (!isAbsolute3(normalized) || normalized.length < 3 || /^[A-Za-z]:$/.test(normalized) || normalized.startsWith("\\\\") || normalized.startsWith("//") || normalized.includes("\x00")) {
139451
+ if (!isAbsolute4(normalized) || normalized.length < 3 || /^[A-Za-z]:$/.test(normalized) || normalized.startsWith("\\\\") || normalized.startsWith("//") || normalized.includes("\x00")) {
139392
139452
  return;
139393
139453
  }
139394
- return (normalized + sep4).normalize("NFC");
139454
+ return (normalized + sep3).normalize("NFC");
139395
139455
  }
139396
139456
  function getAutoMemPathOverride() {
139397
139457
  return validateMemoryPath(getCostrictEnv("COWORK_MEMORY_PATH_OVERRIDE"), false);
@@ -139418,7 +139478,7 @@ var init_paths = __esm(() => {
139418
139478
  return override;
139419
139479
  }
139420
139480
  const projectsDir = join18(getMemoryBaseDir(), "projects");
139421
- return (join18(projectsDir, sanitizePath(getAutoMemBase()), AUTO_MEM_DIRNAME) + sep4).normalize("NFC");
139481
+ return (join18(projectsDir, sanitizePath(getAutoMemBase()), AUTO_MEM_DIRNAME) + sep3).normalize("NFC");
139422
139482
  }, () => getProjectRoot());
139423
139483
  });
139424
139484
 
@@ -139633,14 +139693,14 @@ function removeProjectHistory(projects) {
139633
139693
  }
139634
139694
  const cleanedProjects = {};
139635
139695
  let needsCleaning = false;
139636
- for (const [path13, projectConfig] of Object.entries(projects)) {
139696
+ for (const [path12, projectConfig] of Object.entries(projects)) {
139637
139697
  const legacy = projectConfig;
139638
139698
  if (legacy.history !== undefined) {
139639
139699
  needsCleaning = true;
139640
139700
  const { history, ...cleanedConfig } = legacy;
139641
- cleanedProjects[path13] = cleanedConfig;
139701
+ cleanedProjects[path12] = cleanedConfig;
139642
139702
  } else {
139643
- cleanedProjects[path13] = projectConfig;
139703
+ cleanedProjects[path12] = projectConfig;
139644
139704
  }
139645
139705
  }
139646
139706
  return needsCleaning ? cleanedProjects : projects;
@@ -139725,11 +139785,11 @@ function saveConfigWithLock(file2, createDefault, mergeFn, readCurrent) {
139725
139785
  const dir = dirname9(file2);
139726
139786
  const fs7 = getFsImplementation();
139727
139787
  fs7.mkdirSync(dir);
139728
- let release;
139788
+ let release2;
139729
139789
  try {
139730
139790
  const lockFilePath = `${file2}.lock`;
139731
139791
  const startTime2 = Date.now();
139732
- release = lockSync(file2, {
139792
+ release2 = lockSync(file2, {
139733
139793
  lockfilePath: lockFilePath,
139734
139794
  onCompromised: (err) => {
139735
139795
  logForDebugging(`Config lock compromised: ${err}`, { level: "error" });
@@ -139815,8 +139875,8 @@ function saveConfigWithLock(file2, createDefault, mergeFn, readCurrent) {
139815
139875
  }
139816
139876
  return true;
139817
139877
  } finally {
139818
- if (release) {
139819
- release();
139878
+ if (release2) {
139879
+ release2();
139820
139880
  }
139821
139881
  }
139822
139882
  }
@@ -140696,7 +140756,7 @@ init_token();
140696
140756
  import { promises as fs12 } from "fs";
140697
140757
  import { createHash as createHash4 } from "crypto";
140698
140758
  import os4 from "os";
140699
- import path19 from "path";
140759
+ import path18 from "path";
140700
140760
 
140701
140761
  // src/costrict/provider/tokenManager.ts
140702
140762
  init_credentials();
@@ -140785,7 +140845,7 @@ async function recoverFrom401(staleAccessToken) {
140785
140845
  // src/services/rawDump/git.ts
140786
140846
  import { execFile } from "child_process";
140787
140847
  import { realpathSync as realpathSync4 } from "fs";
140788
- import path13 from "path";
140848
+ import path12 from "path";
140789
140849
  import { promisify as promisify5 } from "util";
140790
140850
  var execFileAsync2 = promisify5(execFile);
140791
140851
  var TRUNK_BRANCHES = ["origin/main", "origin/master", "main", "master"];
@@ -140823,7 +140883,7 @@ function computeRepoRelativePath(gitRoot, workDir) {
140823
140883
  return "";
140824
140884
  const root6 = tryRealpath(gitRoot);
140825
140885
  const dir = tryRealpath(workDir);
140826
- const rel = path13.relative(root6, dir);
140886
+ const rel = path12.relative(root6, dir);
140827
140887
  if (rel === "")
140828
140888
  return ".";
140829
140889
  if (rel.startsWith(".."))
@@ -140834,7 +140894,7 @@ function tryRealpath(p2) {
140834
140894
  try {
140835
140895
  return realpathSync4(p2);
140836
140896
  } catch {
140837
- return path13.resolve(p2);
140897
+ return path12.resolve(p2);
140838
140898
  }
140839
140899
  }
140840
140900
  async function getBranchAncestry(cwd2) {
@@ -140945,9 +141005,9 @@ function toCommitComment(subject) {
140945
141005
 
140946
141006
  // src/services/rawDump/activeSessions.ts
140947
141007
  import { readFileSync as readFileSync11, writeFileSync as writeFileSync4, mkdirSync as mkdirSync3, renameSync as renameSync2, realpathSync as realpathSync5 } from "fs";
140948
- import path14 from "path";
141008
+ import path13 from "path";
140949
141009
  var log2 = createLogger("activeSessions");
140950
- var ACTIVE_SESSIONS_FILE = path14.join(getRawDumpDir(), "csc-active-sessions.json");
141010
+ var ACTIVE_SESSIONS_FILE = path13.join(getRawDumpDir(), "csc-active-sessions.json");
140951
141011
  var DEFAULT_WINDOW_MS = 30 * 60 * 1000;
140952
141012
  var FUTURE_TOLERANCE_MS = 5 * 60 * 1000;
140953
141013
  var MAX_ACTIVE_SESSION_IDS = 64;
@@ -140967,9 +141027,9 @@ function normalizeCwd2(p2) {
140967
141027
  try {
140968
141028
  resolved = realpathSync5(p2);
140969
141029
  } catch {
140970
- resolved = path14.resolve(p2);
141030
+ resolved = path13.resolve(p2);
140971
141031
  }
140972
- if (resolved.length > 1 && resolved.endsWith(path14.sep)) {
141032
+ if (resolved.length > 1 && resolved.endsWith(path13.sep)) {
140973
141033
  resolved = resolved.slice(0, -1);
140974
141034
  }
140975
141035
  return resolved;
@@ -141005,7 +141065,7 @@ function getActiveSessionIds(cwd2, atMs) {
141005
141065
 
141006
141066
  // src/services/rawDump/localStorage.ts
141007
141067
  import { promises as fs7 } from "fs";
141008
- import path15 from "path";
141068
+ import path14 from "path";
141009
141069
  var DEFAULT_LOCAL_DIR = getRawDumpDir();
141010
141070
  var RAW_DUMP_MODE = {
141011
141071
  DISABLED: 0,
@@ -141054,12 +141114,12 @@ async function writeLocalDump(type, body) {
141054
141114
  endpoint = "/raw-store/task-summary";
141055
141115
  } else if (type == "conversation") {
141056
141116
  ymd = getDateFromTimestamp(getTimestampField("conversation", body));
141057
- subdir = path15.join(ymd, body.task_id);
141117
+ subdir = path14.join(ymd, body.task_id);
141058
141118
  fname = body.request_id;
141059
141119
  endpoint = "/raw-store/task-conversation";
141060
141120
  } else if (type == "commit") {
141061
141121
  ymd = getDateFromTimestamp(getTimestampField("commit", body));
141062
- subdir = path15.join(normalizeProjectPath(body.repo_addr), normalizeProjectPath(body.repo_branch), ymd);
141122
+ subdir = path14.join(normalizeProjectPath(body.repo_addr), normalizeProjectPath(body.repo_branch), ymd);
141063
141123
  fname = body.commit_id;
141064
141124
  endpoint = "/raw-store/commit";
141065
141125
  } else if (type == "statistics") {
@@ -141071,7 +141131,7 @@ async function writeLocalDump(type, body) {
141071
141131
  fname = `${h6}-${m3}-${s}`;
141072
141132
  endpoint = "/raw-store/statistics";
141073
141133
  } else if (type == "raw") {
141074
- subdir = path15.join(normalizeProjectPath(body.project), body.session_id);
141134
+ subdir = path14.join(normalizeProjectPath(body.project), body.session_id);
141075
141135
  fname = String(body.start_cursor);
141076
141136
  endpoint = "/raw-store/raw-log";
141077
141137
  } else {
@@ -141079,9 +141139,9 @@ async function writeLocalDump(type, body) {
141079
141139
  fname = "unknown";
141080
141140
  endpoint = "unknown";
141081
141141
  }
141082
- const dumpDir = path15.join(dir, type, subdir);
141142
+ const dumpDir = path14.join(dir, type, subdir);
141083
141143
  const filename = `${fname}.json`;
141084
- const filePath = path15.join(dumpDir, filename);
141144
+ const filePath = path14.join(dumpDir, filename);
141085
141145
  const payload = {
141086
141146
  _dumpMeta: {
141087
141147
  type,
@@ -141097,18 +141157,18 @@ async function writeLocalDump(type, body) {
141097
141157
 
141098
141158
  // src/services/rawDump/queue.ts
141099
141159
  import { promises as fs9 } from "fs";
141100
- import path17 from "path";
141160
+ import path16 from "path";
141101
141161
 
141102
141162
  // src/services/rawDump/lock.ts
141103
141163
  import { randomUUID as randomUUID4 } from "crypto";
141104
141164
  import { promises as fs8 } from "fs";
141105
- import path16 from "path";
141165
+ import path15 from "path";
141106
141166
  var LOCK_INFO_FILE = "lock.json";
141107
141167
  var PUBLICATION_GRACE_MS = 5000;
141108
141168
  async function isHolderAlive(lockDir) {
141109
141169
  let text;
141110
141170
  try {
141111
- text = await fs8.readFile(path16.join(lockDir, LOCK_INFO_FILE), "utf-8");
141171
+ text = await fs8.readFile(path15.join(lockDir, LOCK_INFO_FILE), "utf-8");
141112
141172
  } catch {
141113
141173
  try {
141114
141174
  const st = await fs8.stat(lockDir);
@@ -141192,13 +141252,13 @@ async function acquireLock(lockDir, info) {
141192
141252
  return null;
141193
141253
  }
141194
141254
  try {
141195
- await fs8.writeFile(path16.join(lockDir, LOCK_INFO_FILE), payload, "utf-8");
141255
+ await fs8.writeFile(path15.join(lockDir, LOCK_INFO_FILE), payload, "utf-8");
141196
141256
  } catch {
141197
141257
  await releaseLock(lockDir, token);
141198
141258
  return null;
141199
141259
  }
141200
141260
  try {
141201
- const current = JSON.parse(await fs8.readFile(path16.join(lockDir, LOCK_INFO_FILE), "utf-8"));
141261
+ const current = JSON.parse(await fs8.readFile(path15.join(lockDir, LOCK_INFO_FILE), "utf-8"));
141202
141262
  if (current.token === token && current.pid === info.pid)
141203
141263
  return token;
141204
141264
  } catch {}
@@ -141207,7 +141267,7 @@ async function acquireLock(lockDir, info) {
141207
141267
  }
141208
141268
  async function releaseLock(lockDir, token) {
141209
141269
  try {
141210
- const text = await fs8.readFile(path16.join(lockDir, LOCK_INFO_FILE), "utf-8").catch(() => null);
141270
+ const text = await fs8.readFile(path15.join(lockDir, LOCK_INFO_FILE), "utf-8").catch(() => null);
141211
141271
  if (text !== null) {
141212
141272
  try {
141213
141273
  const info = JSON.parse(text);
@@ -141225,10 +141285,10 @@ async function releaseLock(lockDir, token) {
141225
141285
 
141226
141286
  // src/services/rawDump/queue.ts
141227
141287
  function getQueueFile() {
141228
- return path17.join(getRawDumpDir(), "csc-work-queue.jsonl");
141288
+ return path16.join(getRawDumpDir(), "csc-work-queue.jsonl");
141229
141289
  }
141230
141290
  function getQueueLockDir() {
141231
- return path17.join(getRawDumpDir(), "csc-work-queue.lock.d");
141291
+ return path16.join(getRawDumpDir(), "csc-work-queue.lock.d");
141232
141292
  }
141233
141293
  var MAX_ATTEMPTS = 4;
141234
141294
  var queue = [];
@@ -141281,8 +141341,8 @@ async function releaseQueueLock() {
141281
141341
  // src/services/rawDump/history.ts
141282
141342
  init_envUtils();
141283
141343
  import { promises as fs10 } from "fs";
141284
- import path18 from "path";
141285
- var HISTORY_FILE = path18.join(getCostrictConfigHomeDir(), "history.jsonl");
141344
+ import path17 from "path";
141345
+ var HISTORY_FILE = path17.join(getCostrictConfigHomeDir(), "history.jsonl");
141286
141346
  var cache7 = null;
141287
141347
  async function loadHistory() {
141288
141348
  const items = [];
@@ -142380,7 +142440,7 @@ async function authWithFallback() {
142380
142440
  const version4 = getClientVersion();
142381
142441
  let deviceId = process.env.CSC_DEVICE_ID;
142382
142442
  if (!deviceId) {
142383
- const deviceIdFile = path19.join(getLocalDumpDir(), "device-id");
142443
+ const deviceIdFile = path18.join(getLocalDumpDir(), "device-id");
142384
142444
  try {
142385
142445
  deviceId = (await fs12.readFile(deviceIdFile, "utf-8")).trim();
142386
142446
  } catch {}
@@ -142915,9 +142975,9 @@ if (scriptPath.endsWith("worker.ts") || scriptPath.endsWith("worker.js")) {
142915
142975
  }
142916
142976
 
142917
142977
  // src/services/rawDump/timerWorker.ts
142918
- import path20 from "path";
142978
+ import path19 from "path";
142919
142979
  var log6 = createLogger("timer");
142920
- var TIMER_LOCK_DIR = path20.join(getRawDumpDir(), "csc-timer.lock.d");
142980
+ var TIMER_LOCK_DIR = path19.join(getRawDumpDir(), "csc-timer.lock.d");
142921
142981
  var isRunning = false;
142922
142982
  var timerLockToken = null;
142923
142983
  async function acquireTimerLock() {
@@ -142990,10 +143050,10 @@ if (scriptPath2.endsWith("timerWorker.ts") || scriptPath2.endsWith("timerWorker.
142990
143050
 
142991
143051
  // src/services/rawDump/parentHeartbeat.ts
142992
143052
  import { promises as fs13 } from "fs";
142993
- import path21 from "path";
143053
+ import path20 from "path";
142994
143054
  var HEARTBEAT_STALE_MS = 15000;
142995
143055
  function getParentHeartbeatPath(pid) {
142996
- return path21.join(getRawDumpDir(), `csc-parent-heartbeat-${pid}.json`);
143056
+ return path20.join(getRawDumpDir(), `csc-parent-heartbeat-${pid}.json`);
142997
143057
  }
142998
143058
  async function readParentHeartbeat(pid) {
142999
143059
  try {
@@ -143148,5 +143208,5 @@ export {
143148
143208
  isParentHeartbeatValid
143149
143209
  };
143150
143210
 
143151
- //# debugId=64A7E767297A920064756E2164756E21
143211
+ //# debugId=8FD1A5954CDBB6BF64756E2164756E21
143152
143212