Skip to content

feat: Add client-side extension support #1898

feat: Add client-side extension support

feat: Add client-side extension support #1898

Triggered via pull request October 29, 2025 10:12
Status Failure
Total duration 49s
Artifacts

linter.yaml

on: pull_request
Lint Code Base
46s
Lint Code Base
Fit to window
Zoom out
Zoom in

Annotations

9 errors and 8 notices
Lint Code Base
Process completed with exit code 1.
Lint Code Base
6 errors
Lint Code Base: src/a2a/client/client_factory.py#L94
Argument of type "list[ClientCallInterceptor]" cannot be assigned to parameter "client_extensions" of type "list[str] | None" in function "__init__"   Type "list[ClientCallInterceptor]" is not assignable to type "list[str] | None"     "list[ClientCallInterceptor]" is not assignable to "list[str]"       Type parameter "_T@list" is invariant, but "ClientCallInterceptor" is not the same as "str"       Consider switching from "list" to "Sequence" which is covariant     "list[ClientCallInterceptor]" is not assignable to "None" (reportArgumentType)
Lint Code Base: src/a2a/client/client_factory.py#L93
Argument of type "str" cannot be assigned to parameter "interceptors" of type "list[ClientCallInterceptor] | None" in function "__init__"   Type "str" is not assignable to type "list[ClientCallInterceptor] | None"     "str" is not assignable to "list[ClientCallInterceptor]"     "str" is not assignable to "None" (reportArgumentType)
Lint Code Base: src/a2a/client/client_factory.py#L91
Argument of type "list[str] | None" cannot be assigned to parameter "agent_card" of type "AgentCard | None" in function "__init__"   Type "list[str] | None" is not assignable to type "AgentCard | None"     Type "list[str]" is not assignable to type "AgentCard | None"       "list[str]" is not assignable to "AgentCard"       "list[str]" is not assignable to "None" (reportArgumentType)
Lint Code Base: src/a2a/client/client_factory.py#L83
Argument of type "list[ClientCallInterceptor]" cannot be assigned to parameter "client_extensions" of type "list[str] | None" in function "__init__"   Type "list[ClientCallInterceptor]" is not assignable to type "list[str] | None"     "list[ClientCallInterceptor]" is not assignable to "list[str]"       Type parameter "_T@list" is invariant, but "ClientCallInterceptor" is not the same as "str"       Consider switching from "list" to "Sequence" which is covariant     "list[ClientCallInterceptor]" is not assignable to "None" (reportArgumentType)
Lint Code Base: src/a2a/client/client_factory.py#L82
Argument of type "str" cannot be assigned to parameter "interceptors" of type "list[ClientCallInterceptor] | None" in function "__init__"   Type "str" is not assignable to type "list[ClientCallInterceptor] | None"     "str" is not assignable to "list[ClientCallInterceptor]"     "str" is not assignable to "None" (reportArgumentType)
Lint Code Base: src/a2a/client/client_factory.py#L80
Argument of type "list[str] | None" cannot be assigned to parameter "agent_card" of type "AgentCard | None" in function "__init__"   Type "list[str] | None" is not assignable to type "AgentCard | None"     Type "list[str]" is not assignable to type "AgentCard | None"       "list[str]" is not assignable to "AgentCard"       "list[str]" is not assignable to "None" (reportArgumentType)
Lint Code Base
Process completed with exit code 1.
Lint Code Base
repository contains 22 duplications. 7 duplications were part of this PR and were annotated
Copy/pasted code: src/a2a/client/transports/rest.py#L18
see src/a2a/client/transports/grpc.py (20-40)
Copy/pasted code: src/a2a/client/transports/rest.py#L83
see src/a2a/client/transports/jsonrpc.py (102-110)
Copy/pasted code: src/a2a/client/transports/jsonrpc.py#L102
see src/a2a/client/transports/rest.py (83-90)
Copy/pasted code: src/a2a/client/transports/rest.py#L58
see src/a2a/client/transports/jsonrpc.py (76-102)
Copy/pasted code: src/a2a/client/transports/jsonrpc.py#L76
see src/a2a/client/transports/rest.py (58-84)
Copy/pasted code: src/a2a/client/transports/rest.py#L41
see src/a2a/client/transports/jsonrpc.py (60-68)
Copy/pasted code: src/a2a/client/transports/jsonrpc.py#L60
see src/a2a/client/transports/rest.py (41-49)