Skip to content

Attribute HITL plan-review requests to SWE-AF via sender manifest#80

Merged
AbirAbbas merged 1 commit into
mainfrom
feat/hitl-sender-attribution
Jun 19, 2026
Merged

Attribute HITL plan-review requests to SWE-AF via sender manifest#80
AbirAbbas merged 1 commit into
mainfrom
feat/hitl-sender-attribution

Conversation

@AbirAbbas

Copy link
Copy Markdown
Collaborator

Summary

SWE-AF created plan-review-v2 HITL requests through the hax Python SDK without passing a sender, so the hax-sdk hub rendered them as "Unknown sender".

This adds a sender manifest to the request kwargs in swe_af/app.py (where hax_create_kwargs is built), attributing the request to the agent node:

"sender": {
    "key": os.getenv("HAX_SENDER_KEY", os.getenv("HAX_SENDER_NAME") or NODE_ID),
    "display_name": os.getenv("HAX_SENDER_NAME") or NODE_ID,
},
  • Defaults to the node's own identity (NODE_ID, default swe-planner).
  • Env-overridable via HAX_SENDER_KEY and HAX_SENDER_NAME.
  • The hax SDK normalizes a plain {key, display_name} dict into the wire SenderManifest, so a dict is sufficient.

Scope

Single file, minimal change: swe_af/app.py only.

Gates

make check (= pytest tests/ -x -q + compileall swe_af/) run locally on Python 3.12 (matching CI).

🤖 Generated with Claude Code

SWE-AF created plan-review-v2 HITL requests without a sender, so hax-sdk's
hub rendered them as "Unknown sender". Pass a sender={key, display_name}
defaulting to NODE_ID, overridable via HAX_SENDER_KEY / HAX_SENDER_NAME.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@AbirAbbas AbirAbbas merged commit 5a8a3f9 into main Jun 19, 2026
2 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.

1 participant