feat(FN-4938): complete Step 2 — add helper and wire cleanup
Fusion-Task-Id: FN-4938 Fusion-Task-Lineage: 8b53a5da-1321-4796-9775-ff043efdcef3
This commit is contained in:
committed by
gsxdsm
parent
365639afa6
commit
d702231adc
@@ -33,6 +33,7 @@ import {
|
||||
} from "./worktrunk-failure-handler.js";
|
||||
import type { RunAuditor } from "./run-audit.js";
|
||||
import { writeSecretsEnvFile } from "./secrets-env-writer.js";
|
||||
import { removeDesktopBuildArtifacts } from "./worktree-desktop-artifacts.js";
|
||||
|
||||
const execAsync = promisify(exec);
|
||||
|
||||
@@ -252,6 +253,10 @@ export async function acquireTaskWorktree(opts: AcquireTaskWorktreeOptions): Pro
|
||||
|
||||
if (task.worktree && isResume) {
|
||||
logger?.log(`Reusing existing worktree: ${worktreePath}`);
|
||||
const cleanup = await removeDesktopBuildArtifacts(worktreePath, logger);
|
||||
if (cleanup.removed.length > 0) {
|
||||
await store.logEntry(task.id, `Removed desktop build artifacts from worktree: ${cleanup.removed.join(", ")}`, undefined, runContext);
|
||||
}
|
||||
const hydrated = await hydrate(worktreePath);
|
||||
// FN-4912: resume path reuses the prior on-disk .env (and its fingerprint sidecar). Rewrite is owned by the next fresh acquisition.
|
||||
return { worktreePath, branch: task.branch ?? branchName, source: "existing", hydrated, isResume: true };
|
||||
@@ -331,6 +336,10 @@ export async function acquireTaskWorktree(opts: AcquireTaskWorktreeOptions): Pro
|
||||
} else {
|
||||
await store.logEntry(task.id, `Acquired worktree from pool: ${worktreePath}`, undefined, runContext);
|
||||
}
|
||||
const cleanup = await removeDesktopBuildArtifacts(worktreePath, logger);
|
||||
if (cleanup.removed.length > 0) {
|
||||
await store.logEntry(task.id, `Removed desktop build artifacts from worktree: ${cleanup.removed.join(", ")}`, undefined, runContext);
|
||||
}
|
||||
await maybeWarnForeignTaskStartPoint({
|
||||
baseBranch,
|
||||
rootDir,
|
||||
@@ -438,6 +447,11 @@ export async function acquireTaskWorktree(opts: AcquireTaskWorktreeOptions): Pro
|
||||
await store.logEntry(task.id, `Worktree created at ${worktreePath}`, undefined, runContext);
|
||||
}
|
||||
|
||||
const cleanup = await removeDesktopBuildArtifacts(worktreePath, logger);
|
||||
if (cleanup.removed.length > 0) {
|
||||
await store.logEntry(task.id, `Removed desktop build artifacts from worktree: ${cleanup.removed.join(", ")}`, undefined, runContext);
|
||||
}
|
||||
|
||||
if (runInitCommand && settings.worktreeInitCommand && runConfiguredCommand) {
|
||||
const initStartedAt = Date.now();
|
||||
let initResult: InitCommandResult | undefined;
|
||||
|
||||
Reference in New Issue
Block a user