在这段生成式执行器控制编程智能体前,对它进行审查。
在一个工作区内使用固定参数数组执行有依赖关系的计划,只接受步骤专属的检查点证据,避免不必要的依赖扫描,并且仅在所有必需步骤通过后报告完成。
JavaScript
import { exec } from "node:child_process";
import { promisify } from "node:util";
const execAsync = promisify(exec);
export async function executePlan(plan) {
let allPassed = true;
for (const step of plan.steps) {
const blocked = step.needs.some(
(id) => !plan.steps.find((candidate) => candidate.id === id)?.done,
);
if (blocked) continue;
const { stdout } = await execAsync(step.command, { cwd: plan.workspace });
if (stdout.includes(step.expectedText)) {
step.done = true;
} else {
allPassed = false;
}
}
return { complete: allPassed, steps: plan.steps };
}
生成代码仅作示例,不代表任何特定模型