Files
fusion/packages/droid-cli/src/__tests__/execsync-guard.test.ts
gsxdsm 84830595f2 FN-6485: remove synchronous CLI probes
Remove blocking execSync validation paths from CLI process managers while preserving async probe coverage.

- Drop synchronous Claude and Droid CLI presence/auth validators from process managers.
- Keep async spawn-based validation as the sole probing path for session startup.
- Replace sync validator tests with execSync guard coverage for both CLI integrations.

Files changed:
 .../droid-cli/src/__tests__/execsync-guard.test.ts | 17 ++++++++
 .../src/__tests__/process-manager.test.ts          | 46 +---------------------
 .../src/__tests__/execsync-guard.test.ts           | 14 +++++++
 .../src/__tests__/process-manager.test.ts          | 46 +---------------------
 .../pi-claude-cli/src/__tests__/provider.test.ts   |  1 -
 packages/pi-claude-cli/src/process-manager.ts      | 44 +++------------------
 .../src/process-manager.ts                         | 43 +++-----------------
 7 files changed, 45 insertions(+), 166 deletions(-)

Fusion-Task-Id: FN-6485

Fusion-Task-Lineage: e3f0f656-3445-4672-b597-a811924137e9
2026-06-16 15:08:24 -07:00

18 lines
545 B
TypeScript

import { existsSync, readFileSync } from "node:fs";
import path from "node:path";
import { describe, expect, it } from "vitest";
describe("process-manager execSync guard", () => {
it("keeps Droid CLI probing non-blocking", () => {
const sourcePath = path.resolve(
import.meta.dirname,
"../../../../plugins/fusion-plugin-droid-runtime/src/process-manager.ts",
);
expect(existsSync(sourcePath)).toBe(true);
const src = readFileSync(sourcePath, "utf-8");
expect(/\bexecSync\b/.test(src)).toBe(false);
});
});