feat(FN-3577): add native shell guide and bridge contract documentation

Adds a native shell integration guide (FN-3577) with fusionShell bridge contract documentation, wired into the docs navigation, plus a regression test; also hardens the dependency graph's task filtering (FN-3085) to include in-review tasks and handle orphan edges, with corresponding test coverage ac

Fusion-Task-Id: FN-3577
This commit is contained in:
Fusion
2026-05-07 03:59:43 -07:00
committed by gsxdsm
parent 3f09037cfe
commit f3c99eb4fa
7 changed files with 201 additions and 12 deletions

View File

@@ -528,14 +528,18 @@ const { totalWorkers, concurrency } = defaultTestWorkerBudget(process.env);
const isolatedHomesToCleanup = new Set();
function cleanupIsolatedHomePath(homePath) {
try {
rmSync(homePath, { recursive: true, force: true });
} catch {
// Best-effort cleanup only.
}
isolatedHomesToCleanup.delete(homePath);
}
function cleanupIsolatedHomes() {
for (const homePath of isolatedHomesToCleanup) {
try {
rmSync(homePath, { recursive: true, force: true });
} catch {
// Best-effort cleanup only.
}
isolatedHomesToCleanup.delete(homePath);
cleanupIsolatedHomePath(homePath);
}
}
@@ -552,6 +556,7 @@ process.on("SIGTERM", () => {
export function createIsolatedHomeEnv(env = process.env) {
const rawIsolatedHome = mkdtempSync(path.join(tmpdir(), "fusion-test-home-root-"));
const isolatedHome = realpathSync(rawIsolatedHome);
isolatedHomesToCleanup.add(rawIsolatedHome);
isolatedHomesToCleanup.add(isolatedHome);
const nextEnv = {
@@ -613,8 +618,7 @@ export function main(argv = process.argv.slice(2)) {
const { env: isolatedHomeEnv, isolatedHome } = createIsolatedHomeEnv(fullSuiteEnv);
const cleanupIsolatedHome = () => {
rmSync(isolatedHome, { recursive: true, force: true });
isolatedHomesToCleanup.delete(isolatedHome);
cleanupIsolatedHomePath(isolatedHome);
};
try {