Skip to content

test(e2e): allow external step programs#560

Merged
wan9chi merged 1 commit into
mainfrom
agent/e2e-arbitrary-step-programs
Jul 23, 2026
Merged

test(e2e): allow external step programs#560
wan9chi merged 1 commit into
mainfrom
agent/e2e-arbitrary-step-programs

Conversation

@wan9chi

@wan9chi wan9chi commented Jul 23, 2026

Copy link
Copy Markdown
Member

Motivation

The E2E snapshot harness resolves vt and vtt through Cargo-provided binary paths so the default suite remains self-contained and portable. That hard restriction also prevents ignored fixtures from opting into external tools that the repository explicitly provisions in packages/tools.

What changed

  • Preserve exact CARGO_BIN_EXE_* resolution for vt and vtt.
  • Resolve any other step program through the harness's prepared PATH.
  • Keep the default snapshot suite self-contained; an external dependency is required only when a fixture explicitly names it.

The full local just ready gate passes on this branch.

wan9chi commented Jul 23, 2026

Copy link
Copy Markdown
Member Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

Co-authored-by: GPT-5 Codex <codex@openai.com>
@wan9chi
wan9chi force-pushed the agent/e2e-arbitrary-step-programs branch from d2161c1 to c1af19f Compare July 23, 2026 13:02
@wan9chi
wan9chi marked this pull request as ready for review July 23, 2026 13:07
@wan9chi
wan9chi merged commit a1bbc88 into main Jul 23, 2026
16 checks passed
@wan9chi
wan9chi deleted the agent/e2e-arbitrary-step-programs branch July 23, 2026 13:07

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c1af19f3cc

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

env::var_os(exe_env.as_str()).unwrap_or_else(|| panic!("{exe_env} not set"));
CommandBuilder::new(resolved)
} else {
CommandBuilder::new(program)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Resolve Windows command shims before spawning external steps

On Windows, external tools provisioned under packages/tools/node_modules/.bin (such as vite) are pnpm-generated .cmd/.ps1 shims rather than native executables. portable_pty::CommandBuilder launches the program directly, so CommandBuilder::new("vite") cannot execute those shims; setting PATHEXT later only configures the child environment and does not route the initial launch through a command interpreter. Consequently, ignored external-tool E2Es still fail to spawn on Windows unless the harness resolves and invokes the appropriate shim explicitly.

AGENTS.md reference: AGENTS.md:L147-L152

Useful? React with 👍 / 👎.

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