Skip to content

Runner rejects all backend requests with 401 after v0.2.2 upgrade #1425

Description

@jeremyeder

Problem

After the v0.2.2 release, all runner pods reject requests from the backend-api and operator with 401 Unauthorized. This breaks session creation, workflow reconciliation, and the between-run listener across all project namespaces on vteam-uat.

The runner starts correctly (AG-UI token authentication enabled), and the operator successfully provisions and refreshes tokens (Refreshed runner token for session ...), but the token the backend sends is not accepted by the runner.

This is an interaction between two PRs that both merged before v0.2.2:

Likely causes to investigate

  • Token secret key mismatch (operator writes to one key, runner reads from another)
  • Header name mismatch between what runnerTransport sends and what _require_session_token checks
  • Middleware registration ordering changed by feat(runner,manifests): alpha migration PR 6+7 — runners and Kustomize overlays #1379's endpoint restructuring
  • The backend's getRunnerAGUIToken() reads from a secret that the v0.2.2 operator writes differently than v0.2.0

Reproduction

Deploy v0.2.2 to a kind cluster and attempt to create a session. The runner pod logs will show 401 Unauthorized on every inbound request.

Affected files

  • components/runners/ambient-runner/ambient_runner/app.py (auth middleware)
  • components/backend/handlers/sessions.go (runnerTransport, getRunnerAGUIToken)
  • components/operator/internal/handlers/sessions.go (regenerateRunnerToken)

Context

Discovered during investigation of vteam-uat outage on 2026-04-22. This is the user-facing symptom — sessions fail with "Error: Runner error: HTTP 401". Affected namespaces include test-jumpstarter-bugs, cve-fixer-workflow, maas-cve-fixer, chocolate-factory, and others.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions