Skip to content

[Bug]: resolveAgentCard() fails in pure multi-tenant setup with no default @PublicAgentCard #1182

Description

@ehsavoie

What happened?

When all @PublicAgentCard beans carry a @tenant qualifier and no un-qualified default exists, JSONRPCHandler.resolveAgentCard() (and the equivalent in RestHandler) throws IllegalStateException("No agent card configured") on every RPC call.

The capability guards (streaming, push notifications, extended agent card, version/extension validation) all go through resolveAgentCard() → AgentCardValidator.resolveWithFallback() → CdiUtils.resolveDefault(), which skips every @Tenant-qualified bean and returns null.

Meanwhile getAgentCard(tenant) works correctly because it delegates to the AgentCardRouter.

Affected code:

  • JSONRPCHandler.resolveAgentCard() (line 783)
  • RestHandler has the same pattern
  • AgentCardValidator.resolveWithFallback() — no router fallback

Relevant log output

Code of Conduct

  • I agree to follow this project's Code of Conduct

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions