Skip to content

fix(acp): forward resolved credential pool into ACP-created agents - #77029

Closed
kshitijk4poor wants to merge 1 commit into
NousResearch:mainfrom
kshitijk4poor:salvage/70293-acp-credential-pool
Closed

fix(acp): forward resolved credential pool into ACP-created agents#77029
kshitijk4poor wants to merge 1 commit into
NousResearch:mainfrom
kshitijk4poor:salvage/70293-acp-credential-pool

Conversation

@kshitijk4poor

Copy link
Copy Markdown
Collaborator

Summary

ACP-created AIAgent instances were missing the resolved credential_pool, preventing long-lived OpenAI Codex ACP sessions from using Hermes' in-process OAuth 401 refresh/rotation path.

Changes

  • acp_adapter/session.py: Forward runtime["credential_pool"] into ACP-created AIAgent instances (parity with gateway's _resolve_runtime_agent_kwargs)
  • tests/acp/test_session.py: Extend construction regression to assert the pool is retained

Validation

  • 15 ACP session tests pass
  • E2E: verified AIAgent.init accepts credential_pool, runtime_provider returns it, gateway already forwards it (this brings ACP to parity)

Credits @stefanpieter for the original fix.

@kshitijk4poor
kshitijk4poor enabled auto-merge (rebase) August 2, 2026 18:54
@alt-glitch alt-glitch added type/bug Something isn't working comp/acp Agent Communication Protocol adapter provider/openai OpenAI / Codex Responses API area/auth Authentication, OAuth, credential pools P2 Medium — degraded but workaround exists sweeper:risk-security-boundary Sweeper risk: may affect sandboxing, auth, credentials, or sensitive data labels Aug 2, 2026
@GottZ

GottZ commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

This was generated by AI during triage.

Summary

Two PRs address #70292 with the same focused change: both forward the resolved credential pool into ACP-created agents and add an identity-based regression assertion, directly fixing the missing pool handoff that disables OAuth recovery in long-lived ACP sessions.

Related pull requests

Duplicates

#70293 and #77029 implement substantially the same one-line ACP credential-pool handoff and the same regression assertion; #70293 is the original, now-closed implementation superseded by #77029.

Suggested consolidation

Keep #77029 open with the concrete salvage path of retaining the focused credential_pool handoff and its identity-based ACP construction regression test. Treat the already-closed #70293 as superseded by and duplicate of #77029; no additional implementation should be carried forward from it because its substantive diff is already present in #77029.

Complex graph

flowchart LR
    classDef open fill:#dbeafe,stroke:#1d4ed8,color:#1e3a8a
    classDef merged fill:#dcfce7,stroke:#15803d,color:#14532d
    classDef closed fill:#e5e7eb,stroke:#6b7280,color:#1f2937
    classDef unverified fill:#f3f4f6,stroke:#9ca3af,color:#374151
    classDef best stroke-width:3px,stroke:#b45309
    classDef target stroke-width:3px,stroke:#4338ca
    I70292(["issue #70292 (open)"])
    subgraph Dup70293 ["PRs duplicating each other"]
        P70293["PR #70293 (closed)"]
        P77029["PR #77029 (open)"]
    end
    P77029 -->|best fix| I70292
    class I70292 open
    class P70293 closed
    class P77029 open
    class P70293 best
    class P77029 best
    class P77029 target
    click I70292 "https://github.com/NousResearch/hermes-agent/issues/70292"
    click P70293 "https://github.com/NousResearch/hermes-agent/pull/70293"
    click P77029 "https://github.com/NousResearch/hermes-agent/pull/77029"
Loading

Graph: solid arrow = fixes / best fix, dashed arrow = partial or unverified (see edge label); boxed group = PRs duplicating each other; amber border = best fix; indigo border = target; gray node = closed (state tag in the node label).

Cross-PR triage: Reviewed 2 pull requests and 1 issue in this complex. Each diff was read against this issue; Assessment working set: 4 kB of PR diffs, 8 kB of issue/PR text, <1 kB of discussion (2 comments), 4 verify verdicts. verdicts reflect diff content, not PR titles. Part of an automated triage batch.

auto-merge was automatically disabled August 5, 2026 07:10

Pull request was closed

@kshitijk4poor
kshitijk4poor deleted the salvage/70293-acp-credential-pool branch August 5, 2026 07:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/auth Authentication, OAuth, credential pools comp/acp Agent Communication Protocol adapter P2 Medium — degraded but workaround exists provider/openai OpenAI / Codex Responses API sweeper:risk-security-boundary Sweeper risk: may affect sandboxing, auth, credentials, or sensitive data type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants