Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

test_sim reports SUCCEEDED with 0 tests when per-call projectPath is ignored

未关闭
#517 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
52/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
typescript

调研方向

从 test_sim 工具及其与 session_set_defaults 一起处理每次调用的 projectPath 入手。使用不同的 worktree 路径和 -only-testing 过滤器重现该报告,然后验证是否使用了请求的项目,或者过滤后测试数为零的运行是否会失败,而不是返回 SUCCEEDED。

由索引模型根据 Issue 内容生成。

描述

Summary

test_sim appears to ignore a per-call projectPath and use the session default instead. When the two differ, it reported SUCCEEDED having run zero tests.

What happened

I had several agents working concurrently in separate git worktrees of one repo. Session defaults were set once, pointing projectPath at the main checkout:

session_set_defaults
  projectPath: <repo>/src/PinPoint.xcodeproj
  scheme: PinPoint
  simulatorName: iPhone 17 Pro

An agent working in <repo>/.claude/worktrees/agent-XXXX/ called test_sim with its own worktree's projectPath and an -only-testing filter for a suite that exists only in that worktree. The call returned SUCCEEDED with 0 tests passed and 0 failed.

The suite it was asked to run did not exist in the project it actually built, so there was nothing to run and nothing to fail. The agent's only clue was the zero count; the status field said success.

Why this is worth fixing above its size

A test tool that returns SUCCEEDED without running the requested tests is the worst available failure mode — it is indistinguishable from a pass at the point where a caller decides whether work is done. In an agent workflow nothing reads the count; it reads the status. Two of my agents would have reported tickets complete on the strength of it. Both worked around it by driving xcodebuild directly with their own -derivedDataPath, which is the right answer but only because they noticed.

Suggested

Either honour a per-call projectPath over the session default, or fail loudly when one is passed and cannot be honoured. Failing that, a zero-test run should not report as SUCCEEDED — an -only-testing filter matching nothing is an error, not a pass.

Environment

Multiple concurrent git worktrees of one project, one shared MCP session, iOS simulator destination. Repointing the shared session defaults was not an option, since a concurrent agent was relying on them.

主要语言
TypeScript
星标
6.4k
派生
320
PR 合并指标
30 天内没有已合并 PR

贡献指南

这个仓库没有索引到贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

getsentry/XcodeBuildMCP 的其他 Issue

查看 getsentry/XcodeBuildMCP 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。