refactor(copy): 术语统一——收录版本、模型服务、智能体等(DEAI-2)

- 版本目标 → 收录版本(前后端用户可见字符串、能力描述、给模型的提示)
- Agent 上游 / 上游 → 模型服务;界面上的 Agent / Agent 会话 → 智能体 / 智能体会话
- 身份歧义 / 识别有歧义 / 无法确定作品 → 没识别出作品;待识别(池) → 未识别
- 建档 → 加入媒体库;资产 → 文件;库根 → 媒体库目录;纳管 → 本工具 / 外部任务;
  哨兵 → 标记文件 / 检查目录;站点快照 → 抓取;Feed / RSS 订阅 / 来源健康 → RSS
- 代码标识符、API 字段名、迁移文件不改;glossary.md 同步;smoke 选择器跟随

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
rootandClaude Opus 5.5 committed 2026-09-29 20:35:43 +08:00
1 parent d282212a6b
commit 4480fc346d
212 files changed
+741 -715

No files matched your search

+1 -1
View File
@@ -15,7 +15,7 @@ class MemStore {
}
// 验收 S7:生产构建里 ?mock=1 不得把演示数据当真实运行展示
describe("Agent 演示开关", () => {
describe("智能体演示开关", () => {
it("只在开发构建或后端 provider=fake 时允许", () => {
expect(agentMockAllowed({ dev: true })).toBe(true);
expect(agentMockAllowed({ dev: false, provider: "fake" })).toBe(true);
+1 -1
View File
@@ -157,7 +157,7 @@ export const PAUSE_REASON_LABEL = {
user: "用户暂停",
threshold: "阈值暂停",
policy: "策略暂停",
agent: "Agent 暂停",
agent: "智能体暂停",
} as const;
export const PLAN_STATUS_LABEL: Record<PlanStatus, string> = {
+1 -1
View File
@@ -106,7 +106,7 @@ export function useFetchFeedNow() {
export function feedGapHint(f: FeedSource, now = Date.now()): string | null {
if (f.possibleGap) {
const at = new Date(f.possibleGap.detectedAt).toLocaleString("zh-CN", { hour12: false });
return `疑似缺口(${at} 检测,${f.possibleGap.backfillQueued ? "已排补漏" : "Feed 未关联站点,无法自动补漏"})`;
return `疑似缺口(${at} 检测,${f.possibleGap.backfillQueued ? "已排补漏" : "RSS 未关联站点,无法自动补漏"})`;
}
if (!f.enabled || !f.lastSuccessAt) return null;
const gapMs = now - new Date(f.lastSuccessAt).getTime();
+1 -1
View File
@@ -64,7 +64,7 @@ export function inventoryFlags(
});
}
if (releaseResolution && releaseResolution === "resolved" && flags.length === 0) {
flags.push({ key: "tracked", label: "已识别,无版本目标", tone: "neutral" });
flags.push({ key: "tracked", label: "已识别,无收录版本", tone: "neutral" });
}
return flags;
}
+1 -1
View File
@@ -107,7 +107,7 @@ export const RECORD_STATUS_TONE: Record<OrganizationStatus, "success" | "warning
cancelled: "neutral",
};
export const TRIGGER_LABEL: Record<OrganizationTrigger, string> = { auto: "自动", manual: "手动", agent: "Agent" };
export const TRIGGER_LABEL: Record<OrganizationTrigger, string> = { auto: "自动", manual: "手动", agent: "智能体" };
/** dryRun 生成的整理计划冻结为 artifact(kind=plan),GET /artifacts/{id} 读取逐文件预览 */
export function useArtifact(id: string | null | undefined) {
+4 -4
View File
@@ -99,14 +99,14 @@ export function useRuleSuppressions() {
export type RuleRefs = {
/** 规则组 id → 引用它的订阅(params.ruleGroupIds 或私有组) */
subscriptions: Map<string, { id: string; title: string }[]>;
/** 规则组 id → 引用它的版本目标 */
/** 规则组 id → 引用它的收录版本 */
slots: Map<string, { id: string; name: string }[]>;
};
const SubPage = cursorPage(Subscription);
const SlotPage = cursorPage(AcquisitionSlot);
/** 引用关系:列表接口不带引用计数,前端从订阅与版本目标反查(各取前 200 条) */
/** 引用关系:列表接口不带引用计数,前端从订阅与收录版本反查(各取前 200 条) */
export function useRuleRefs() {
return useQuery({
queryKey: ruleKeys.refs,
@@ -150,7 +150,7 @@ function useInvalidate() {
const qc = useQueryClient();
return () => {
void qc.invalidateQueries({ queryKey: ruleKeys.all });
// 旧偏好标签页与订阅/版本目标的规则组显示同源
// 旧偏好标签页与订阅/收录版本的规则组显示同源
void qc.invalidateQueries({ queryKey: ["preferences"] });
};
}
@@ -175,7 +175,7 @@ export function useUpdateRuleGroup() {
});
}
/** 删除:标记删除并写抑制记录;被版本目标/订阅引用时 409 */
/** 删除:标记删除并写抑制记录;被收录版本/订阅引用时 409 */
export function useDeleteRuleGroup() {
const done = useInvalidate();
return useMutation({
+1 -1
View File
@@ -105,7 +105,7 @@ export function useSiteRequestStats(siteId: string | undefined) {
export function accessSummary(s: SiteRequestStats): string {
const dur = (sec: number) => (sec % 3600 === 0 ? `${sec / 3600} 小时` : `${Math.round(sec / 60)} 分钟`);
const parts = [
`快照每 ${dur(s.snapshotIntervalSec)} ${s.access.snapshotMaxPages} 页`,
`抓取每 ${dur(s.snapshotIntervalSec)} ${s.access.snapshotMaxPages} 页`,
`健康检测每 ${dur(s.access.healthCheckIntervalSec)}`,
];
if (s.access.detailCacheSec > 0) parts.push(`详情缓存 ${dur(s.access.detailCacheSec)}`);
+2 -2
View File
@@ -77,7 +77,7 @@ export function useUpdateSubscription() {
api.patch<unknown>(`/subscriptions/${id}`, body).then((d) => parseOrThrow(Subscription, d, "/subscriptions")),
onSuccess: () => {
void qc.invalidateQueries({ queryKey: subscriptionKeys.all });
// best_version 写到版本目标的升级策略
// best_version 写到收录版本的升级策略
void qc.invalidateQueries({ queryKey: ["slots"] });
},
});
@@ -246,7 +246,7 @@ export function useFillSlot() {
});
}
/** 版本目标排序:第一个成为主版本 */
/** 收录版本排序:第一个成为主版本 */
export function useSetSlotOrder() {
const done = useInvalidateSubs();
return useMutation({
+2 -2
View File
@@ -23,7 +23,7 @@ const RecordPage = cursorPage(PublicOrganizationRecord);
const DecisionPage = cursorPage(Decision);
const RESOLUTION_LABEL = {
unresolved: "待识别",
unresolved: "未识别",
resolved: "已识别",
ambiguous: "有歧义,待确认",
unidentifiable: "无法识别",
@@ -260,7 +260,7 @@ export function buildTimeline(input: {
key: `agent-${d.id}`,
stage: "agent",
at: d.updatedAt,
title: "Agent 已介入调查",
title: "智能体已介入调查",
tone: "neutral",
href: `/console/agent/${d.agentRunId}`,
});