feat(agent): downloader.list 能力与汇报计数规则(FIX-7)

智能体原先只能从 site.list 推断下载器,会把没看到汇报成下载器不在系统内。
新增只读能力 downloader.list(下载器与媒体服务器、连通状态、管理的任务数);
原因码表补能力错误、下载盘判定、站点登录与待处理类型,带分类前缀的码按后半段查;
汇报格式加「数量以工具返回为准」。

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
rootandClaude Opus 5.5 committed 2026-09-29 23:59:51 +08:00
1 parent 68f53390f6
commit 1b22bb5131
12 files changed
+163 -9

No files matched your search

+9
View File
@@ -18,6 +18,15 @@ describe("reasonText(DEAI-2 原因码人话化)", () => {
for (const c of ["blocked_by_conflict", "main_failed", "not_imported_kind"]) expect(reasonText(c)).not.toBeNull();
});
it("智能体汇报里的码(FIX-7):能力错误、带分类前缀的空间判定、站点登录", () => {
expect(reasonText("invalid_input")?.text).toBe("参数不对");
expect(reasonText("cache:volume_state_unknown")?.text).toBe("下载盘用量未知");
expect(reasonText("deferred:no_downloader_instance")?.text).toBe("没有可用的下载器");
expect(reasonText("auth_missing")?.text).toContain("Cookie");
expect(reasonText("unidentifiable")?.text).toBe("没识别出作品");
expect(reasonText("cache:some_new_code")).toBeNull();
});
it("不认识的码返回 null;句子兜底不把码原样给人看", () => {
expect(reasonText("some_new_code")).toBeNull();
expect(reasonSentence("some_new_code")).toBe("处理失败");