feat(控制台): 接入指南扩展40项全量MCP工具与前端交互体验优化 - #4
Merged
Merged
Conversation
原因: 预览沙盒原本只配置 allow-scripts,当预览内容含 target="_blank" 或 window.open 时会被浏览器拦截并报错 内容: - 前端 PreviewFrame 组件在 iframe sandbox 属性中追加 allow-popups - 后端 serve.go 与 preview.go 在直出 HTML/SVG 响应头 CSP sandbox 指令中追加 allow-popups - 补充前端单元测试断言沙盒属性正确性 影响: 预览中的外部超链接与弹窗可正常在新窗口中打开,不破坏原有 opaque origin 安全隔离
- 项目管理: 外层展示别名并集成富信息 Tooltip 浮窗,增加 4 栏空间 KPI 概览带与 Lucide 紧凑操作组,支持侧滑详情概览抽屉 - 系统设置: 二级路由下专属 SettingsSidebar 全量接管主侧栏,顶栏右侧集中退出按钮与 ESC 监听,表单改用无浮起 Card 发线属性网格与粘性底栏 - 关联修复: 动态接入真实 Wiki/Pin/Preview 资产徽章,支持快捷分类胶囊与直达 Wiki Reader
- 项目管理: 在空间作用域下拉取全量项目支持胶囊与搜索跨页过滤,分页总数真实同步当前过滤集 - 详情抽屉: 动态接入真实 Wiki 版本、待办 Pin 与 Preview 活跃沙盒状态,消除静态占位文本 - 系统设置: 修复全局 ESC 监听守卫,弹窗打开时优先关闭弹窗避免误退看板 - 样式对齐: 移除 Tooltip 多余小箭头,外层别名增加超长截断保护
原因: WebSocket 实时推送及文件切换时存在全屏遮罩硬刷新白屏,且导航消息未鉴权 内容: - 使用 motion.div 驱动 iframe 透明度快速淡入淡出并辅以顶部细进度条 - 过渡期间增加 pointer-events-none 拦截误触,并提供 5s 超时恢复保护 - 代码与 Markdown 查看器在同文件更新时保留现有内容,避免卸载重挂闪烁 - 严格校验 lumina:navigate 消息的 event.source 是否归属预览 iframe - 内部超链接跳转时保留原生 hash 与 query,避免参数丢失与二次硬重载 - 补齐相关动效降级、超时容灾与来源鉴权单元测试 影响: 预览工作台协同更新与多文件浏览更平滑无感,消除白屏撕裂与路由劫持隐患
- 扩展 web/src/lib/mcp-connect.ts 补齐 preview 行级工具及 preview_lpw 8项工具族 - 统一接入指南与落地页展示文案为 8 大核心能力域与 40 套协作工具 - 丰富 MCP 协作工作流步骤,新增行级精准微调与出版级 LPW 节点编排指引 - 加固 settings.go 与 qa_logic.go 中 site.domain 校验,严格拦截参数、锚点与凭据 - 补齐前端单测与后端域名安全性单元测试 关联 LUMINA-23
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
特性概述
全面重构控制台 MCP 接入指南体系,将前端单一数据源与展示层完整对齐后端 8 大核心能力域共 40 项 Streamable MCP 工具(补齐 Preview 行级编辑、文件删除以及 Preview LPW 8 项节点增量编排工具族);加固站点域名格式校验与下游链路安全,并集成实时预览平滑过渡动效、项目管理台账联动与安全增强。
核心能力与变更清单
web/src/lib/mcp-connect.ts,新增preview_lpw模块定义,补齐preview_file_edit与preview_file_delete,收敛 40 项全量 MCP 工具单一数据源;tool-catalog.tsx、plugin-install-panel.tsx)与公开落地页(start.tsx、tech-section.tsx)能力分类与工具总数文案,为preview_lpw配置专属图标映射。internal/logic/settings.go)新增并导出ValidateSiteDomain,严格拦截空格、换行符、Unicode 分隔符、命令行控制字符、账号凭据以及?查询参数与#页面锚点,防止下游拼接生成异常的 Q&A 交互链接、Preview / Pages 深链;internal/logic/qa_logic.go的UpdateQaConfig配置写入分支接入统一的域名格式校验,杜绝绕过隐患;settings_validation_test.go单元测试,全面覆盖有效与各类恶意格式的拦截逻辑。allow-popups。破坏性变更与兼容性
运维与基础设施考量
验证与验收记录
pnpm --filter web test(35 个测试套件,171 项测试全绿);src/lib/mcp-connect.test.ts(20 项测试全部通过);eslint零错误,Prettier 格式校验全部通过,pnpm --filter web build生产构建成功;make check(包含版本连续性检查、go vet ./...、全包竞态测试go test -race -count=1 ./...)。