test(source-control): put the eval gh fixture on PATH without relying on zsh's .zshenv
维护者通常 1 天内回复
已经有一个关联 PR 被合并了。
- #7384 来自 @kyle-sexton —— 已合并
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 25/100
调研方向
Start with plugins/source-control/evals/fixtures/gh-forge/install.sh and the case.yaml environment limits described in the issue; review the findings from #7164 and the runner capability options. The change depends on an upstream runner capability request and a kept-trace run on a bash-SHELL host. Done means ready cases reach gh pr ready through the stand-in and install.sh no longer writes ~/.zshenv.
由索引模型根据 Issue 内容生成。
描述
Context
Follow-up to #7164 (#6997). The owner accepted zsh-only coverage for the offline gh fixture so that PR could merge; this issue tracks the shell-independent fix.
Problem
plugins/source-control/evals/fixtures/gh-forge/install.sh puts the stand-in gh on PATH only by appending an export to the run's ~/.zshenv. On a host whose SHELL is bash (a default CI runner, for example), the stand-in is never on PATH: the run falls through to the real gh, which has no login inside the run and no network under the sandbox, so the ready cases stop at the PR lookup again.
Evidence from #7164 (Claude Code 2.1.296 probes):
- A case cannot set
PATH:case.yamlenvkeys are limited toEVAL_*. - The scaffold's
HOMEis the run's temporary home, and the eval run does not source~/.zshrc,~/.bashrcor~/.profile: functions and variables defined there were missing from the run's Bash. - Only
~/.zshenvtook effect, because zsh reads it on everyzsh -c. That is undocumented runner behavior. - No run was made on a bash-
SHELLhost; the fall-through there is inferred from the above.
Ask
The clean fix needs a capability in claude plugin eval itself, for example:
- a case-level
PATHprefix (acase.yamlkey naming a directory under the scaffolded workspace to prepend), or - a scaffold-written env file the runner applies to the run's shell.
This repository cannot add either; record the request upstream through the owner's normal channel, then switch gh-forge/install.sh to the new mechanism and drop the .zshenv append. An operator-level dispatcher gh on PATH (option 3 in #7164) works on any shell but adds a convention to every invocation; it stays the fallback if upstream declines.
Acceptance
- The
pull-requestready cases reachgh pr readythrough the stand-in on a bash-SHELLhost, shown by a kept-trace run. install.shno longer writes~/.zshenv.
Related: #6997, #7164
- 主要语言
- Shell
- 星标
- 22
- 派生
- 2
- 平均合并
- 8 小时 34 分钟
- 30 天内合并 PR
- 946
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
melodic-software/claude-code-plugins 的其他 Issue
-
needs-human needs-triage
难度 2/5 1-3 小时 新手友好度 82/100
melodic-software/claude-code-plugins#7636 · 1 条评论 ·
维护者通常 1 天内回复
-
agent-ready needs-human
难度 2/5 1-3 小时 新手友好度 77/100
melodic-software/claude-code-plugins#7598 · 4 条评论 ·
维护者通常 1 天内回复
-
good first issue priority: low
难度 2/5 1-3 小时 新手友好度 62/100
melodic-software/claude-code-plugins#7530 · 1 条评论 ·
维护者通常 1 天内回复
-
needs-human priority: medium
难度 2/5 1-3 小时 新手友好度 65/100
melodic-software/claude-code-plugins#7455 · 1 条评论 ·
维护者通常 1 天内回复
-
priority: medium
难度 2/5 1-3 小时 新手友好度 68/100
melodic-software/claude-code-plugins#7351 · 2 条评论 ·
维护者通常 1 天内回复
查看 melodic-software/claude-code-plugins 的全部 Issue
相似的 Issue
-
Add Photocraft未关闭enhancement
难度 2/5 1-3 小时 新手友好度 67/100
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 78/100
-
bug
难度 2/5 1-3 小时 新手友好度 62/100
-
needs-triage
难度 2/5 1-3 小时 新手友好度 84/100
gke-labs/kube-agents#3394 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复