- Bug修复: formatChangeStatus 使用实际配置而非 defaultConfig - 统一 assembler 中所有错误抛出为 CommandError - 提取 writeIfChanged 到 adapters/utils.ts,消除 claude-code/opencode 重复代码 - 导出 SUPPORTED_TOOLS,cli.ts update 命令复用同一工具注册表 - 提取 mapError/mapCacError 函数,支持单元测试 - 补充 claude-code 适配器测试(10 个用例) - 补充 validateChangeName、formatChangeStatus、suggestNextStep、mapError 单元测试(18 个用例) - 共新增 3 个测试文件,测试从 96 增至 133,全部通过
14 lines
359 B
TypeScript
14 lines
359 B
TypeScript
import { readFile, writeFile } from "node:fs/promises";
|
|
|
|
export async function writeIfChanged(filePath: string, newContent: string): Promise<void> {
|
|
try {
|
|
const existing = await readFile(filePath, "utf-8");
|
|
if (existing === newContent) {
|
|
return;
|
|
}
|
|
} catch {
|
|
// 文件不存在,创建
|
|
}
|
|
await writeFile(filePath, newContent);
|
|
}
|