Files
openclaw/scripts/lib/sqlite-reliability-worker-paths.ts
Vincent Koc 687923189e fix(sqlite): make reliability proofs cross-platform safe (#113652)
* test(sqlite): canonicalize reliability crash barriers

* fix(sqlite): normalize reliability database paths

* test(sqlite): allow Windows reliability proof to finish
2026-07-25 21:50:27 +08:00

19 lines
682 B
TypeScript

import fs from "node:fs";
import path from "node:path";
export function canonicalPathWithExistingParent(filePath: string): string {
const resolvedPath = path.resolve(filePath);
return path.join(fs.realpathSync.native(path.dirname(resolvedPath)), path.basename(resolvedPath));
}
export function isPendingPathInRepository(filePath: unknown, repositoryPath: string): boolean {
const resolvedPath = path.resolve(String(filePath));
if (path.basename(resolvedPath) !== ".pending") {
return false;
}
const candidateRepositoryPath = canonicalPathWithExistingParent(
path.dirname(path.dirname(resolvedPath)),
);
return candidateRepositoryPath === repositoryPath;
}