refactor(frontend): 四生成 hook 结束后额外返回产物(AC-3 留痕前置)

useRefine.refine/recommunicate→RefineVersion|null、useContinue.generate→string|null、
useChapterRewrite.send→RewriteVersion|null、useGenerator.generate→GeneratorArtifact|null。
向后兼容(既有调用忽略返回值不受影响);各 hook 成功用例补返回值断言。
面板据此 if(artifact) 才 append,空候选/错误路径不留痕。
This commit is contained in:
Yaojia Wang
2026-07-09 17:15:49 +02:00
parent ddf7fa061a
commit 59f2f60a7e
8 changed files with 66 additions and 25 deletions

View File

@@ -51,8 +51,9 @@ describe("useChapterRewrite", () => {
);
const { result } = renderHook(() => useChapterRewrite());
let returned: unknown;
await act(async () => {
await result.current.send("p1", 3, "节奏太慢", "旧草稿");
returned = await result.current.send("p1", 3, "节奏太慢", "旧草稿");
});
// POST body 带 feedback + prior_draftsnake_case
@@ -67,6 +68,8 @@ describe("useChapterRewrite", () => {
{ feedback: "节奏太慢", text: "新版正文" },
]);
expect(result.current.latest?.text).toBe("新版正文");
// 追加断言send 返回本版(供 ChapterRewritePanel 结束后留痕)。
expect(returned).toEqual({ feedback: "节奏太慢", text: "新版正文" });
});
it("多轮迭代第二轮再压一版latest 为最新版", async () => {