name: Localhost SSH original scenario baseline on: workflow_dispatch: permissions: contents: read jobs: ssh: strategy: fail-fast: false matrix: spec: - tests/e2e/ssh-localhost.spec.ts runs-on: ubuntu-latest timeout-minutes: 60 steps: - uses: actions/checkout@v6 with: persist-credentials: false - name: Install headless tools run: sudo apt-get update && sudo apt-get install -y build-essential openssh-client openssh-server python3 ripgrep xvfb zsh openbox x11-utils - uses: ./.github/actions/install-node-dependencies with: native-runtime: electron - name: Start isolated localhost SSH server shell: bash run: | mkdir -p "$HOME/.pi/agent" fixture="$RUNNER_TEMP/orca-localhost-sshd" mkdir -p "$fixture" ssh-keygen -q -t ed25519 -N '' -f "$fixture/host_key" ssh-keygen -q -t ed25519 -N '' -f "$fixture/client_key" cat > "$fixture/sshd_config" <> "$GITHUB_ENV" echo "ORCA_E2E_SSH_USER=$(id -un)" >> "$GITHUB_ENV" echo "ORCA_E2E_SSH_IDENTITY_FILE=$fixture/client_key" >> "$GITHUB_ENV" - name: Build relay and Electron env: VITE_EXPOSE_STORE: 'true' run: | pnpm run build:relay pnpm exec electron-vite build --mode e2e pnpm run build:web-from-renderer - name: Run existing relay performance scenarios run: xvfb-run --auto-servernum bash .github/scripts/e2e-with-window-manager.sh env SKIP_BUILD=1 ORCA_E2E_SSH_DOCKER=1 ORCA_E2E_SSH_LOCALHOST=1 ORCA_FEATURE_REMOTE_AGENT_HOOKS=1 ORCA_E2E_FORWARD_APP_LOGS=1 pnpm exec playwright test --config tests/playwright.config.ts ${{ matrix.spec }} --project=electron-headless --workers=1 --repeat-each=3 - uses: actions/upload-artifact@v7 if: always() with: name: localhost-ssh-repeat-${{ strategy.job-index }} path: test-results/ retention-days: 3