-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Bug Description
If I validate the following record with https://schema.oasf.outshift.com/0.3.1/api/validate/object/agent?missing_recommended=false
It errors out saying that "Required attribute "class_name" is missing." However, if I remove the extension altogether then the document passes. Not sure if it's getting confused with the skills at the card level or what's going on there :)
(Btw, if 0.3.1 goes away, that is ok too :) )
{
"schema_version": "0.3.1",
"name": "example_geo/planner_agent",
"version": "v1.2.1",
"description": "Provides advanced route planning, traffic analysis, and custom map generation services. This agent can calculate optimal routes, estimate travel times considering real-time traffic, and create personalized maps with points of interest.",
"authors": [
"Example Geo Services Inc."
],
"skills": [
{
"category_uid": 1,
"class_uid": 10204,
"category_name": "Natural Language Processing",
"class_name": "Dialogue Generation"
},
{
"category_uid": 1,
"class_uid": 10201,
"category_name": "Natural Language Processing",
"class_name": "Text Completion"
},
{
"category_uid": 1,
"class_uid": 10203,
"category_name": "Natural Language Processing",
"class_name": "Text Paraphrasing"
},
{
"category_uid": 1,
"class_uid": 10303,
"category_name": "Natural Language Processing",
"class_name": "Knowledge Synthesis"
},
{
"category_uid": 1,
"class_uid": 10206,
"category_name": "Natural Language Processing",
"class_name": "Text Style Transfer"
},
{
"category_uid": 1,
"class_uid": 10602,
"category_name": "Natural Language Processing",
"class_name": "Tone and Style Adjustment"
}
],
"created_at": "2024-01-15T10:00:00Z",
"locators": [
{
"type": "source-code",
"url": "https://github.com/agntcy/agentic-apps/tree/main/marketing-campaign"
},
{
"type": "python-package",
"url": "https://github.com/agntcy/agentic-apps/tree/main/marketing-campaign/pyproject.toml"
}
],
"extensions": [
{
"schema": "schema.oasf.agntcy.org/features/a2a",
"version": "v1.0.0",
"data": {
"additionalInterfaces": [
{
"transport": "JSONRPC",
"url": "https://georoute-agent.example.com/a2a/v1"
},
{
"transport": "GRPC",
"url": "https://georoute-agent.example.com/a2a/grpc"
},
{
"transport": "HTTP+JSON",
"url": "https://georoute-agent.example.com/a2a/json"
}
],
"capabilities": {
"pushNotifications": true,
"stateTransitionHistory": false,
"streaming": true
},
"defaultInputModes": [
"application/json",
"text/plain"
],
"defaultOutputModes": [
"application/json",
"image/png"
],
"description": "Provides advanced route planning, traffic analysis, and custom map generation services. This agent can calculate optimal routes, estimate travel times considering real-time traffic, and create personalized maps with points of interest.",
"documentationUrl": "https://docs.examplegeoservices.com/georoute-agent/api",
"iconUrl": "https://georoute-agent.example.com/icon.png",
"name": "GeoSpatial Route Planner Agent",
"preferredTransport": "JSONRPC",
"protocolVersion": "0.2.9",
"provider": {
"organization": "Example Geo Services Inc.",
"url": "https://www.examplegeoservices.com"
},
"security": [
{
"google": [
"openid",
"profile",
"email"
]
}
],
"securitySchemes": {
"google": {
"openIdConnectUrl": "https://accounts.google.com/.well-known/openid-configuration",
"type": "openIdConnect"
}
},
"signatures": [
{
"protected": "eyJhbGciOiJFUzI1NiIsInR5cCI6IkpPU0UiLCJraWQiOiJrZXktMSIsImprdSI6Imh0dHBzOi8vZXhhbXBsZS5jb20vYWdlbnQvandrcy5qc29uIn0",
"signature": "QFdkNLNszlGj3z3u0YQGt_T9LixY3qtdQpZmsTdDHDe3fXV9y9-B3m2-XgCpzuhiLt8E0tV6HXoZKHv4GtHgKQ"
}
],
"skills": [
{
"description": "Calculates the optimal driving route between two or more locations, taking into account real-time traffic conditions, road closures, and user preferences (e.g., avoid tolls, prefer highways).",
"examples": [
"Plan a route from '1600 Amphitheatre Parkway, Mountain View, CA' to 'San Francisco International Airport' avoiding tolls.",
"{\"origin\": {\"lat\": 37.422, \"lng\": -122.084}, \"destination\": {\"lat\": 37.7749, \"lng\": -122.4194}, \"preferences\": [\"avoid_ferries\"]}"
],
"id": "route-optimizer-traffic",
"inputModes": [
"application/json",
"text/plain"
],
"name": "Traffic-Aware Route Optimizer",
"outputModes": [
"application/json",
"application/vnd.geo+json",
"text/html"
],
"tags": [
"maps",
"routing",
"navigation",
"directions",
"traffic"
]
},
{
"description": "Creates custom map images or interactive map views based on user-defined points of interest, routes, and style preferences. Can overlay data layers.",
"examples": [
"Generate a map of my upcoming road trip with all planned stops highlighted.",
"Show me a map visualizing all coffee shops within a 1-mile radius of my current location."
],
"id": "custom-map-generator",
"inputModes": [
"application/json"
],
"name": "Personalized Map Generator",
"outputModes": [
"image/png",
"image/jpeg",
"application/json",
"text/html"
],
"tags": [
"maps",
"customization",
"visualization",
"cartography"
]
}
],
"supportsAuthenticatedExtendedCard": true,
"url": "https://georoute-agent.example.com/a2a/v1",
"version": "1.2.0"
}
}
],
"signature": {
"algorithm": "SHA2_256",
"signature": "MEQCIDrSGlDTu2qWn+7Oi//F+TDoy8kBtzidmsWuijSDP2LwAiBvhyxddZoi0oSRn8cmLw032ESFDVnTLj5xgj/MZVaG+w==",
"certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNwVENDQVl3Q0NRRGdTdDJPRGU4RHN6QU5CZ2txaGtpRzl3MEJBUXNGQURBU01CMEdBMVVFQXd3S1pYaGgKYlhCc1pTNWpiMjB3SGhjTk1qUXdPREUwTVRReU56TTNXaGNOTWpVd09ERTBNVFF5TnpNM1dqQVNNUkF3RGdZRApWUVFEREFkbGVHRnRjR3hsTUI0d0RRWUpLb1pJaHZjTkFRRUJCUUFEZ1kwQU1JR0pBb0dCQUsrVnJOOW9xVW5kCk9seUF4S1hrTDNJdFpUUkpjYStHdHpjcTNGWEtNSDZJdVN6d1M3ZVhNQ2FWc0cxNDM2M1RQTE1WdVBvSVlmZ2EKZ1NWNEQ0T1FkU25JZFZiV3FkMGtOYUhYWFNvbzZhdFZTZVphWTJZZjY1N0hxREp0eFpYaUtMaCtRMHBPYjkrSApsY0J5eDNSTWgxSFQzcklzOFJVVlBPbWttNFJ6QWdNQkFBRXdEUVlKS29aSWh2Y05BUUVGQlFBRGdZRUFLM0g1CnBkVjMwZmxMc3BhV09YS1E4SDN0L0R0dUlmdWdRZGNSQitubGxDRWhnZXNCcVFiOXA0VVViVVlqL1hYVkppbk8KRnNMVEZUaFFHeTg3b2YvZ0tQQUZCTVJJOGRLRXpTdHFXeTExZUNDRDlGTUkrTWZmU2V1U3U1SHZCM3FwZzgxZQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0t",
"content_type": "application/vnd.dev.sigstore.bundle.v0.3+json",
"content_bundle": "eyJtZWRpYVR5cGUiOiJhcHBsaWNhdGlvbi92bmQuZGV2LnNpZ3N0b3JlLmJ1bmRsZS52MC4zK2pzb24iLCJ2ZXJpZmljYXRpb25NYXRlcmlhbCI6eyJwdWJsaWNLZXkiOnsiaGludCI6Inl6ZTZtNjdnNC85RWFtTERGdE1tUVliSE1HQkdRTFZFU05vMDRqNVBXNTQ9In19LCJtZXNzYWdlU2lnbmF0dXJlIjp7Im1lc3NhZ2VEaWdlc3QiOnsiYWxnb3JpdGhtIjoiU0hBMl8yNTYiLCJkaWdlc3QiOiIvNEZrU1hEbGVjOVNMNmM2c3NMZ202MmFVb21JRnZ0VTRBQnBnTE1ONzlJPSJ9LCJzaWduYXR1cmUiOiJNRVFDSURyU0dsRFR1MnFXbis3T2kvL0YrVERveThrQnR6aWRtc1d1aWpTRFAyTHdBaUJ2aHl4ZGRab2kwb1NSbjhjbUx3MDMyRVNGRFZuVExqNXhnai9NWlZhRyt3PT0ifX0=",
"signed_at": "2025-08-14T14:27:37-04:00"
}
}
Expected Behavior
I would expect this record to pass the validator. I'm not sure how to map the affected version below to v0.3.1
Affected Version
v1.0.0
Steps to Reproduce
Validate the record in the description against the link in the description
Checklist
- I have read the contributing guidelines
- I have verified this does not duplicate an existing issue
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working