Overview
The AIP Conformance Test Suite provides test vectors for validating implementations of the Agent Identity Protocol. Any implementation claiming AIP conformance must pass all tests at their claimed conformance level.Conformance tests ensure interoperability across different AIP implementations and guarantee adherence to the specification.
Conformance Levels
AIP defines five conformance levels, each building on the previous:| Level | Description | Test Files | API Version |
|---|---|---|---|
| Basic | Minimum viable implementation | basic/*.yaml | v1alpha1+ |
| Full | Complete feature support | Basic + full/*.yaml | v1alpha1+ |
| Extended | Human-in-the-loop support | Full + extended/*.yaml | v1alpha1+ |
| Identity | Token lifecycle management | Extended + identity/*.yaml | v1alpha2+ |
| Server | HTTP validation endpoints | Identity + server/*.yaml | v1alpha2+ |
Level Details
Basic
Tool allowlists, blocking, error codes, and default deny behavior
Full
Argument validation, DLP scanning, rate limiting, and Unicode normalization
Extended
Human approval dialogs (ask action) and timeout handling
Identity
Agent Authentication Tokens (AAT), session binding, and token rotation
Server
HTTP validation endpoints, TLS, and distributed policy enforcement
Test Categories
Basic Conformance
basic/authorization.yaml
What it tests:
- Tool allowlist enforcement
- Tool blocking via
tool_rules - Default deny behavior (fail-closed)
- Monitor mode vs. enforce mode
- Tools in
allowed_toolsare allowed - Tools NOT in
allowed_toolsare blocked - Blocked tools remain blocked even if in allowlist
- Monitor mode logs violations but allows requests
basic/methods.yaml
What it tests:
- Method-level authorization
- Method allowlist and denylist
- Default allowed methods
Full Conformance
full/arguments.yaml
What it tests:
- Regex validation on tool arguments
- Strict args mode (unexpected arguments)
- Type coercion and validation
full/normalization.yaml
What it tests:
- Unicode NFKC normalization for security
- Case-insensitive matching
- Whitespace handling
Extended Conformance
Identity Conformance (v1alpha2)
identity/tokens.yaml
What it tests:
- Agent Authentication Token (AAT) generation
- Token structure validation (JWT format)
- Token expiration and rotation
- Cryptographic signature verification
Server Conformance (v1alpha2)
server/endpoints.yaml
What it tests:
/validateHTTP endpoint request/response/healthendpoint/metricsendpoint format (Prometheus)
Running Conformance Tests
Test Vector Format
Each test file contains YAML test cases:Matching Rules
decision
Exact string match:
ALLOW, BLOCK, ASK, RATE_LIMITED, PROTECTED_PATHerror_code
Exact match:
-32001 (permission denied), -32002 (rate limited), or nullviolation
Boolean:
true if policy violation detected, false otherwiseDLP tests
Verify redaction occurred in response (e.g.,
AKIA****)Example: Running a Basic Test
Test Case
Test Execution
Current Implementation Conformance
| Implementation | Language | Conformance Level | Maintainer |
|---|---|---|---|
| go-proxy | Go | Full + Extended | @ArangoGutierrez |
v1alpha2 Support: Identity and Server conformance levels are currently in development. The Go proxy targets Full + Extended for v1alpha1.
Implementation Guidance
Recommended Implementation Order
Start with Basic
Implement core authorization:
- Tool allowlists (
allowed_tools) - Tool blocking (
action: block) - Default deny behavior
- Error code
-32001
Add Full support
Implement advanced features:
- Argument validation (regex patterns)
- DLP scanning
- Unicode NFKC normalization
- Rate limiting
Add Extended for production
Implement human-in-the-loop:
action: asksupport- OS approval dialogs (platform-specific)
- Timeout handling
Add Identity (optional)
Implement token management (v1alpha2):
- AAT generation and validation
- Session binding
- Token rotation
Schema Validation
Validate policy files against the JSON Schema before testing:Contributing Tests
When adding new conformance tests:Positive AND Negative
Include both success and failure cases
Edge Cases
Test empty strings, Unicode, null values
Documentation
Explain WHY the expected result is correct
Deterministic
Ensure tests produce consistent results
Test Contribution Process
Versioning
Test vectors are versioned alongside the specification:- v1alpha1 - Basic, Full, Extended
- v1alpha2 - Identity, Server (backward compatible with v1alpha1)
Backward Compatibility: Implementations supporting v1alpha2 MUST also pass all v1alpha1 tests.
Next Steps
Go Implementation
Reference implementation and SDK
Specification
Read the formal protocol definition
Policy Reference
Complete YAML schema guide
Contributing
Build your own AIP implementation
Resources
- Conformance Suite:
spec/conformance/ - JSON Schemas:
spec/schema/ - Reference Implementation: Go Proxy
- Submit Issues: GitHub Issues