Skip to content

refactor(knowledge): Dashboard 重命名为 Pipelines + 修复 KG Build Run 取消操作 500 错误 - #492

Merged
ThreeFish-AI merged 11 commits into
feature/1.x.xfrom
ThreeFish-AI/rename-dashboard-to-pipelines
May 10, 2026
Merged

refactor(knowledge): Dashboard 重命名为 Pipelines + 修复 KG Build Run 取消操作 500 错误#492
ThreeFish-AI merged 11 commits into
feature/1.x.xfrom
ThreeFish-AI/rename-dashboard-to-pipelines

Conversation

@ThreeFish-AI

Copy link
Copy Markdown
Owner

Summary

  • Dashboard → Pipelines 全量重命名:将 Knowledge 模块的二级菜单从 "Dashboard" 系统性重命名为 "Pipelines",涵盖导航标签、路由路径(/knowledge/dashboard/knowledge/pipelines)、后端 endpoint(/dashboard/pipelines/overview)、Schema 类型名(DashboardResponsePipelinesResponse)、前端组件/变量名、测试断言与 E2E 截图
  • 修复 KG Build Run 取消操作 500 错误request_build_run_cancel 中 UPDATE 语句的 :status 参数在 SET 赋值(VARCHAR)与 IN 比较(TEXT)间产生类型歧义(asyncpg AmbiguousParameterError),简化为 completed_at = NOW() 消除冲突

变更范围

Bug Fix

  • apps/negentropy/src/negentropy/knowledge/graph/repository.py — 移除 CASE WHEN 条件,直接设置 completed_at

重命名

  • 后端api.py 路由、schemas.py 类型名
  • 前端KnowledgeNav.tsx 导航标签、pipelines/page.tsx 页面迁移、pipelines/overview/route.ts API proxy、knowledge-api.ts 函数/类型名、index.ts 导出
  • 测试:单元测试、helpers mock、E2E smoke + 截图重命名
  • 文档user-guide.mdknowledges.md

Test plan

  • pnpm tsc --noEmit 类型检查通过
  • pnpm vitest run 单元测试 18/18 通过
  • 后端 ruff lint/format 通过
  • ESLint 通过
  • 浏览器验证 /knowledge/pipelines 页面渲染正常、导航标签显示 "Pipelines" 且高亮
  • 浏览器验证 Cancel Run 操作正常工作,不再出现 500 错误

🤖 Generated with Claude Code, CodeX, Gemini

将 request_build_run_cancel 中 UPDATE 语句的 CASE WHEN :status IN (...) 条件
简化为 completed_at = NOW(),消除同一参数在 SET 赋值(VARCHAR)与 IN 比较(TEXT)
之间的类型推断冲突(asyncpg AmbiguousParameterError)。

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
对齐之前 PR 未处理干净的命名遗留,涵盖导航标签、路由路径、API endpoint、
Schema 类型名、前端组件/变量名、测试断言与 E2E 截图的系统性替换。

后端:/dashboard → /pipelines/overview,DashboardResponse → PipelinesResponse
前端:KnowledgeNav 标签、page.tsx 迁移、API client 函数/类型重命名
测试:KnowledgeNav / PipelinesPage 单元测试、helpers mock、E2E smoke
文档:user-guide.md、knowledges.md 中 Knowledge Dashboard 引用

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
因 Dashboard → Pipelines 导航标签重命名,旧截图中的 nav 文字
与实际页面不匹配(20% pixel diff)。删除后由 CI 重新生成 baseline。

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
- knowledges.md: 去除 API 描述中重复的 "Pipelines"
- user-guide.md: 合并导航表中重复的 Pipelines 行
- user-guide.md: 正文"仪表盘"措辞替换为 "Pipelines 页面"

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
从 CI Playwright 报告中提取 Pipelines 页面 light/dark 主题截图作为
新的 toHaveScreenshot 基线,替代旧 Dashboard 时期的截图。

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
之前提交的全页截图(1280x720)与元素级截图(831x576)尺寸不匹配,
导致 toHaveScreenshot 始终失败。删除错误截图,并在 CI workflow 中添加
*-snapshots/ 目录到 artifact 上传路径,以便从 CI 获取正确的元素级基线。

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](codeassistant)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
从 CI artifacts 中提取正确的元素级截图(831x576),替代之前的
全页截图(1280x720),解决 toHaveScreenshot 尺寸不匹配问题。

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
route mock glob pattern 从 `**/api/knowledge/pipelines?` 改为
`**/api/knowledge/pipelines/overview?`,使 fetchPipelinesData 的
overview 请求能被正确拦截,覆盖指标卡片与 Alerts 面板渲染测试。

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
mock URL 已从 /api/knowledge/pipelines 修正为 /api/knowledge/pipelines/overview,
页面渲染内容已变更,需使用 CI 新生成的元素级截图(831x576)作为基线。

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
session 创建后 composer 可能因状态变更重新挂载,导致 fill 值丢失、
Send 按钮持续 disabled。修复:
- 对核心用例(C7-A)添加 fill 后 toHaveValue 断言,确保输入落盘
- 所有 toBeEnabled 默认 5s 超时扩展为 10s,容忍 CI 慢机重渲染

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
@ThreeFish-AI
ThreeFish-AI merged commit 988602c into feature/1.x.x May 10, 2026
14 checks passed
@ThreeFish-AI
ThreeFish-AI deleted the ThreeFish-AI/rename-dashboard-to-pipelines branch May 10, 2026 13:51
ThreeFish-AI added a commit that referenced this pull request Jul 5, 2026
…-2026-4372 处置) (#1057)

* fix(deps): ts-deepmerge 补丁地板至 8.0.0 修复 GHSA-87mf-gv2c-c62c (#481);

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>

* fix(negentropy): pydantic-settings 升 2.14.2 + joserfc>=1.6.7 补丁地板修复 #482/#488;

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>

* fix(cognizes): joserfc/msgpack/python-socketio/python-engineio 补丁地板修复 #483/#486/#487/#490/#491;

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>

* docs(perceives): ISSUE-092 增补 CVE-2026-4372 威胁模型;transformers 钉 4.x + dismiss #492(marker 5.x 不兼容实测);

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
ThreeFish-AI added a commit that referenced this pull request Sep 6, 2026
沉淀存量 alert 清零过程中的四项实测结论,其中两项推翻既有记载:

- setuptools #555 由 dismiss 改判为升级:记录 pip-audit 双配置对照(保留/剔除
  ignore 匹配数同为 8)作为「该 ignore 已死」的判据,以及「有零成本修复路径时
  消因优于记账」这一对上一轮最小干预判断的修正
- torch #507:旧记「四方联动约束」证伪(constraint 解析下三个 PDF 引擎零位移),
  真实阻断是 torchvision 0.29 与 transformers 4.57.6 在 docling worker 的不兼容
- transformers #678/#499:pillow<11 冲突经 uv lock exit 1 与上游 METADATA 双重证实
- 附带订正:marker-pdf 1.10.2(当前锁定版)本身也声明 Pillow<11,现状已由 override
  压过;准确表述应为「已验证组合换未验证组合」,而非「升 marker 会把 pillow 降级」

两条方法论增补(本轮踩坑所得):
- override-dependencies 会静默压过上游声明,故不能用它验证「某约束是否可行」,
  必须用 constraint-dependencies(冲突即报错)——本轮曾因此得到 transformers 5.x
  「能解析」的假象
- 验证必须走本项目真实调用路径:DocumentConverter 直调在 torch 2.14 下成功,
  只有经 perceives engine worker 才失败,只测上游库会得出完全相反的结论

另记 GitHub 侧收口:dismiss #678/#499/#507,并刷新 #492/#343 两条历史 dismiss 的
陈旧 comment(原载已证伪的 transformers.onnx 口径)。

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant