{
  "schema_version": "ecz-schema-index-v1",
  "site": "ECZ-ID Developer Gateway",
  "canonical_url": "https://developers.ecocitizenz.com",
  "role": "documentation_and_routing",
  "description": "Machine-readable index of the ECZ-ID Action Envelope Stack schemas and example instances. Developer Gateway documents and routes. It does not create or change verification state, host checkout, or replace the public proof surface.",
  "human_guidance_url": "https://developers.ecocitizenz.com/schemas/action-envelopes/",
  "json_schema_dialect": "https://json-schema.org/draft/2020-12/schema",
  "action_envelope_stack": [
    {
      "name": "Resolver Action Envelope",
      "role": "Universal public proof / action metadata. Read-only projection.",
      "schema": "https://developers.ecocitizenz.com/schemas/action-envelopes/resolver-action-envelope.schema.json",
      "human_guidance_url": "https://developers.ecocitizenz.com/action-envelope/resolver/"
    },
    {
      "name": "MCP Action Envelope",
      "role": "MCP / tool / server posture improvement path. Route-only, read-only.",
      "schema": "https://developers.ecocitizenz.com/schemas/action-envelopes/mcp-action-envelope.schema.json",
      "human_guidance_url": "https://developers.ecocitizenz.com/action-envelope/mcp/",
      "example": "https://developers.ecocitizenz.com/schemas/action-envelopes/examples/mcp-unresolved.json"
    },
    {
      "name": "Agent Action Envelope",
      "role": "Agent / KYA / operator / principal posture path. Route-only, read-only.",
      "schema": "https://developers.ecocitizenz.com/schemas/action-envelopes/agent-action-envelope.schema.json",
      "human_guidance_url": "https://developers.ecocitizenz.com/action-envelope/agent/",
      "example": "https://developers.ecocitizenz.com/schemas/action-envelopes/examples/agent-unresolved.json"
    },
    {
      "name": "Reciprocal Reliance Envelope",
      "role": "Both-sides agent and MCP / tool context. Read-only. Presents public posture and guidance only.",
      "schema": "https://developers.ecocitizenz.com/schemas/action-envelopes/reciprocal-reliance-envelope.schema.json",
      "human_guidance_url": "https://developers.ecocitizenz.com/action-envelope/reciprocal-reliance/",
      "examples": [
        "https://developers.ecocitizenz.com/schemas/action-envelopes/examples/reciprocal-both-resolved.json",
        "https://developers.ecocitizenz.com/schemas/action-envelopes/examples/reciprocal-both-unresolved.json",
        "https://developers.ecocitizenz.com/schemas/action-envelopes/examples/reciprocal-mcp-resolved-agent-unresolved.json"
      ]
    }
  ],
  "supporting_contracts": [
    {
      "name": "Request-to-Resolve local guidance packet",
      "role": "Locally generated guidance packet. Not signed and not created server-side. Routes only.",
      "schema": "https://developers.ecocitizenz.com/schemas/action-envelopes/request-to-resolve.schema.json",
      "human_guidance_url": "https://developers.ecocitizenz.com/request-resolver-proof/"
    },
    {
      "name": "AP2/UCP Checkout-Readiness Metadata",
      "role": "Optional readiness metadata for agentic-commerce checkout handoff to TrustOps. Not a passport, not an endorsement, not platform-approved. Missing metadata never blocks checkout.",
      "schema": "https://developers.ecocitizenz.com/schemas/action-envelopes/ap2-ucp-readiness.schema.json"
    },
    {
      "name": "Resolver Re-check Contract",
      "role": "Re-check semantics for verifiers. Resolver unavailable must not be read as proof. REQUIRE fails closed.",
      "schema": "https://developers.ecocitizenz.com/schemas/action-envelopes/resolver-recheck-contract.schema.json",
      "example": "https://developers.ecocitizenz.com/schemas/action-envelopes/examples/resolver-recheck-contract.json"
    },
    {
      "name": "TrustOps Product / Action Manifest",
      "role": "Machine-readable routing manifest. Route-only. Does not create checkout, entitlement, or public proof.",
      "schema": "https://developers.ecocitizenz.com/schemas/action-envelopes/trustops-product-action-manifest.schema.json",
      "instance": "https://developers.ecocitizenz.com/schemas/acquisition-manifest.json"
    }
  ],
  "role_boundaries": {
    "developer_gateway": "Documents and routes. Does not host checkout, does not create or change verification state, does not act as a public proof surface.",
    "trustops": "Setup, payment, and lifecycle.",
    "resolver": "Public proof surface for current state.",
    "verifier": "Reads public manifests and Resolver. Returns ResultState and ReasonCodes. Does not create or change verification state."
  },
  "forbidden_inferences": [
    "safety",
    "certification",
    "approval",
    "insurance",
    "full_compliance",
    "platform_endorsement"
  ],
  "policy": {
    "local_policy_decides": true,
    "recheck_before_reliance": true,
    "no_safety_or_approval_inference": true,
    "public_note": "Public proof appears only after ECZ-ID Core activation/provisioning, not at checkout alone."
  }
}
