#!/usr/bin/env bash
set -euo pipefail
# Usage: bash run-proof.sh CHECKOUT NEW_EMPTY_FIXTURE_DIR
# Place mise-codex-update.e2e.ts under CHECKOUT/scripts/scenarios first.
checkout=$1
fixture=$2
mkdir -p "$fixture"
curl -fL https://github.com/jdx/mise/releases/download/v2026.11.8/mise-v2026.11.8-linux-x64.tar.gz -o "$fixture/mise.tar.gz"
tar -xzf "$fixture/mise.tar.gz" -C "$fixture"
export MISE_DATA_DIR="$fixture/mise-data"
export MISE_CONFIG_DIR="$fixture/mise-config"
"$fixture/mise/bin/mise" install npm:@openai/codex@0.160.0
mkdir -p "$MISE_CONFIG_DIR"
printf '[tools]\n"npm:@openai/codex" = "latest"\n' > "$MISE_CONFIG_DIR/config.toml"
"$fixture/mise/bin/mise" reshim
export CODEX_SCENARIO_PATH="$MISE_DATA_DIR/shims:$fixture/mise/bin"
export T3CODE_DEV_SEED=0
export T3_SCENARIO_INHERIT_ENV='T3CODE_DEV_SEED,MISE_*,CODEX_SCENARIO_PATH'
cd "$checkout"
# Apply the accompanying start-app.patch to enable the real Codex CLI for maintenance only.
vp run scenarios:prove scripts/scenarios/mise-codex-update.e2e.ts --base e4f066da213d5494f67cb654b5df318e16348734 --head 2aa61169bc80ad84d8513c5486a59fa6b0955af8 --upload-command "ghdrop upload"
