feat(phase2): 完成第二阶段评测、函数图与多格式导出 #44

Merged
Kronecker merged 10 commits from feat/phase2-completion into main 2026-09-07 15:11:04 +08:00
Owner

改动内容

  • 完成第二阶段 RAG 与 Agent Benchmark,支持真实 Agent Runtime、执行轨迹、指标展示、运行取消和报告下载。
  • 增加 RRF 与加权融合配置,记录检索命中率、延迟、Token 用量和工具调用准确率。
  • 新增 function-plot Markdown 语法、编辑器预览、交互查看及静态导出。
  • 完善 HTML、DOCX 和 PDF 导出,支持函数图、Mermaid、公式、警告框、表格和 Vault 图片。
  • PDF 复用编辑器实际主题 CSS 与 Markdown 渲染器,保留字体、代码高亮、纸张装饰及其他主题样式。
  • PDF 渲染当前编辑器快照的元数据栏,包含未保存的标题和标签,并支持仅含元数据的笔记。
  • 取消 PDF 资源数量、大小和图表复杂度限制,同时保留 Vault 路径、图片格式及浏览器隔离校验。
  • 修复关闭导出窗口后任务被错误取消、HTML 图片遗漏及复杂图表裁切等问题。
  • 补充第二阶段功能演示、接口契约、验收证据、开发说明和第三阶段实施规划。
  • 按工程规范补齐相关前后端中文注释。

影响模块

  • 后端:Benchmark、Agent Runtime、检索融合、导出服务、函数图解析与渲染、本地向量缓存。
  • 前端:Benchmark 页面、编辑器、导出窗口、Markdown 渲染、图表交互和主题样式。
  • 数据:新增第二阶段 RAG、Agent 和语料评测数据集。
  • 文档:更新第二阶段契约、开发说明、验收记录及第三阶段规划。
  • 依赖:增加 Playwright,用于浏览器 PDF 渲染。

验证方式

  • 后端 pytest 全量通过:885 项。
  • 前端测试全量通过:455 项。
  • Python 编译检查通过。
  • Vue/TypeScript 类型检查通过。
  • 前端生产构建通过。
  • git diff --check 通过。
  • 隔离环境集成冒烟通过。
  • 六种主题实际 PDF 导出及 Poppler 渲染检查通过。
  • 元数据、空正文、HTML 图片、Vault 越界和代码示例排除回归通过。
  • 合并审阅通过,未发现阻碍项。

接口或数据变更

  • Agent Benchmark 增加请求、逐例结果和报告契约。
  • RAG 检索配置增加 fusion,支持 rrfweighted
  • Markdown 工具增加 function-plot 格式。
  • PDF 导出请求增加自包含的 print_html 快照。
  • 新增 POST /api/exports/preview-resources,用于准备 PDF 图片和函数图资源。
  • 新增 POST /api/plots/function,用于函数图预览。
  • 新增第二阶段 Benchmark 数据集。
  • 不涉及数据库结构迁移。

风险与恢复

  • PDF 浏览器导出依赖 Chromium、Edge 或 Chrome;可通过 APP_PDF_BROWSER 指定浏览器路径。
  • PDF 取消资源配额后,大型文档可能增加内存占用和渲染时间。
  • PDF 快照在禁用 JavaScript、网络和文件访问的环境中渲染,图片与字体需要提前内嵌。
  • 构建仍存在已有的大分块提示,后端测试仍存在 Starlette/httpx 弃用提示。
  • 回退时撤销本 PR 的合并提交,并同步恢复后端依赖及锁文件;无需执行数据库回滚。

关联 Issue

  • 无(当前未关联 Issue)。
## 改动内容 - 完成第二阶段 RAG 与 Agent Benchmark,支持真实 Agent Runtime、执行轨迹、指标展示、运行取消和报告下载。 - 增加 RRF 与加权融合配置,记录检索命中率、延迟、Token 用量和工具调用准确率。 - 新增 function-plot Markdown 语法、编辑器预览、交互查看及静态导出。 - 完善 HTML、DOCX 和 PDF 导出,支持函数图、Mermaid、公式、警告框、表格和 Vault 图片。 - PDF 复用编辑器实际主题 CSS 与 Markdown 渲染器,保留字体、代码高亮、纸张装饰及其他主题样式。 - PDF 渲染当前编辑器快照的元数据栏,包含未保存的标题和标签,并支持仅含元数据的笔记。 - 取消 PDF 资源数量、大小和图表复杂度限制,同时保留 Vault 路径、图片格式及浏览器隔离校验。 - 修复关闭导出窗口后任务被错误取消、HTML 图片遗漏及复杂图表裁切等问题。 - 补充第二阶段功能演示、接口契约、验收证据、开发说明和第三阶段实施规划。 - 按工程规范补齐相关前后端中文注释。 ## 影响模块 - 后端:Benchmark、Agent Runtime、检索融合、导出服务、函数图解析与渲染、本地向量缓存。 - 前端:Benchmark 页面、编辑器、导出窗口、Markdown 渲染、图表交互和主题样式。 - 数据:新增第二阶段 RAG、Agent 和语料评测数据集。 - 文档:更新第二阶段契约、开发说明、验收记录及第三阶段规划。 - 依赖:增加 Playwright,用于浏览器 PDF 渲染。 ## 验证方式 - [x] 后端 pytest 全量通过:885 项。 - [x] 前端测试全量通过:455 项。 - [x] Python 编译检查通过。 - [x] Vue/TypeScript 类型检查通过。 - [x] 前端生产构建通过。 - [x] `git diff --check` 通过。 - [x] 隔离环境集成冒烟通过。 - [x] 六种主题实际 PDF 导出及 Poppler 渲染检查通过。 - [x] 元数据、空正文、HTML 图片、Vault 越界和代码示例排除回归通过。 - [x] 合并审阅通过,未发现阻碍项。 ## 接口或数据变更 - Agent Benchmark 增加请求、逐例结果和报告契约。 - RAG 检索配置增加 `fusion`,支持 `rrf` 和 `weighted`。 - Markdown 工具增加 `function-plot` 格式。 - PDF 导出请求增加自包含的 `print_html` 快照。 - 新增 `POST /api/exports/preview-resources`,用于准备 PDF 图片和函数图资源。 - 新增 `POST /api/plots/function`,用于函数图预览。 - 新增第二阶段 Benchmark 数据集。 - 不涉及数据库结构迁移。 ## 风险与恢复 - PDF 浏览器导出依赖 Chromium、Edge 或 Chrome;可通过 `APP_PDF_BROWSER` 指定浏览器路径。 - PDF 取消资源配额后,大型文档可能增加内存占用和渲染时间。 - PDF 快照在禁用 JavaScript、网络和文件访问的环境中渲染,图片与字体需要提前内嵌。 - 构建仍存在已有的大分块提示,后端测试仍存在 Starlette/httpx 弃用提示。 - 回退时撤销本 PR 的合并提交,并同步恢复后端依赖及锁文件;无需执行数据库回滚。 ## 关联 Issue - 无(当前未关联 Issue)。
Kronecker added 10 commits 2026-09-07 15:09:45 +08:00
Author
Owner

Review 结论

已完成本分支的功能、接口、前端交互和回归审阅。此前发现的 PDF 主题不一致、元数据遗漏、纯元数据笔记导出失败及 HTML 图片资源遗漏问题均已修复,复审未发现新的阻碍项。

检查结果

  • 第二阶段功能与需求一致。
  • 前后端依赖方向合理。
  • Benchmark、检索及导出 Contract 已同步。
  • 关键功能包含单元测试和回归测试。
  • 导出错误、取消及恢复行为明确。
  • PDF 浏览器禁用脚本、网络和文件访问,未发现敏感信息泄露。
  • Vault 图片保留路径和格式校验。
  • 未发现与本 PR 无关的模块修改。
  • 现有 Demo 流程未受影响。
  • 前后端关键逻辑已按规范补充中文注释。

验证记录

  • 后端全量测试:885 项通过。
  • 前端全量测试:455 项通过。
  • Python 编译检查通过。
  • Vue/TypeScript 类型检查通过。
  • 前端生产构建通过。
  • git diff --check 通过。
  • 隔离环境集成冒烟通过。
  • 六种主题实际 PDF 导出和 Poppler 渲染检查通过。

合并建议

建议批准,

## Review 结论 已完成本分支的功能、接口、前端交互和回归审阅。此前发现的 PDF 主题不一致、元数据遗漏、纯元数据笔记导出失败及 HTML 图片资源遗漏问题均已修复,复审未发现新的阻碍项。 ## 检查结果 - [x] 第二阶段功能与需求一致。 - [x] 前后端依赖方向合理。 - [x] Benchmark、检索及导出 Contract 已同步。 - [x] 关键功能包含单元测试和回归测试。 - [x] 导出错误、取消及恢复行为明确。 - [x] PDF 浏览器禁用脚本、网络和文件访问,未发现敏感信息泄露。 - [x] Vault 图片保留路径和格式校验。 - [x] 未发现与本 PR 无关的模块修改。 - [x] 现有 Demo 流程未受影响。 - [x] 前后端关键逻辑已按规范补充中文注释。 ## 验证记录 - 后端全量测试:885 项通过。 - 前端全量测试:455 项通过。 - Python 编译检查通过。 - Vue/TypeScript 类型检查通过。 - 前端生产构建通过。 - `git diff --check` 通过。 - 隔离环境集成冒烟通过。 - 六种主题实际 PDF 导出和 Poppler 渲染检查通过。 ## 合并建议 建议批准,
Kronecker merged commit f193f699b2 into main 2026-09-07 15:11:04 +08:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Kronecker/NotesAgentic#44