EcoCitizenZ
HomeAction EnvelopeResolver Action Envelope™
Variant · Resolver

Resolver Action Envelope™

Produced when a public Resolver lookup is the source. The envelope carries a ResultState, ReasonCodes, and a resolver_url that the relying party can re-fetch before reliance.

When this envelope is produced

  • A verifier or a relying party fetches a public Resolver record for an exact ECZ-ID target.
  • The result is wrapped in a canonical envelope so downstream systems can interpret it uniformly.

Example envelope

Resolver Action Envelope (illustrative)
{
  "schema_version": "action-envelope-v1",
  "envelope_type": "resolver",
  "target_type": "agent_credential",
  "target_value": "<ECZ-XX-XXXXXX::AGENT-XXXXXX>",
  "result_state": "RESOLVER_VERIFIABLE",
  "reason_codes": [],
  "resolver_url": "https://resolver.ecocitizenz.org/p/<...>",
  "machine_json_url": "https://resolver.ecocitizenz.org/p/<...>.json",
  "recommended_next_steps": [
    "Re-check before reliance.",
    "Apply local policy."
  ],
  "developer_guidance_url": "https://developers.ecocitizenz.com/action-envelope/resolver",
  "policy_mode": "PREFER",
  "local_policy_decides": true,
  "recheck_before_reliance": true,
  "no_safety_or_approval_inference": true
}

Action Envelope field reference

FieldTypePurpose
schema_versionstringEnvelope schema version, for example action-envelope-v1.
envelope_typestringOne of resolver, mcp, agent, reciprocal_reliance.
target_typestringWhat is being checked, for example mcp_server, agent_credential, api_passport, package, domain, sbom.
target_valuestringCanonical identifier or URL for the target.
result_stateenumOne of the 18 canonical ResultStates.
reason_codesstring[]Granular reason codes that explain the ResultState.
resolver_urlstringPublic Resolver URL for the target, where available.
machine_json_urlstringMachine-readable JSON URL for the target, where available.
recommended_next_stepsstring[]Suggested next steps for the relying party. Guidance only.
trustops_action_urlstringTrustOps handoff URL for setup or lifecycle, where applicable.
developer_guidance_urlstringDeveloper Gateway guidance URL for the target type.
policy_modeenumOPEN, PREFER, or REQUIRE — the relying party local policy mode.
local_policy_decidesbooleanAlways true. The relying party decides the outcome locally.
recheck_before_reliancebooleanAlways true. Re-check Resolver before any high-risk action.
no_safety_or_approval_inferencebooleanAlways true. The envelope is not a safety or approval claim.

The envelope is not proof authority

An Action Envelope is a transport for guidance. It carries a ResultState and ReasonCodes, points at the Resolver for proof, and points at TrustOps for setup. It is not itself proof authority. Resolver remains the public proof surface for current state.

No overclaim posture

  • No public resolver proof found yet does not mean unsafe.
  • Re-check before reliance.
  • Local policy decides.
  • The verifier does not create or change verification state.
ECZ-ID separates setup, verification state, and public proof so operators can prepare evidence and relying parties can re-check before they act. TrustOps handles setup. Resolver remains the public proof surface. The verifier does not create or change verification state. Start setup in TrustOps when you operate the target. Share resolver guidance when you do not. Local policy decides. Re-check before reliance.