4.8 KiB
4.8 KiB
学习后台迁移来源与边界
当前后台以现有 A2A 学习后台裁剪迁入,入口是 src/A2AWorkbench.tsx。原项目位于 D:/qiekj/PenguinUniOS-Workspace/projects/learning,所属 Git 根为 D:/qiekj/PenguinUniOS-Workspace,本轮读取时为 main、db7b54a。
已阅读原仓库与学习端两层 AGENTS.md。源项目冻结并保持只读;未启动原服务、运行原测试、同步索引或修改源文件。当前工具未提供 CodeGraph,依照文件搜索与源文件审查确定迁移边界。未读取或复制 .env、账号、浏览器 profile、运行资料、数据库、构建产物与依赖目录。
直接迁入后裁剪或适配
所有源路径以下列目录为起点:apps/console/src/。
App.tsx的app-shell/sidebar/workspace/page布局与底部账号呈现迁入src/A2AWorkbench.tsx;本地会话与空库管理员初始化采用本项目认证适配器,移除学校/项目范围、原账号角色和写入恢复服务依赖。components/SidebarNavigation.tsx迁入同名文件,保留原学习分组与学习批次、账本总览、能力实体、脚本测试导航,裁掉本轮没有服务支持的多机、消费与系统管理入口。components/States.tsx、PageControls.tsx、DetailDrawer.tsx直接迁入,作为实际使用的状态、分页、补充信息抽屉组件。components/ScriptParameterTable.tsx保留原参数表主体和约束/用途展示,生成合同导入替换为learning-view-model.ts的最小本地视图类型。参数与用途来自候选 manifest;未知业务覆盖仍显示待核实。对象/列表名称按本项目参数语义调整。components/TestRunHistory.tsx保留原测试历史抽屉、表格与分页主体,固定 A2A 包引用改为不可变候选 ID,数据来自本项目 PostgreSQL 中的真实验证记录;SQLite 保留为离线开发与测试适配。pages/LearningCampaignPages.tsx的列表、标题、筛选、满高表格和分页主体裁剪迁入同名文件。一条本地任务对应一条明确链路的学习批次,不展示未实现的租约、自动发现、来源目录和覆盖闭合状态。pages/ProgressPage.tsx的账本汇总、来源表、内容分栏与右侧详情轨裁剪迁入同名文件,改为本地任务状态和候选/验证统计,不将观察数推断成已学会数。pages/CapabilitiesPage.tsx的能力列表、固定版本详情、使用参数/操作链/定位证据 Tabs 迁入pages/CandidatesPage.tsx;生产发布、消费统计、检索描述和语义编辑等未支持分支移除。pages/TestsPage.tsx的固定版本测试表、能力选择抽屉与记录详情导航裁剪迁入同名文件;使用本地验证详情适配器展示参数、环境、断言、实际输出与证据。未迁入 SSE、执行宿主派发、停止、失败修复和逐帧回放控制。styles.css直接迁入a2a-learning.css,capability-parameters.css直接迁入同名文件;migration.css补明暗主题、本地录制工作区以及窄屏适配,保持原后台信息密度与表格滚动结构。
保留的本地适配器
api.ts:本项目/api、同源会话、CSRF、认证过期和结构化错误,不依赖原 API 前缀或 generated contracts。App.tsx:维护者登录;空库首次启动由后台初始化admin / 123456,已有账号及后续密码不在启动时覆盖。保留手动设置表单供内部关闭自动初始化的验证场景使用。pages/TasksPage.tsx:新建任务表单,接平台、入口、目标、本地会话引用与参数。pages/TaskDetailPage.tsx:真实浏览器打开、用户官方页面自行登录、人工确认、观察采集、动作记录与候选生成。使用迁入的 DetailDrawer 查看页面文字。pages/ValidationsPage.tsx的ValidationDetails/ValidationTable:本地记录详情适配器,独立来源读回未配置时明确显示缺口。components/common.tsx的资源代次防串写、格式化与 JSON 展示保留;较早参考过D:/qiekj/browser_use/console/components/common/PageTools.tsx。早期重建的四菜单 Ant Design Layout 和概览卡片页已由迁入的 A2A 主界面替换。
没有迁移的业务
原 LearningTasksPage.tsx 是多机外部任务上报监控,依赖 reporter、machine、heartbeat 和事件游标;不将其伪装成本地任务状态。原 production、consumer、semantics、recovery、账号管理、学校/来源身份核验和完整能力包合同也没有复制。相关模块后续按本项目需求与真实接口单独接入。
路由为 #/tasks、#/tasks/:id、#/overview、#/candidates、#/candidates/:id、#/validations。本机示例只验证工具链,小红书模板不是已学习或已验收能力,macOS 与独立来源读回仍需要后续真实验证。