Skip to content

training-agent: re-add identity.brand_json_url emit after 3.1 SDK pin bump #3842

@bokelley

Description

@bokelley

Background

#3690 added identity.brand_json_url to get_adcp_capabilities and wired the training agent to emit it (plus identity.key_origins.request_signing when signing is supported). The emit was reverted in the same PR (commit 89c38e74c) because the storyboard runner uses @adcp/sdk's pinned ADCP_VERSION='3.0.1' to fetch the response schema from adcontextprotocol.org/schemas/3.0.1/..., and that published schema doesn't have the new field.

The right fix is a coordinated SDK version bump after 3.1 ships. This issue tracks re-adding the emit then.

What's already in place

Re-add when

  1. AdCP 3.1 published (currently 219 changesets queued, no published timeline).
  2. @adcp/sdk bumps ADCP_VERSION to a 3.1.x release that includes identity.brand_json_url in the published schema bundle.

Implementation

Re-add the overrides.identity block in framework-server.ts and the inline identity block in task-handlers.ts handleGetAdcpCapabilities. Both were deferred in the same commit (89c38e74c2); the diff to revert is small and self-contained. Verify the storyboard runner accepts the new field by re-running framework + legacy storyboards on a PR.

After re-add, the e2e script's HTTP mode (npx tsx scripts/e2e-resolve-training-agent.ts http://localhost:3000) should resolve the chain end-to-end against the live training agent — currently only --inproc works because the production agent doesn't emit the field.

Related

Acceptance

  • @adcp/sdk bumped to a 3.1.x version that includes identity.brand_json_url in its bundled schemas
  • framework-server.ts overrides.identity block restored
  • task-handlers.ts handleGetAdcpCapabilities identity block restored
  • Storyboard runner accepts the new field (framework + legacy dispatch)
  • E2E script HTTP mode resolves against the live training agent

Metadata

Metadata

Assignees

No one assigned

    Labels

    addieIssues related to Addie (via any channel)bugSomething isn't workingclaude-triagedIssue has been triaged by the Claude Code triage routine. Remove to re-triage.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions