test: run the MCP client against the real API in CI
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 56/100
调研方向
Start by reading CLAUDE.md, the TaskFlow.Api and TaskFlow.Mcp projects, and the existing CI workflow to see how tests are run. The issue names WebApplicationFactory and a temporary SQLite database as the test harness; add coverage for the listed client operations and run the documented one-command check. Done means the acceptance criteria pass, including a CI run on every PR.
由索引模型根据 Issue 内容生成。
描述
Part of nevridge/TaskFlow#397. Blocked by nevridge/TaskFlow#398. This replaces the earlier options (OpenAPI snapshot, throwaway container, process rule), because the API and client now share a repo.
Problem
ApiModels.cs and TaskFlowApiClient.cs are hand-written, and the tests use hand-written fixtures. They pass against a shape the API no longer has, which is how #238, #310 and #351 drifted unnoticed.
Scope
- Add a test project that references
TaskFlow.ApiandTaskFlow.Mcpand hosts the real API in-process withWebApplicationFactoryand a temporary SQLite database. - TaskFlow has no such harness today. It needs
Microsoft.AspNetCore.Mvc.Testing, andProgrammust be made visible to the tests. - Point
TaskFlowApiClientat the test server'sHttpClient. - Exercise create, update, plan, complete, block and unblock, plus reading the journal, through the client.
- Run it in CI on every PR, with no path filter, so API-only PRs run it too.
- Keep
TaskFlow.Mcpfree of any reference toTaskFlow.Api. Only the test project references both.
Acceptance criteria
- Re-introducing the
DateTimedue date makes a test fail. - Renaming or removing a response field the client reads makes a test fail.
- The check runs locally with one command, which is documented in
CLAUDE.md. - The API coverage threshold is unaffected.
- 主要语言
- C#
- 星标
- 1
- 派生
- 0
- 平均合并
- 2 小时 2 分钟
- 30 天内合并 PR
- 98
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
nevridge/TaskFlow 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 65/100
维护者通常 1 天内回复
-
tech-debt
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
查看 nevridge/TaskFlow 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 74/100
juandresrodca/AdminForge#54 ·
-
要トリアージ 辞書
难度 1/5 1-3 小时 新手友好度 86/100
yksr-melt/Meltype#1625 · 1 个 reaction ·
维护者通常 1 天内回复
-
Docs typo未关闭
难度 1/5 1 小时以内 新手友好度 78/100
MonoGame/docs.monogame.github.io#328 · 1 条评论 ·
-
难度 2/5 1-3 小时 新手友好度 70/100
space-wizards/RobustToolbox#7197 ·
维护者通常 1 天内回复
-
documentation high priority
难度 2/5 1-3 小时 新手友好度 76/100
lachydotmcg/capri-desktop#201 ·
维护者通常 1 天内回复