refactor(desktop,gateway): 用户端去重 —— 一个功能一个入口,一份数据一个查法
用户反馈「UI 太乱」。数出来的:report/kb/memory 各 4 个入口、studio 5 个; 运行历史两套渲染。乱的机制是同一件事写了两遍,改一处另一处必然掉队。 **一份数据一个查法** - 工作台「最近任务」和运行页「运行历史」是同一批数据,却各查各的: 前者走 store.RecentTasks(),后者走 RecentRuns()。于是我给运行历史加的 topic 字段工作台完全没跟上,还在 mono 显示 report_<hex>;而且 RecentTasks 没有租户过滤,口径也不一致。现在统一走 RecentRuns,RecentTasks 删掉 (它只有那一个调用点)。前端 recent_runs 也改用 RunSummary 同一个类型。 **一个功能一个入口** - 工作台删掉「入库知识/生成报告/管理记忆」按钮排 —— 跳的目标和上面四张 能力卡片完全重合,同一页给两个入口。 - 「最近任务」现在点击直达运行页对应那条(App 加 goto(view, taskId) → RunsView focusTaskId),而不是只把页面切过去让用户自己再找一遍。 **报告归 RUN,只做启动器** - 报告是「执行」不是「构建」,从 BUILD 组移到 RUN。 - 报告页砍掉「执行轨迹」「报告正文」两个面板 —— 和运行页完全重复,而且 那套是组件本地 state,切页面就没。现在它只有主题输入框。 - 报告改走 App 的全局运行态(新增 onRunReport,与 onRun 同构、复用 attachRun): 提交 → 跳「运行 · 观测」→ 实时看轨迹/正文/导出。App 里 onRun 早就写着 「发起即跳运行页,观测统一收敛在此页」——这条方针一直在,只有报告没遵守。 **顺带清死代码** - 市场(规划中)从导航下架,ViewKey 里的 "market" 和 Boxes 图标一并删。 - PLACEHOLDERS 整块死代码:它列的 home/kb/report/runs 全都早已真实实现, market 是唯一还可能用到的、下架后那个 Placeholder 分支永远走不到 (tsc 报 "Spread types" 就是因为 PLACEHOLDERS[view] 已成 never)。 连同 views/Placeholder.tsx 一起删。 live 验证(真账号,桌面端实机):报告页输入主题 → 提交 → 自动跳运行页 → 顶部「当前运行 · live」→ 轨迹实时跑 → 报告正文流式出 + 导出按钮在位 → report_7a0110a10b534f90 落库带 topic「归口测试」,POST /api/v1/reports → 202。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -11,7 +11,7 @@ import {
|
||||
} from "lucide-react";
|
||||
import { cn } from "../ui";
|
||||
|
||||
export type ViewKey = "home" | "studio" | "kb" | "report" | "runs" | "memory" | "usage" | "market";
|
||||
export type ViewKey = "home" | "studio" | "kb" | "report" | "runs" | "memory" | "usage";
|
||||
|
||||
interface Item {
|
||||
key: ViewKey;
|
||||
@@ -25,11 +25,11 @@ const ITEMS: Item[] = [
|
||||
{ key: "home", label: "工作台", icon: LayoutDashboard, ready: true },
|
||||
{ key: "studio", label: "编排", icon: Workflow, group: "BUILD", ready: true },
|
||||
{ key: "kb", label: "知识库", icon: Database, group: "BUILD", ready: true },
|
||||
{ key: "report", label: "报告", icon: FileText, group: "BUILD", ready: true },
|
||||
{ key: "runs", label: "运行", icon: Activity, group: "RUN", ready: true },
|
||||
// 报告是「执行」不是「构建」:它归 RUN。放 BUILD 里跟编排/知识库并列会让人以为它是个要搭的东西。
|
||||
{ key: "report", label: "报告", icon: FileText, group: "RUN", ready: true },
|
||||
{ key: "memory", label: "记忆", icon: Bookmark, group: "MANAGE", ready: true },
|
||||
{ key: "usage", label: "用量", icon: Coins, group: "MANAGE", ready: true },
|
||||
{ key: "market", label: "市场", icon: Boxes, group: "MANAGE", ready: false },
|
||||
];
|
||||
|
||||
// 左导航:深色,激活态紫色高亮 + 左侧光条,描线图标。
|
||||
|
||||
Reference in New Issue
Block a user