Skip to main content

Module method

Module method 

Source
Expand description

The A2A v1.0 service methods, mirrored from the ratified specification.

§Why this exists

Before 2026-08-11 the eleven method names lived only as string literals in the dispatchers’ match arms, and every other place that needed the set — the conformance runner, the examples, the docs — re-derived it by hand. Nothing checked those copies against each other, so a claim like “this example exercises every method” had no denominator to be measured against and could not be falsified. Two of the repository’s examples carried exactly that claim while driving four of the eleven.

§This list is not this project’s opinion

A coverage denominator invented by the thing being measured is worth nothing to a reviewer — it can be trimmed until the numerator looks good, and no one outside can tell. So Method::ALL is not the source of truth; it is a mirror of one, and the mirror is checked:

  1. The ratified spec artifact. service A2AService in proto/a2a_v1/a2a.proto declares exactly these eleven RPCs. The all_matches_the_ratified_proto test in this module parses that file at test time and asserts set equality in both directions — a method here that the proto does not declare fails, and a proto RPC missing here fails. (Named rather than linked: it lives in a #[cfg(test)] module, which rustdoc does not document, so a link to it is unresolvable and cargo doc runs with -D warnings.)
  2. That artifact is itself guarded. scripts/check_proto_copies.sh asserts all vendored copies of the proto are byte-identical, so the file this test reads cannot quietly diverge from the one the gRPC binding is generated from.
  3. An independent second source. a2aproject/a2a-tck — written by the specification’s owners, not by this project — names the same eleven. The Official TCK workflow re-derives the set from the freshly cloned suite on every run and fails if it disagrees with the proto, so the cross-check is live rather than a claim made once in a commit message.

A reviewer wanting to audit the denominator therefore reads proto/a2a_v1/a2a.proto, not this file. Verified 2026-08-11 against a2aproject/a2a-tck@5996b79: both sources yield the same eleven names.

Enums§

Method
One of the eleven A2A v1.0 service methods (spec §8).