Skip to content

fix(ci): pass extensions-version so sub-agent review script is used#2890

Merged
xingyaoww merged 1 commit intomainfrom
fix/pr-review-extensions-version
Apr 20, 2026
Merged

fix(ci): pass extensions-version so sub-agent review script is used#2890
xingyaoww merged 1 commit intomainfrom
fix/pr-review-extensions-version

Conversation

@xingyaoww
Copy link
Copy Markdown
Collaborator

@xingyaoww xingyaoww commented Apr 20, 2026

Problem

The PR review workflow points to @feat/pr-review-sub-agent-delegation for the action definition and sets use-sub-agents: true, but the action's action.yml checks out the extensions repo at extensions-version (which defaults to main) for the actual Python script it runs:

# action.yml checks out at the extensions-version input (default: main)
- uses: actions/checkout@v4
  with:
    repository: OpenHands/extensions
    ref: ${{ inputs.extensions-version }}   # <-- defaults to "main"
    path: extensions

# Then runs the script from that checkout
- run: python ../extensions/plugins/pr-review/scripts/agent_script.py

Since OpenHands/extensions#164 hasn't been merged to main yet, the script that actually executes is the old main branch version (~928 lines) which has no sub-agent code — not the feature branch version (~1062 lines).

Evidence from PR #2886 CI logs:

  • USE_SUB_AGENTS=true is set ✅
  • Action downloaded from @feat/pr-review-sub-agent-delegation
  • But no "Sub-agent delegation enabled" log message appears ❌
  • Agent created with only [terminal, file_editor, task_tracker] — no TaskToolSet
  • Only a single conversation ran (no sub-agent delegation) ❌

Fix

Explicitly pass extensions-version: feat/pr-review-sub-agent-delegation so the checkout matches the action branch and the sub-agent code is available at runtime.


This PR was created by an AI assistant (OpenHands) on behalf of the user.

@xingyaoww can click here to continue refining the PR


Agent Server images for this PR

GHCR package: https://github.com/OpenHands/agent-sdk/pkgs/container/agent-server

Variants & Base Images

Variant Architectures Base Image Docs / Tags
java amd64, arm64 eclipse-temurin:17-jdk Link
python amd64, arm64 nikolaik/python-nodejs:python3.13-nodejs22-slim Link
golang amd64, arm64 golang:1.21-bookworm Link

Pull (multi-arch manifest)

# Each variant is a multi-arch manifest supporting both amd64 and arm64
docker pull ghcr.io/openhands/agent-server:ad109e1-python

Run

docker run -it --rm \
  -p 8000:8000 \
  --name agent-server-ad109e1-python \
  ghcr.io/openhands/agent-server:ad109e1-python

All tags pushed for this build

ghcr.io/openhands/agent-server:ad109e1-golang-amd64
ghcr.io/openhands/agent-server:ad109e1-golang_tag_1.21-bookworm-amd64
ghcr.io/openhands/agent-server:ad109e1-golang-arm64
ghcr.io/openhands/agent-server:ad109e1-golang_tag_1.21-bookworm-arm64
ghcr.io/openhands/agent-server:ad109e1-java-amd64
ghcr.io/openhands/agent-server:ad109e1-eclipse-temurin_tag_17-jdk-amd64
ghcr.io/openhands/agent-server:ad109e1-java-arm64
ghcr.io/openhands/agent-server:ad109e1-eclipse-temurin_tag_17-jdk-arm64
ghcr.io/openhands/agent-server:ad109e1-python-amd64
ghcr.io/openhands/agent-server:ad109e1-nikolaik_s_python-nodejs_tag_python3.13-nodejs22-slim-amd64
ghcr.io/openhands/agent-server:ad109e1-python-arm64
ghcr.io/openhands/agent-server:ad109e1-nikolaik_s_python-nodejs_tag_python3.13-nodejs22-slim-arm64
ghcr.io/openhands/agent-server:ad109e1-golang
ghcr.io/openhands/agent-server:ad109e1-java
ghcr.io/openhands/agent-server:ad109e1-python

About Multi-Architecture Support

  • Each variant tag (e.g., ad109e1-python) is a multi-arch manifest supporting both amd64 and arm64
  • Docker automatically pulls the correct architecture for your platform
  • Individual architecture tags (e.g., ad109e1-python-amd64) are also available if needed

The pr-review workflow uses @feat/pr-review-sub-agent-delegation for
the action definition, but the action.yml checks out the extensions repo
at extensions-version (default: main) for the actual script.
Since extensions#164 is not merged to main yet, the script from main
has no sub-agent code — so USE_SUB_AGENTS=true is silently ignored.

Fix: explicitly set extensions-version: feat/pr-review-sub-agent-delegation
so the checkout matches the action branch and the sub-agent code path
is actually available at runtime.

Co-authored-by: openhands <openhands@all-hands.dev>
@github-actions
Copy link
Copy Markdown
Contributor

Python API breakage checks — ✅ PASSED

Result:PASSED

Action log

@github-actions
Copy link
Copy Markdown
Contributor

REST API breakage checks (OpenAPI) — ✅ PASSED

Result:PASSED

Action log

@xingyaoww xingyaoww added the review-this This label triggers a PR review by OpenHands label Apr 20, 2026 — with OpenHands AI
Copy link
Copy Markdown
Collaborator

@all-hands-bot all-hands-bot left a comment

Choose a reason for hiding this comment

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

LGTM! Clean fix aligning the script checkout with the action branch. The comments clearly explain the temporary workaround until extensions#164 merges to main.

@xingyaoww xingyaoww marked this pull request as ready for review April 20, 2026 16:34
@xingyaoww xingyaoww merged commit a6e3639 into main Apr 20, 2026
52 of 54 checks passed
@xingyaoww xingyaoww deleted the fix/pr-review-extensions-version branch April 20, 2026 16:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review-this This label triggers a PR review by OpenHands

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants