Skip to content

Add VAID A2A extension sample - #734

Open
solara-associates wants to merge 1 commit into
a2aproject:mainfrom
solara-associates:feat/vaid-extension
Open

solara-associates wants to merge 1 commit into
a2aproject:mainfrom
solara-associates:feat/vaid-extension

Conversation

@solara-associates

Copy link
Copy Markdown

Summary

Adds extensions/vaid/, a sample for the VAID A2A extension discussed in
a2aproject/A2A#2028: actorChain stays the attribution-only audit record,
and VAID is one concrete, offline-checkable proof a hop's
proof_ref/credentialRef can point to (signed, attenuated, revocable).

  • README.md: what it is in plain words, how to run it, real output.
  • v1/spec.md: links the canonical spec at solara-associates/vaid
    docs/a2a/v1/extension.md rather than duplicating it here.
  • v1/samples/python/: minimal runnable sample. Mints a VAID, attaches it
    to an A2A message, verifies two requested actions: one accepted, one
    refused for being out of scope. Installs vaid-a2a from PyPI.

Structured to mirror extensions/secure-passport/.

Test plan

  • Ran in a fresh venv via pip install vaid-a2a
  • Ran in a fresh venv via pip install -e . against the sample's own
    pyproject.toml
  • uv run ruff check / uv run ruff format --check against
    .ruff.toml (one pre-existing-pattern warning, same as
    secure-passport's own run.py)

VAID is a signed, attenuated, revocable delegation document that fills
the proof_ref/credentialRef slot a2aproject/A2A#2028's actorChain thread
converged on: actorChain stays the attribution-only audit record, VAID
is one resolvable proof a hop's credentialRef can point to.

extensions/vaid/README.md explains the extension in plain words and how
to run the sample. v1/spec.md links to the canonical spec at
solara-associates/vaid rather than duplicating it. The Python sample
mints a VAID, attaches it to an A2A message, and verifies two requested
actions (one accepted, one refused for being out of scope) using the
published vaid-a2a package from PyPI.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

This branch has not been deployed

No deployments
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