mirror of https://github.com/garrytan/gstack.git
fix(test): eval-list CLI spawns from neutral cwd so slug detection can't dodge the fixture store
getProjectEvalDir() probes cwd-relative .claude/skills/gstack/bin/gstack-slug; with cwd=ROOT on a dev machine the self-symlink makes it succeed, routing reads to an empty project-scoped dir instead of the seeded legacy ~/.gstack-dev/evals. Neutral cwd + absolute script path fails both probes deterministically — same behavior as CI. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
a3259400a3
commit
8b850986b2
|
|
@ -51,8 +51,14 @@ function writeEvalRun(evalDir: string, filename: string, timestamp: string, turn
|
|||
}
|
||||
|
||||
function runEvalList(...args: string[]): { stdout: string; stderr: string; status: number } {
|
||||
const result = spawnSync('bun', ['run', 'scripts/eval-list.ts', ...args], {
|
||||
cwd: ROOT,
|
||||
// cwd is the temp HOME, NOT the repo root: getProjectEvalDir() probes the
|
||||
// cwd-relative .claude/skills/gstack/bin/gstack-slug, and on dev machines
|
||||
// with the self-symlink that probe succeeds, routing reads to an (empty)
|
||||
// project-scoped dir instead of the legacy ~/.gstack-dev/evals this test
|
||||
// seeds. A neutral cwd makes both slug probes fail deterministically, so
|
||||
// the CLI always uses the seeded legacy dir — same behavior as CI.
|
||||
const result = spawnSync('bun', ['run', path.join(ROOT, 'scripts', 'eval-list.ts'), ...args], {
|
||||
cwd: tmpHome,
|
||||
env: {
|
||||
...process.env,
|
||||
HOME: tmpHome,
|
||||
|
|
|
|||
Loading…
Reference in New Issue