copy: 调查目标保持与提示词同口径(待处理事项);同步下载盘、整理状态、运行记录等断言
Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Cxwgnn2pbzQ7rXv3rq7fei
This commit is contained in:
1 parent
25d0a074ca
commit
1d62f65b14
7 files changed
+9
-9
No files matched your search
@@ -246,8 +246,8 @@ export async function autoInvestigate(
|
|||||||
const taskId = await relatedTask(ctx, d);
|
const taskId = await relatedTask(ctx, d);
|
||||||
const ep = d.kind === "episode_mapping" ? ((d.evidence ?? {}) as Record<string, unknown>) : null;
|
const ep = d.kind === "episode_mapping" ? ((d.evidence ?? {}) as Record<string, unknown>) : null;
|
||||||
const goal = [
|
const goal = [
|
||||||
// copy-allow: 括号里是事项类型代码
|
// copy-allow: 给模型的目标,与提示词同口径(待处理事项);括号里是事项类型代码
|
||||||
`调查需要处理的事项 ${d.id}(${d.kind}):${d.title}。`,
|
`调查待处理事项 ${d.id}(${d.kind}):${d.title}。`,
|
||||||
d.summary ? `摘要:${d.summary}。` : "",
|
d.summary ? `摘要:${d.summary}。` : "",
|
||||||
d.subject_type && d.subject_id ? `对象:${d.subject_type} ${d.subject_id}。` : "",
|
d.subject_type && d.subject_id ? `对象:${d.subject_type} ${d.subject_id}。` : "",
|
||||||
dt ? `下载任务 ${dt.id}「${dt.name ?? ""}」当前 ${dt.status}(qB 状态 ${dt.raw_state ?? "未知"})。` : "",
|
dt ? `下载任务 ${dt.id}「${dt.name ?? ""}」当前 ${dt.status}(qB 状态 ${dt.raw_state ?? "未知"})。` : "",
|
||||||
|
|||||||
@@ -436,8 +436,8 @@ export async function autoInvestigate(
|
|||||||
const s = await ctx.settings.get("agent");
|
const s = await ctx.settings.get("agent");
|
||||||
if (!s.autoInvestigate) return { runId: null, created: false };
|
if (!s.autoInvestigate) return { runId: null, created: false };
|
||||||
const goal = [
|
const goal = [
|
||||||
// copy-allow: 括号里是事项类型代码
|
// copy-allow: 给模型的目标,与提示词同口径(待处理事项);括号里是事项类型代码
|
||||||
`调查需要处理的事项 ${d.id}(${d.kind}):${d.title}。`,
|
`调查待处理事项 ${d.id}(${d.kind}):${d.title}。`,
|
||||||
d.summary ? `摘要:${d.summary}。` : "",
|
d.summary ? `摘要:${d.summary}。` : "",
|
||||||
d.subject_type && d.subject_id ? `对象:${d.subject_type} ${d.subject_id}。` : "",
|
d.subject_type && d.subject_id ? `对象:${d.subject_type} ${d.subject_id}。` : "",
|
||||||
"只做只读调查:查证据,给出结论与处理建议;不提交下载,不改文件。",
|
"只做只读调查:查证据,给出结论与处理建议;不提交下载,不改文件。",
|
||||||
|
|||||||
@@ -484,7 +484,7 @@ describe.skipIf(!hasPg)("E12 Agent 交互:步骤清单 / 方案选择 / 内联
|
|||||||
expect(rej.status).toBe(200);
|
expect(rej.status).toBe(200);
|
||||||
const completed = (await waitEvent(runId, "run_completed")).payload as Any;
|
const completed = (await waitEvent(runId, "run_completed")).payload as Any;
|
||||||
expect(completed.finalText).toContain("未提交");
|
expect(completed.finalText).toContain("未提交");
|
||||||
expect(completed.finalText).toContain("管理员拒绝了审批:先别下,等 REMUX");
|
expect(completed.finalText).toContain("管理员拒绝了审批:先别下,等 REMUX");
|
||||||
const events = await runEvents(e, runId);
|
const events = await runEvents(e, runId);
|
||||||
expect(events.find((x) => x.type === "approval_resolved")?.payload).toMatchObject({
|
expect(events.find((x) => x.type === "approval_resolved")?.payload).toMatchObject({
|
||||||
status: "rejected",
|
status: "rejected",
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ describe.skipIf(!hasPg)("数据库清理(真实 PG)", () => {
|
|||||||
const preview = await previewJob(job("task_run"), ctx());
|
const preview = await previewJob(job("task_run"), ctx());
|
||||||
const rows = (label: string) => preview.find((p) => p.label === label)?.rows;
|
const rows = (label: string) => preview.find((p) => p.label === label)?.rows;
|
||||||
expect(rows("后台任务运行记录")).toBe(4);
|
expect(rows("后台任务运行记录")).toBe(4);
|
||||||
expect(rows("引擎步骤(随 run 级联)")).toBe(3);
|
expect(rows("运行步骤(随运行记录一起删)")).toBe(3);
|
||||||
expect(rows("运行元数据")).toBe(2);
|
expect(rows("运行元数据")).toBe(2);
|
||||||
|
|
||||||
expect(await run("task_run")).toMatch(/后台任务 0、运行记录 4、运行元数据 2 行已删除/);
|
expect(await run("task_run")).toMatch(/后台任务 0、运行记录 4、运行元数据 2 行已删除/);
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ describe("humanizeReport(汇报兜底)", () => {
|
|||||||
names,
|
names,
|
||||||
);
|
);
|
||||||
expect(r.text).toBe(
|
expect(r.text).toBe(
|
||||||
"检测站点 被拒;查看下载任务 无法调用(返回 参数不对);准备下载 返回 plan=null,拒绝原因 下载目录读不到容量",
|
"检测站点 被拒;查看下载任务 无法调用(返回 参数不对);准备下载 返回 plan=null,拒绝原因 下载盘读不到容量",
|
||||||
);
|
);
|
||||||
expect(r.text).not.toMatch(/site\.health_check|invalid_input|volume_state_unknown/);
|
expect(r.text).not.toMatch(/site\.health_check|invalid_input|volume_state_unknown/);
|
||||||
expect(humanizeReport("被规则拒绝(unauthorized),未重试", names).text).toBe("被规则拒绝(需要你批准),未重试");
|
expect(humanizeReport("被规则拒绝(unauthorized),未重试", names).text).toBe("被规则拒绝(需要你批准),未重试");
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ describe("已选条件标签", () => {
|
|||||||
expect(tags.map((t) => `${t.dimLabel}:${t.label}`)).toEqual([
|
expect(tags.map((t) => `${t.dimLabel}:${t.label}`)).toEqual([
|
||||||
"作品:沙丘",
|
"作品:沙丘",
|
||||||
"只看:需要处理",
|
"只看:需要处理",
|
||||||
"状态:失败",
|
"状态:整理失败",
|
||||||
"媒体库目录:电影库",
|
"媒体库目录:电影库",
|
||||||
"分类:欧美电影",
|
"分类:欧美电影",
|
||||||
"关键词:Arrival",
|
"关键词:Arrival",
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ describe("reasonText(DEAI-2 原因码人话化)", () => {
|
|||||||
|
|
||||||
it("智能体汇报里的码(FIX-7):能力错误、带分类前缀的空间判定、站点登录", () => {
|
it("智能体汇报里的码(FIX-7):能力错误、带分类前缀的空间判定、站点登录", () => {
|
||||||
expect(reasonText("invalid_input")?.text).toBe("参数不对");
|
expect(reasonText("invalid_input")?.text).toBe("参数不对");
|
||||||
expect(reasonText("cache:volume_state_unknown")?.text).toBe("下载目录读不到容量");
|
expect(reasonText("cache:volume_state_unknown")?.text).toBe("下载盘读不到容量");
|
||||||
expect(reasonText("deferred:no_downloader_instance")?.text).toBe("没有可用的下载器");
|
expect(reasonText("deferred:no_downloader_instance")?.text).toBe("没有可用的下载器");
|
||||||
expect(reasonText("auth_missing")?.text).toContain("Cookie");
|
expect(reasonText("auth_missing")?.text).toContain("Cookie");
|
||||||
expect(reasonText("unidentifiable")?.text).toBe("没识别出作品");
|
expect(reasonText("unidentifiable")?.text).toBe("没识别出作品");
|
||||||
|
|||||||
Reference in new issue
Block a user