{"audit":{"version":"1.3","generated_at":"2026-05-22T23:08:42.604941+00:00","generated_by":"Agenstry","report_url":"https://agenstry.com/agents/shardlink-control-plane-6phhkg3f2q-ts.a.run.app","methodology_url":"https://agenstry.com/methodology","verifier_jwks_url":"https://agenstry.com/.well-known/jwks.json","subject":{"domain":"shardlink-control-plane-6phhkg3f2q-ts.a.run.app","name":"ShardLink Control Plane","url":"https://shardlink-control-plane-6phhkg3f2q-ts.a.run.app/.well-known/agent-card.json"}},"identity":{"provider":{"organization":"ShardLink","url":"https://shardlink.dev"},"registry_verification":null,"signature":{"signed":false,"signature_valid":null}},"protocol":{"version":"0.3.0","supports_streaming":true,"supports_push_notifications":false},"operational":{"live_state":"wrong_response","live_responds":false,"last_status_code":200,"last_elapsed_ms":530,"last_error":null},"track_record":{"first_seen":"2026-05-14T00:40:36.280130+00:00","last_checked":"2026-05-22T12:36:43.821845+00:00","last_seen_ok":"2026-05-22T12:36:43.821845+00:00","checks_total":34,"checks_ok":34,"uptime_pct":100.0,"archived":false,"archived_reason":null},"conformance":{"score":56,"grade":"D","summary":"D-grade: significant issues — auth-gated, partially broken, or stale.","criteria":[{"key":"valid_card","label":"Valid AgentCard","points":10,"max_points":10,"status":"pass","detail":"Schema-validated A2A AgentCard returned by the well-known endpoint."},{"key":"live_responds","label":"Live JSON-RPC","points":5,"max_points":25,"status":"fail","detail":"Endpoint replies but body isn't a valid JSON-RPC 2.0 A2A response."},{"key":"protocol_version","label":"Protocol version","points":5,"max_points":10,"status":"partial","detail":"Declares pre-1.0 A2A 0.3.0 (Google preview). Upgrade to v1.x for full points."},{"key":"signature","label":"JWS signature","points":0,"max_points":10,"status":"info","detail":"Card is unsigned (most published agents are)."},{"key":"uptime","label":"Uptime track record","points":15,"max_points":15,"status":"pass","detail":"34/34 probes succeeded (100% uptime)."},{"key":"skills","label":"Skill declaration","points":10,"max_points":10,"status":"pass","detail":"Declares 7 skills with structured metadata."},{"key":"verified_identity","label":"Verified Identity","points":5,"max_points":10,"status":"partial","detail":"Provider declared: ShardLink (https://shardlink.dev). Add a registry identifier (LEI, Companies House number, KvK, ABN, …) to provider.legalEntity for full verified-business credit."},{"key":"freshness","label":"Freshness + modern flags","points":4,"max_points":5,"status":"pass","detail":"seen in upstream source within 0d"},{"key":"security","label":"Security declaration","points":2,"max_points":5,"status":"partial","detail":"Declares 2 security scheme(s) but none use PKCE or mTLS."}]},"skills":[{"id":"discover_capability_graph","name":"Discover Capability Graph","description":"Return the latest or pinned ShardLink capability graph with MCP and A2A protocol surfaces.","tags":["discovery","contracts","capability-graph","mcp","a2a"],"examples":["Get the latest ShardLink capability graph.","Return capability graph version 2026-03-04.v1."],"inputModes":[],"outputModes":[]},{"id":"inspect_dual_plane_contract","name":"Inspect Dual Plane Contract","description":"Return the split-authority contract that defines ShardLink and SignalHub boundaries.","tags":["contracts","dual-plane","governance"],"examples":["Show the dual-plane contract.","Describe the ShardLink and SignalHub authority split."],"inputModes":[],"outputModes":[]},{"id":"inspect_error_catalog","name":"Inspect Error Catalog","description":"Return deterministic error metadata, retryability, and idempotency semantics for machine callers.","tags":["contracts","errors","retry","idempotency"],"examples":["List deterministic error metadata.","Show retryable ShardLink error codes."],"inputModes":[],"outputModes":[]},{"id":"list_action_descriptors","name":"List Action Descriptors","description":"Return the A2A action descriptor catalog derived from the canonical ShardLink capability graph.","tags":["discovery","actions","a2a","execution"],"examples":["List ShardLink A2A actions.","Show the action descriptors for machine execution."],"inputModes":[],"outputModes":[]},{"id":"invoke_capability_action","name":"Invoke Capability Action","description":"Proxy a capability action to the canonical REST route with preserved auth, lease, and idempotency behavior.","tags":["execution","rest","idempotency","leases"],"examples":["Invoke a public ShardLink capability action.","Call a ShardLink workspace action with path params and body."],"inputModes":[],"outputModes":[],"security":[{"bearerAuth":[]},{"controlPlaneAdminKey":[]}]},{"id":"read_workspace_status","name":"Read Workspace Status","description":"Inspect workspace objective, task, directory, and bridge-read surfaces through A2A.","tags":["status","workspace","tasks","bridge"],"examples":["Read a task status.","Read the workspace directory."],"inputModes":[],"outputModes":[]},{"id":"execute_provider_quote","name":"Execute Provider Quote","description":"Access provider quote and execution routes through A2A while preserving lease and funding policy.","tags":["providers","billing","execution","lease"],"examples":["Create a provider quote for a workspace.","Execute a provider quote with an idempotency key."],"inputModes":[],"outputModes":[],"security":[{"bearerAuth":[]},{"controlPlaneAdminKey":[]}]}],"provenance":[{"source":"mcp_registry","first_seen":"2026-05-14T00:40:36.280130+00:00"},{"source":"recrawl_hot","first_seen":"2026-05-14T03:34:35.446393+00:00"}],"recent_probes":[{"fetched_at":"2026-05-22T12:36:43.821845+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":530,"live_responds":false},{"fetched_at":"2026-05-22T06:24:01.572447+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":3469,"live_responds":false},{"fetched_at":"2026-05-21T16:13:51.101795+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":2837,"live_responds":false},{"fetched_at":"2026-05-20T17:14:29.145709+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":8234,"live_responds":false},{"fetched_at":"2026-05-20T09:53:54.604870+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":492,"live_responds":false},{"fetched_at":"2026-05-20T06:59:19.668348+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":6502,"live_responds":false},{"fetched_at":"2026-05-18T23:52:22.710211+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":515,"live_responds":false},{"fetched_at":"2026-05-18T14:58:40.493664+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":5644,"live_responds":false},{"fetched_at":"2026-05-18T12:49:49.676916+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":534,"live_responds":false},{"fetched_at":"2026-05-18T11:40:51.357718+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":589,"live_responds":false}],"catalog_attestation":null,"verification_history":[],"signatures":[{"protected":"eyJhbGciOiJFUzI1NiIsImprdSI6Imh0dHBzOi8vYWdlbnN0cnkuY29tLy53ZWxsLWtub3duL2p3a3MuanNvbiIsImtpZCI6ImFnZW50ZmluZGVyLWVzMjU2LTEiLCJ0eXAiOiJKT1NFIn0","signature":"_NCEj29kNOnmUapH-SskTs94yZS7mIU3SgHPY8sLWio4-pPE4duQbvECAu4DmLO3Vvee9-HqpxTxLCNckXfdmA"}]}