Walks the whole v0.1 pipeline against the real backend, in a throwaway workspace:
- Sign in — if there's no credential, run the device-code flow (open the URL,
enter the code). Skipped if already authenticated or
OPENAI_API_KEYis set. - Run one Turn — start a Session in a scratch dir and stream a prompt that forces tool use (write then read), exercising the Provider's streaming Responses call and the tool loop live.
- Summarize — fold the Log and report the events, the final answer, and the resumable session id.
Usage:
mix pixir.smoke.e2e # default prompt, scratch workspace
mix pixir.smoke.e2e --model gpt-5.4 # override the model id
mix pixir.smoke.e2e --prompt "..." # custom prompt
mix pixir.smoke.e2e --probe-model # validate the model id before the Turn
mix pixir.smoke.e2e --dry-run-tools # model calls tools, no disk writes
mix pixir.smoke.e2e --keep # keep the scratch workspace
mix pixir.smoke.e2e --no-login # fail instead of prompting to sign in
mix pixir.smoke.e2e --help # print this help and exit
mix pixir.smoke.e2e --json --help # print machine-readable helpExit code is non-zero if any stage fails (so it can gate a release check).
Summary
Functions
Execute the end-to-end smoke Mix task with the given command-line arguments.
Parses CLI options, handles --help/--json (prints help and exits normally), validates unsupported options (fails with a structured error), starts the application, ensures the user is signed in (unless --no-login), optionally probes the selected model, and runs a single guided turn against the live backend. Any fatal error will be routed to the task's failure handler which exits the process.