feat: 迁移 code-drive schema 为内置默认流程

This commit is contained in:
2026-06-11 18:34:23 +08:00
parent bc993d4ead
commit cfda7f1b48
4 changed files with 753 additions and 50 deletions

View File

@@ -42,26 +42,26 @@ describe("assembleDiscussPrompt", () => {
describe("assemblePlanPrompt", () => {
it("包含指定文档名称和提示词", async () => {
const prompt = await assemblePlanPrompt(defaultConfig, TMP_DIR, "user-auth", "design");
const prompt = await assemblePlanPrompt(defaultConfig, TMP_DIR, "user-auth", "requirements");
expect(prompt).toContain("user-auth");
expect(prompt).toContain("design");
expect(prompt).toContain("requirements");
expect(prompt).not.toContain("task");
});
it("已有文档时引导 AI 读取而非内嵌内容", async () => {
const changeDir = join(TMP_DIR, ".rune", "changes", "user-auth");
await mkdir(changeDir, { recursive: true });
await writeFile(join(changeDir, "design.md"), "# 已有设计");
const prompt = await assemblePlanPrompt(defaultConfig, TMP_DIR, "user-auth", "design");
await writeFile(join(changeDir, "requirements.md"), "# 已有需求");
const prompt = await assemblePlanPrompt(defaultConfig, TMP_DIR, "user-auth", "requirements");
expect(prompt).toContain("已有内容");
expect(prompt).toContain("design.md");
expect(prompt).not.toContain("# 已有设计");
expect(prompt).toContain("requirements.md");
expect(prompt).not.toContain("# 已有需求");
});
it("包含格式模板(纯静态文本)", async () => {
const prompt = await assemblePlanPrompt(defaultConfig, TMP_DIR, "user-auth", "design");
const prompt = await assemblePlanPrompt(defaultConfig, TMP_DIR, "user-auth", "requirements");
expect(prompt).toContain("格式模板");
expect(prompt).toContain("# 设计文档");
expect(prompt).toContain("背景与目标");
expect(prompt).not.toContain("{{change-name}}");
});
@@ -82,7 +82,7 @@ describe("assemblePlanPrompt", () => {
});
it("无依赖时不包含依赖说明", async () => {
const prompt = await assemblePlanPrompt(defaultConfig, TMP_DIR, "user-auth", "design");
const prompt = await assemblePlanPrompt(defaultConfig, TMP_DIR, "user-auth", "requirements");
expect(prompt).not.toContain("依赖说明");
});