🧪 Server Compliance — A2A TCK

A2A Test Compatibility Kit results for AgentBin SpecAgent (Go SDK) • Tested: 2026-04-04 02:18:57 UTC
What is this? The A2A TCK is a conformance test suite that validates A2A server implementations against the A2A specification. Failures indicate Go SDK gaps — not SpecAgent bugs.
Overall
52.2%
59 pass • 54 fail • 48 skip
Mandatory
49.4%
39 pass • 40 fail • 37 skip
Capabilities
0%
0 pass • 0 fail
Skipped
48
auth, gRPC, etc.

❌ Failing Tests (54)

mandatory 40 failing
TestCategoryTransportError
test_push_notification_not_supported_error_32003_enhancedmandatoryjsonrpcrestTypeError: transport_create_task_push_notification_config() takes from 2 to 3 positional arguments but 4 were given
test_extended_agent_card_method_existsmandatoryjsonrpcrestAssertionError: assert ('401' in '[REST] Unexpected error in REST get_extended_agent_card: [REST] REST transport error: HTTP 404: 404 page not found\n
test_core_method_mapping_compliancemandatoryjsonrpcrestFailed: Core method mapping test failed on jsonrpc: 'task'
test_message_send_valid_textmandatoryjsonrpcrestAssertionError: Message send failed: {'error': {'code': -32001, 'message': 'Task not found'}} assert False + where False = is_json_rpc_success_respo
test_message_send_invalid_paramsmandatoryjsonrpcrestAssertionError: Expected InvalidParamsError (-32602), got -32001 assert -32001 == -32602
test_message_send_continue_taskmandatoryjsonrpcrestAssertionError: Failed to extract task ID from response assert None is not None
test_task_history_lengthmandatoryjsonrpcrestKeyError: 'task'
test_list_all_tasksmandatoryjsonrpcrestKeyError: 'task'
test_list_tasks_empty_when_none_existmandatoryjsonrpcrestAssertionError: tasks/list failed: {'jsonrpc': '2.0', 'id': '2e58539c-9654-4c02-a5d1-b161065fde0d', 'error': {'code': -31401, 'message': 'unauthentica
test_list_tasks_validates_required_fieldsmandatoryjsonrpcrestKeyError: 'task'
test_list_tasks_sorted_by_timestamp_descendingmandatoryjsonrpcrestKeyError: 'task'
test_filter_by_context_idmandatoryjsonrpcrestKeyError: 'task'
test_filter_by_statusmandatoryjsonrpcrestKeyError: 'task'
test_filter_by_last_updated_aftermandatoryjsonrpcrestKeyError: 'task'
test_combined_filtersmandatoryjsonrpcrestKeyError: 'task'
test_default_page_sizemandatoryjsonrpcrestAssertionError: tasks/list failed: {'jsonrpc': '2.0', 'id': '41adb3ee-3a4f-4088-95ec-096b5a36b739', 'error': {'code': -31401, 'message': 'unauthentica
test_custom_page_sizemandatoryjsonrpcrestKeyError: 'task'
test_page_token_navigationmandatoryjsonrpcrestKeyError: 'task'
test_last_page_detectionmandatoryjsonrpcrestKeyError: 'task'
test_total_size_accuracymandatoryjsonrpcrestKeyError: 'task'
test_history_length_zeromandatoryjsonrpcrestKeyError: 'task'
test_history_length_custommandatoryjsonrpcrestKeyError: 'task'
test_history_length_exceeds_actualmandatoryjsonrpcrestKeyError: 'task'
test_artifacts_excluded_by_defaultmandatoryjsonrpcrestKeyError: 'task'
test_artifacts_included_when_requestedmandatoryjsonrpcrestKeyError: 'task'
test_invalid_page_token_errormandatoryjsonrpcrestAssertionError: Invalid pageToken should return -32602, got -31401 assert -31401 == -32602 + where -31401 = <built-in method get of dict object at 0
test_invalid_status_errormandatoryjsonrpcrestAssertionError: Invalid status should return -32602, got -31401 assert -31401 == -32602 + where -31401 = <built-in method get of dict object at 0x00
test_negative_page_size_errormandatoryjsonrpcrestAssertionError: Negative pageSize should return -32602, got -31401 assert -31401 == -32602 + where -31401 = <built-in method get of dict object at 0
test_zero_page_size_errormandatoryjsonrpcrestAssertionError: pageSize=0 should return -32602, got -31401 assert -31401 == -32602 + where -31401 = <built-in method get of dict object at 0x000002
test_out_of_range_page_size_errormandatoryjsonrpcrestAssertionError: pageSize > 100 should return -32602, got -31401 assert -31401 == -32602 + where -31401 = <built-in method get of dict object at 0x00
test_default_page_size_is_50mandatoryjsonrpcrestKeyError: 'task'
test_negative_history_length_errormandatoryjsonrpcrestAssertionError: Negative historyLength should return -32602, got -31401 assert -31401 == -32602 + where -31401 = <built-in method get of dict object
test_invalid_timestamp_errormandatoryjsonrpcrestAssertionError: Invalid timestamp should return -32602, got -32700 assert -32700 == -32602 + where -32700 = <built-in method get of dict object at 0
test_extended_card_access_controlsmandatoryjsonrpcrestFailed: SECURITY VIOLATION: Extended Agent Card accessible without authentication. A2A v0.3.0 Section 9.1 requires authentication for extended cards.
test_message_sending_equivalencemandatoryjsonrpcrestAssertionError: Message sending failed on all transports: ['HTTP/JSON-RPC'] assert 0 > 0 + where 0 = len([])
test_agent_card_access_equivalencemandatoryjsonrpcrestAssertionError: Agent Card access failed on all transports assert 0 > 0 + where 0 = len([])
test_concurrent_operation_equivalencemandatoryjsonrpcrestAssertionError: No concurrent operations succeeded across any transport assert 0 > 0 + where 0 = len([])
test_tasks_cancel_validmandatoryjsonrpcrestAssertionError: Failed to extract task ID from task creation response assert None is not None
test_tasks_get_validmandatoryjsonrpcrestAssertionError: Failed to extract task ID from task creation response assert None is not None
test_tasks_get_with_history_lengthmandatoryjsonrpcrestAssertionError: Failed to extract task ID from task creation response assert None is not None
quality 11 failing
TestCategoryTransportError
test_parallel_requestsqualityjsonrpcrestAssertionError: All parallel requests failed - poor concurrency handling assert 0 > 0
test_rapid_sequential_requestsqualityjsonrpcrestAssertionError: Too many failures: 0 out of 10 succeeded assert 0 > (10 * 0.8)
test_concurrent_operations_same_taskqualityjsonrpcrestKeyError: 'task'
test_empty_arraysqualityjsonrpcrestAssertionError: Should return InvalidParams error code assert -32001 == -32602
test_null_optional_fieldsqualityjsonrpcrestKeyError: 'task'
test_unicode_and_special_charsqualityjsonrpcrestKeyError: 'task'
test_boundary_valuesqualityjsonrpcrestKeyError: 'task'
test_streaming_reconnection_simulationqualityjsonrpcrestKeyError: 'task'
test_partial_update_recoveryqualityjsonrpcrestKeyError: 'task'
test_task_state_transitionsqualityjsonrpcrestKeyError: 'task'
test_task_cancel_state_handlingqualityjsonrpcrestKeyError: 'task'
features 2 failing
TestCategoryTransportError
test_empty_message_partsfeaturesjsonrpcrestAssertionError: Expected error code -32602 (Invalid params) or -32603 (Internal error) for empty parts, but got: -32001 (Both codes are valid for vali
test_missing_required_message_fieldsfeaturesjsonrpcrestAssertionError: Expected InvalidParams error code -32602 for missing messageId, but got: -32001 (Spec: InvalidParamsError) assert -32001 == -32602
transport-equivalence 1 failing
TestCategoryTransportError
test_same_error_handling_invalid_paramstransport-equivalencecross-transportAssertionError: Error code mismatch for invalid params: jsonrpc=-32602 vs rest=-32001 assert -32001 == -32602

✅ Passing Tests (59)

TestCategoryTransport
test_fetch_agent_card_successfeaturesjsonrpcrest
test_fetch_agent_card_not_foundfeaturesjsonrpcrest
test_fetch_agent_card_invalid_jsonfeaturesjsonrpcrest
test_get_sut_rpc_endpointfeaturesjsonrpcrest
test_get_capability_streamingfeaturesjsonrpcrest
test_get_capability_push_notificationsfeaturesjsonrpcrest
test_get_supported_modalitiesfeaturesjsonrpcrest
test_get_authentication_schemesfeaturesjsonrpcrest
test_invalid_file_partfeaturesjsonrpcrest
test_very_large_messagefeaturesjsonrpcrest
test_file_part_without_mimetypefeaturesjsonrpcrest
test_reference_task_ids_invalidfeaturesjsonrpcrest
test_a2a_error_code_coverage_summarymandatoryjsonrpcrest
test_a2a_error_code_coverage_enhancedmandatoryjsonrpcrest
test_rejects_malformed_jsonmandatoryjsonrpc
test_rejects_invalid_json_rpc_requests[invalid_request0--32600]mandatoryjsonrpc
test_rejects_invalid_json_rpc_requests[invalid_request1--32600]mandatoryjsonrpc
test_rejects_invalid_json_rpc_requests[invalid_request2--32601]mandatoryjsonrpc
test_rejects_invalid_json_rpc_requests[invalid_request3--32600]mandatoryjsonrpc
test_rejects_invalid_json_rpc_requests[invalid_request4--32602]mandatoryjsonrpc
test_rejects_unknown_methodmandatoryjsonrpc
test_rejects_invalid_paramsmandatoryjsonrpc
test_duplicate_request_idsmandatoryjsonrpc
test_invalid_jsonrpc_versionmandatoryjsonrpc
test_missing_method_fieldmandatoryjsonrpc
test_raw_invalid_jsonmandatoryjsonrpc
test_transport_specific_method_namingmandatoryjsonrpcrest
test_transport_compliance_validationmandatoryjsonrpcrest
test_required_method_availabilitymandatoryjsonrpcrest
test_transport_specific_featuresmandatoryjsonrpcrest
test_comprehensive_a2a_v030_compliancemandatoryjsonrpcrest
test_agent_card_availablemandatoryjsonrpcrest
test_mandatory_fields_presentmandatoryjsonrpcrest
test_mandatory_field_typesmandatoryjsonrpcrest
test_agent_card_mandatory_fieldsmandatoryjsonrpcrest
test_agent_card_capabilities_mandatorymandatoryjsonrpcrest
test_agent_card_skills_mandatorymandatoryjsonrpcrest
test_agent_card_input_output_modes_mandatorymandatoryjsonrpcrest
test_agent_card_basic_info_mandatorymandatoryjsonrpcrest
test_tasks_cancel_nonexistentmandatoryjsonrpcrest
test_tasks_get_nonexistentmandatoryjsonrpcrest
test_invalid_method_error_validationmandatoryjsonrpcrest
test_invalid_params_error_validationmandatoryjsonrpcrest
test_nonexistent_resource_error_validationmandatoryjsonrpcrest
test_error_consistency_across_methodsmandatoryjsonrpcrest
test_error_response_completenessmandatoryjsonrpcrest
test_public_agent_card_access_controlmandatoryjsonrpcrest
test_sensitive_information_protectionmandatoryjsonrpcrest
test_auth_required_state_supportmandatoryjsonrpcrest
test_error_handling_equivalencemandatoryjsonrpcrest
test_performance_equivalencemandatoryjsonrpcrest
test_very_long_stringqualityjsonrpcrest
test_unexpected_json_typesqualityjsonrpcrest
test_extra_fieldsqualityjsonrpcrest
test_identical_functionality_message_sendtransport-equivalencecross-transport
test_same_error_handling_task_not_foundtransport-equivalencecross-transport
test_error_response_structure_equivalencetransport-equivalencecross-transport
test_method_mapping_compliancetransport-equivalencecross-transport
test_identical_functionality_message_streamtransport-equivalencecross-transport

⏭️ Skipped (48)

TestCategoryTransportReason
test_reference_task_ids_validfeaturesjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\features\\test_reference_task_ids.py', 40, 'Skipped: Failed to create reference task')
test_security_scheme_structure_compliancemandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\authentication\\test_auth_compliance_v030.py', 50, 'Skipped: No security schemes declared')
test_authentication_transport_consistencymandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\authentication\\test_auth_compliance_v030.py', 145, 'Skipped: No security schemes declared')
test_security_error_response_compliancemandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\authentication\\test_auth_compliance_v030.py', 226, 'Skipped: No security schemes declared')
test_oauth2_metadata_url_validationmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\authentication\\test_auth_compliance_v030.py', 357, 'Skipped: No security schemes declared')
test_mutual_tls_scheme_declarationmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\authentication\\test_auth_compliance_v030.py', 430, 'Skipped: No security schemes declared')
test_authentication_required_when_declaredmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\authentication\\test_auth_enforcement.py', 56, 'Skipped: No authentication schemes declared in Ag
test_invalid_credentials_rejectedmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\authentication\\test_auth_enforcement.py', 150, 'Skipped: No authentication schemes declared in A
test_authentication_scheme_consistencymandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\authentication\\test_auth_enforcement.py', 260, 'Skipped: No authentication schemes declared in A
test_push_notification_not_supported_error_32003mandatoryjsonrpc('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\jsonrpc\\test_a2a_error_codes.py', 144, 'Skipped: SUT appears to support push notifications despi
test_unsupported_operation_error_32004mandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\jsonrpc\\test_a2a_error_codes.py', 274, 'Skipped: Could not trigger UnsupportedOperationError (-3
test_content_type_not_supported_error_32005mandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\jsonrpc\\test_a2a_error_codes.py', 373, 'Skipped: Could not trigger ContentTypeNotSupportedError
test_invalid_agent_response_error_32006mandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\jsonrpc\\test_a2a_error_codes.py', 423, 'Skipped: InvalidAgentResponseError (-32006) is an intern
test_unsupported_operation_error_32004_enhancedmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\jsonrpc\\test_a2a_error_codes_enhanced.py', 241, 'Skipped: Could not trigger -32004 error - SUT h
test_content_type_not_supported_error_32005_enhancedmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\jsonrpc\\test_a2a_error_codes_enhanced.py', 332, 'Skipped: Could not trigger -32005 error - SUT a
test_invalid_agent_response_error_32006_enhancedmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\jsonrpc\\test_a2a_error_codes_enhanced.py', 402, 'Skipped: Could not trigger -32006 error - SUT r
test_multi_transport_method_mappingmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\protocol\\test_a2a_v030_transport_compliance.py', 140, 'Skipped: Multi-transport method mapping r
test_authentication_scheme_validationmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_agent_card_security.py', 196, 'Skipped: No security schemes declared - cannot test
test_security_scheme_consistencymandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_agent_card_security.py', 403, 'Skipped: No security schemes declared - cannot test
test_certificate_chain_trust_validationmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_certificate_validation.py', 88, 'Skipped: Certificate validation tests only applic
test_hostname_verificationmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_certificate_validation.py', 201, 'Skipped: Certificate validation tests only appli
test_certificate_revocation_statusmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_certificate_validation.py', 336, 'Skipped: Certificate revocation tests only appli
test_invalid_certificate_rejectionmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_certificate_validation.py', 425, 'Skipped: Certificate rejection tests only applic
test_certificate_security_headersmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_certificate_validation.py', 532, 'Skipped: Certificate security headers only appli
test_in_task_authentication_workflowmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_in_task_authentication.py', 247, 'Skipped: Agent did not require in-task authentic
test_authentication_challenge_headersmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_in_task_authentication.py', 275, 'Skipped: No authentication schemes declared - ca
test_invalid_authentication_handlingmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_in_task_authentication.py', 372, 'Skipped: No authentication schemes declared - ca
test_auth_state_transitionsmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_in_task_authentication.py', 484, 'Skipped: Could not create test task for authenti
test_tls_protocol_version_securitymandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_tls_configuration_enhanced.py', 146, 'Skipped: TLS configuration tests only applic
test_cipher_suite_security_analysismandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_tls_configuration_enhanced.py', 228, 'Skipped: TLS configuration tests only applic
test_certificate_chain_validationmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_tls_configuration_enhanced.py', 321, 'Skipped: TLS configuration tests only applic
test_tls_security_featuresmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_tls_configuration_enhanced.py', 483, 'Skipped: TLS configuration tests only applic
test_tls_implementation_best_practicesmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_tls_configuration_enhanced.py', 554, 'Skipped: TLS configuration tests only applic
test_https_required_productionmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_transport_security.py', 81, 'Skipped: HTTPS requirement skipped for localhost/test
test_tls_certificate_validationmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_transport_security.py', 148, 'Skipped: Certificate validation relaxed for testing
test_tls_configuration_securitymandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_transport_security.py', 247, 'Skipped: TLS configuration check relaxed for testing
test_http_to_https_redirectmandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\security\\test_transport_security.py', 341, 'Skipped: HTTP redirect test skipped for localhost/te
test_task_retrieval_equivalencemandatoryjsonrpcrest('D:\\github\\a2aproject\\a2a-tck\\tests\\mandatory\\transport\\test_multi_transport_equivalence.py', 235, 'Skipped: Task creation did not return vali
test_identical_functionality_tasks_gettransport-equivalencecross-transport('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\multi_transport\\test_functional_equivalence.py', 104, 'Skipped: Cannot extract task ID from respo
test_consistent_behavior_message_sendtransport-equivalencecross-transport('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\multi_transport\\test_functional_equivalence.py', 177, 'Skipped: Need at least 2 successful respon
test_consistent_behavior_tasks_gettransport-equivalencecross-transport('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\multi_transport\\test_functional_equivalence.py', 215, 'Skipped: Cannot extract task ID from respo
test_identical_functionality_tasks_canceltransport-equivalencecross-transport('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\multi_transport\\test_functional_equivalence.py', 281, 'Skipped: Cannot extract task ID from respo
test_consistent_behavior_tasks_canceltransport-equivalencecross-transport('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\multi_transport\\test_functional_equivalence.py', 325, 'Skipped: Cannot extract task ID from respo
test_same_error_handling_method_not_foundtransport-equivalencecross-transport('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\multi_transport\\test_functional_equivalence.py', 473, 'Skipped: Method not found error testing re
test_same_error_handling_task_not_cancelabletransport-equivalencecross-transport('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\multi_transport\\test_functional_equivalence.py', 535, 'Skipped: Cannot extract task ID from respo
test_equivalent_authentication_agent_cardtransport-equivalencecross-transport('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\multi_transport\\test_functional_equivalence.py', 720, 'Skipped: Need at least 2 agent card respon
test_identical_functionality_tasks_resubscribetransport-equivalencecross-transport('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\multi_transport\\test_functional_equivalence.py', 868, 'Skipped: Cannot extract task ID from respo
test_streaming_response_equivalencetransport-equivalencecross-transport('D:\\github\\a2aproject\\a2a-tck\\tests\\optional\\multi_transport\\test_functional_equivalence.py', 965, 'Skipped: Need at least 2 streaming respons

⚠️ Errors (3)

TestCategoryTransportError
test_tasks_cancel_validmandatoryjsonrpcrestAssertionError: Failed to extract task ID from task creation response assert None is not None
test_tasks_get_validmandatoryjsonrpcrestAssertionError: Failed to extract task ID from task creation response assert None is not None
test_tasks_get_with_history_lengthmandatoryjsonrpcrestAssertionError: Failed to extract task ID from task creation response assert None is not None