Skip to content

More logging#3871

Closed
tofarr wants to merge 1 commit into
mainfrom
debug-conversation-service
Closed

More logging#3871
tofarr wants to merge 1 commit into
mainfrom
debug-conversation-service

Conversation

@tofarr

@tofarr tofarr commented Jun 24, 2026

Copy link
Copy Markdown
Collaborator

HUMAN:


AGENT:

Why

Summary

Issue Number

How to Test

Video/Screenshots

Type

  • Bug fix
  • Feature
  • Refactor
  • Breaking change
  • Docs / chore

Notes


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:39a9f07-python

Run

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

All tags pushed for this build

ghcr.io/openhands/agent-server:39a9f07-golang-amd64
ghcr.io/openhands/agent-server:39a9f0710aec2de32bdcfc9546eee73a60737e3e-golang-amd64
ghcr.io/openhands/agent-server:debug-conversation-service-golang-amd64
ghcr.io/openhands/agent-server:39a9f07-golang_tag_1.21-bookworm-amd64
ghcr.io/openhands/agent-server:39a9f07-golang-arm64
ghcr.io/openhands/agent-server:39a9f0710aec2de32bdcfc9546eee73a60737e3e-golang-arm64
ghcr.io/openhands/agent-server:debug-conversation-service-golang-arm64
ghcr.io/openhands/agent-server:39a9f07-golang_tag_1.21-bookworm-arm64
ghcr.io/openhands/agent-server:39a9f07-java-amd64
ghcr.io/openhands/agent-server:39a9f0710aec2de32bdcfc9546eee73a60737e3e-java-amd64
ghcr.io/openhands/agent-server:debug-conversation-service-java-amd64
ghcr.io/openhands/agent-server:39a9f07-eclipse-temurin_tag_17-jdk-amd64
ghcr.io/openhands/agent-server:39a9f07-java-arm64
ghcr.io/openhands/agent-server:39a9f0710aec2de32bdcfc9546eee73a60737e3e-java-arm64
ghcr.io/openhands/agent-server:debug-conversation-service-java-arm64
ghcr.io/openhands/agent-server:39a9f07-eclipse-temurin_tag_17-jdk-arm64
ghcr.io/openhands/agent-server:39a9f07-python-amd64
ghcr.io/openhands/agent-server:39a9f0710aec2de32bdcfc9546eee73a60737e3e-python-amd64
ghcr.io/openhands/agent-server:debug-conversation-service-python-amd64
ghcr.io/openhands/agent-server:39a9f07-nikolaik_s_python-nodejs_tag_python3.13-nodejs22-slim-amd64
ghcr.io/openhands/agent-server:39a9f07-python-arm64
ghcr.io/openhands/agent-server:39a9f0710aec2de32bdcfc9546eee73a60737e3e-python-arm64
ghcr.io/openhands/agent-server:debug-conversation-service-python-arm64
ghcr.io/openhands/agent-server:39a9f07-nikolaik_s_python-nodejs_tag_python3.13-nodejs22-slim-arm64
ghcr.io/openhands/agent-server:39a9f07-golang
ghcr.io/openhands/agent-server:39a9f0710aec2de32bdcfc9546eee73a60737e3e-golang
ghcr.io/openhands/agent-server:debug-conversation-service-golang
ghcr.io/openhands/agent-server:39a9f07-golang_tag_1.21-bookworm
ghcr.io/openhands/agent-server:39a9f07-java
ghcr.io/openhands/agent-server:39a9f0710aec2de32bdcfc9546eee73a60737e3e-java
ghcr.io/openhands/agent-server:debug-conversation-service-java
ghcr.io/openhands/agent-server:39a9f07-eclipse-temurin_tag_17-jdk
ghcr.io/openhands/agent-server:39a9f07-python
ghcr.io/openhands/agent-server:39a9f0710aec2de32bdcfc9546eee73a60737e3e-python
ghcr.io/openhands/agent-server:debug-conversation-service-python
ghcr.io/openhands/agent-server:39a9f07-nikolaik_s_python-nodejs_tag_python3.13-nodejs22-slim

About Multi-Architecture Support

  • Each variant tag (e.g., 39a9f07-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., 39a9f07-python-amd64) are also available if needed

@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

@tofarr tofarr marked this pull request as draft June 24, 2026 15:26

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

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

⚠️ QA Report: PASS WITH ISSUES

Functional behavior was verified end-to-end: the PR adds the expected conversation-service startup logs while the agent server still starts and serves /server_info.

Does this PR achieve its stated goal?

Yes. The PR description is still an empty template, so I treated the title, “More logging,” as the stated goal. Running the real agent-server, creating a conversation through POST /api/conversations, then restarting with that persisted conversation showed the base branch starts without the new ConversationService:__aenter__ lines, while this PR logs both the conversations directory and the persisted meta.json path at INFO level.

Phase Result
Environment Setup make build completed successfully; no tests/linters were run locally.
CI Status ⚠️ GitHub checks showed 21 passing, 7 pending, 2 failing (pre-commit, PR description), 1 skipped at review time.
Functional Verification ✅ Started the real agent server, made HTTP requests, created a conversation, and verified before/after startup logs.
Functional Verification

Test 1: Agent server still starts and serves a real request on the PR branch

Step 1 — Establish baseline / entry point:
The changed behavior is in conversation-service startup, so I exercised it through the actual user-facing server command rather than importing internals.

Step 2 — Apply the PR's changes:
Checked out debug-conversation-service at 39a9f0710aec2de32bdcfc9546eee73a60737e3e.

Step 3 — Run the server and request /server_info:
Ran:

OH_LOG_LEVEL=INFO OH_SECRET_KEY=qa-secret OPENHANDS_SUPPRESS_BANNER=1 uv run agent-server
curl -fsS http://127.0.0.1:8000/server_info

Observed:

{"title":"OpenHands Agent Server","version":"1.29.2","sdk_version":"1.29.2", ...}

This confirms the PR did not prevent the real agent server from starting and serving HTTP requests.

Test 2: Before/after logging with a real persisted conversation

Step 1 — Reproduce / establish baseline without the fix:
First I created a conversation through the actual API on the PR branch:

curl -H 'Content-Type: application/json'   -H 'X-Session-API-Key: qa-secret'   --data '{"workspace":{"kind":"LocalWorkspace","working_dir":"/tmp/oh-qa-workspace-created"},"agent":{"kind":"Agent","llm":{"model":"openai/gpt-4o-mini","api_key":"sk-test-not-used"},"tools":[{"name":"terminal"}]}}'   http://127.0.0.1:8000/api/conversations

Observed:

HTTP_STATUS:201
workspace/conversations/9d28e621dc7649ea9a815af620fd14cb/meta.json

Then I checked out main and restarted the same server against that persisted conversation:

git checkout main
OH_LOG_LEVEL=INFO OH_SECRET_KEY=qa-secret OPENHANDS_SUPPRESS_BANNER=1 uv run agent-server
curl -fsS http://127.0.0.1:8000/server_info

Selected base logs:

Server initialization complete - ready to serve requests
Application startup complete.

This shows the server starts successfully on base, but the selected startup output does not include the new ConversationService:__aenter__ INFO messages.

Step 2 — Apply the PR's changes:
Checked out debug-conversation-service again, keeping the same persisted conversation directory.

Step 3 — Re-run with the fix in place:
Ran the same startup/request flow:

OH_LOG_LEVEL=INFO OH_SECRET_KEY=qa-secret OPENHANDS_SUPPRESS_BANNER=1 uv run agent-server
curl -fsS http://127.0.0.1:8000/server_info

Selected PR logs:

Server initialization complete - ready to serve requests
ConversationService:__aenter__:conversations_dir:workspace/conversations
ConversationService:__aenter__:meta_file:workspace/conversations/9d28e621dc7649ea9a815af620fd14cb/meta.json
Application startup complete.

This confirms the PR achieves the “More logging” goal on the real startup path, including the persisted-conversation meta.json discovery path, while the server remains responsive.

Issues Found

  • ⚠️ CI: Functional QA passed, but GitHub checks were not green at review time: pre-commit and PR Description Check / Validate PR description were failing, with several build/QA checks still pending. I did not rerun tests, linters, or pre-commit locally per QA instructions.

AI-generated QA review posted by OpenHands on behalf of the requester.

@tofarr tofarr closed this Jun 25, 2026
@tofarr tofarr deleted the debug-conversation-service branch June 25, 2026 20:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants