(dataDir = getPlannotatorDataDir())
| 163 | } |
| 164 | |
| 165 | export function getSemanticDiffScratchCwd(dataDir = getPlannotatorDataDir()): string { |
| 166 | const primary = join(dataDir, "semantic-diff", "patch-only"); |
| 167 | try { |
| 168 | mkdirSync(primary, { recursive: true }); |
| 169 | return primary; |
| 170 | } catch { |
| 171 | const fallback = join(tmpdir(), "plannotator-semantic-diff"); |
| 172 | try { |
| 173 | mkdirSync(fallback, { recursive: true }); |
| 174 | return fallback; |
| 175 | } catch { |
| 176 | return tmpdir(); |
| 177 | } |
| 178 | } |
| 179 | } |
| 180 | |
| 181 | function isPathLike(value: string): boolean { |
| 182 | return value.includes("/") || value.includes("\\") || value.startsWith("."); |
no test coverage detected