a2aproject / a2aproject/a2a-python
[Bug]: `A2A-Version` validation ignores minor versions and the query parameter
- Lenguaje dominante
- Python
- Estrellas
- 2.1k
- Forks
- 496
- Merge medio
- 4 d 17 h
- PR fusionados (30 d)
- 12
Descripción
### What happened?
The specification says:
> “Agents MUST process requests using the semantics of the requested `A2A-Version` (matching `Major.Minor`).”
and
> “Clients MAY provide the `A2A-Version` as a request parameter instead of a header.”
The implementation seems to miss both points.
1. The code compares only `major`:
```python
return actual_v.major == expected_v.major
```
2. The query parameter is ignored.
```python
actual_version = headers.get(
constants.VERSION_HEADER
) or headers.get(constants.VERSION_HEADER.lower())
if not actual_version:
return constants.PROTOCOL_VERSION_0_3
return str(actual_version)
```
A similar issue existed: https://github.com/a2aproject/a2a-python/issues/856 but it was not *fully* fixed.
### Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Guía de contribución
Evaluación
Este issue todavía no se ha evaluado.