Skip to content

Reject concurrent reuse of active handler IDs - #738

Merged
adrianlyjak merged 1 commit into
run-llama:mainfrom
Whxuan0701:fix/active-handler-conflict
Aug 22, 2026
Merged

adrianlyjak merged 1 commit into
run-llama:mainfrom
Whxuan0701:fix/active-handler-conflict

Conversation

@Whxuan0701

Copy link
Copy Markdown
Contributor

Summary

  • reject HTTP workflow starts that reuse a currently active handler ID
  • return 409 Conflict with a stable, actionable error from both blocking and non-blocking run endpoints
  • keep terminal handler ID reuse intact for existing state-handoff workflows
  • add endpoint regression coverage and a patch changeset for llama-agents-server

Validation

  • uv run pytest packages/llama-agents-server/tests -n0 (447 passed, 32 deselected)
  • uv run pytest packages/llama-agents-appserver/tests -n0 (107 passed)
  • uv run ruff format --check packages/llama-agents-server/src/llama_agents/server packages/llama-agents-server/tests/server
  • uv run ruff check packages/llama-agents-server/src/llama_agents/server packages/llama-agents-server/tests/server
  • uv run ty check packages/llama-agents-server/src/llama_agents/server/_service.py packages/llama-agents-server/src/llama_agents/server/_api.py packages/llama-agents-server/tests/server/test_server_endpoints.py
  • git diff --check origin/main...HEAD

Known gaps

The store lookup and handler creation are not a cross-process compare-and-set operation. This change closes the existing HTTP service path mismatch and does not claim distributed atomicity.

The full-repository pre-commit run could not complete locally because the workspace environment does not include optional AgentCore, Control Plane, and llamactl dependencies. The checks scoped to the affected server and appserver packages pass.

@changeset-bot

changeset-bot Bot commented Aug 18, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: fec5803

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
llama-agents-server Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@Whxuan0701
Whxuan0701 marked this pull request as ready for review August 18, 2026 09:52
@adrianlyjak

Copy link
Copy Markdown
Contributor

Thanks, this is great. I've been meaning to add this. Another related functionality to this is to be able to specify a run ID for idempotency. In that case, I think we can just return some sort of 200 response if the run ID already exists and skip the 409. But this is a great first step .

@adrianlyjak
adrianlyjak merged commit 0ca383f into run-llama:main Aug 22, 2026
61 checks passed
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.

2 participants