Skip to content

ECZ-ID · Reciprocal Trust Infrastructure for the Machine Economy

PLUGIN PASSPORT · TECHNICAL REFERENCE · 03/04Public customer resource

ECZ-ID Plugin Passport Technical Reference

Technical semantics for plugin/extension identity, publisher/organisation responsibility, bindings, version/lifecycle state, evidence, Resolver representation and integration.

Download PDF(PDF, 221 KB)

Release 2026.10 · 16 October 2026

About this document

Primary reader
Developer, architect, security engineer, integration engineer.
Secondary reader
Platform engineers, automated-system designers, software supply chain teams and technical evaluators.
When to read this
You understand the product and need to integrate or interpret Plugin Passport proof precisely.
Release
2026.10 · 16 October 2026
What you will know after reading
You can identify the canonical object, supported relationships/bindings, state/evidence semantics, machine route, lifecycle and safe failure behaviour.
What this document does not establish
This is not an internal schema dump and does not promise fields or evidence that the current canonical implementation does not expose.

NextRead the Operations Guide for lifecycle changes, stale context, duplicate prevention and troubleshooting.

CANONICAL OBJECT

What exactly does a Plugin Passport represent?

The canonical object is a plugin / extension / integration component - not the repository URL, store listing or package coordinate, version string, download URL or credential used to access it.

  • CANONICAL IDENTITY

    Persistent ECZ-ID representing the intended plugin/extension object across supported context changes.

  • EXTERNAL REFERENCES

    Store, repository/package, namespace, version, documentation and provider IDs are bindings/context.

OBJECT BOUNDARY A new plugin version does not automatically mean a new Plugin identity; a genuinely different plugin/extension/integration component should not inherit the same identity merely because it replaces the old one.

  • STABLE

    ECZ-ID where object continuity holds.

  • MUTABLE

    Bindings, version context, publisher relationship, state and evidence.

IDENTITY GRAPH

The Plugin ECZ-ID at the centre of bounded context

The graph should be read as relationships and evidence around a persistent identity - not as a universal trust score.

PLUGIN PASSPORT PROOF MODEL

What a Plugin Passport can prove and contextualise

A persistent plugin/extension identity with bounded publisher/organisation responsibility, store/repository/package and host/platform bindings, version/capability context and evidence that can be independently re-checked.

PERSISTENT

Plugin ECZ-ID

plugin / extension / integration identity

  • Organisation / Publisher

    responsibility context where supported

  • Repository / Package

    repository / source reference where present

  • Store / Package

    marketplace listing / package coordinate

  • Version / Capabilities

    version reference / declared capabilities

  • Provenance / Evidence

    source · scope · freshness where supported

  • Current Published State

    lifecycle · version operational context

  • Host / Platform

    host/platform relation where supported

  • ECZ-ID Resolver

    independent public re-check

Boundary: a Plugin Passport does not prove plugin safety, vulnerability-free status, package/build integrity or permission to install, enable or execute.

GRAPH READING LAW Each edge has its own scope. A repository binding does not prove publisher authority; publisher/organisation responsibility does not prove plugin safety; evidence does not become a blanket “trusted” verdict.

  • MACHINE CONSUMER

    Inspect only fields/relationships relevant to the decision.

  • HUMAN REVIEWER

    Read source, scope and freshness before drawing a conclusion.

PARENT, ORGANISATION AND PUBLISHER RELATION

Responsibility is represented as context, not universal assurance

Where present, a Parent/organisation relationship or publisher context links the Plugin object to the organisation claiming responsibility for it.

  • CAN ESTABLISH

    The record publishes the shown organisation/Parent or publisher/organisation responsibility context.

  • CANNOT ESTABLISH BY ITSELF

    That every version, capability, permission, dependency or third-party statement has been independently verified.

AUTHORITY NOTE Supported authority/delegation may be represented where present, but identity or publisher/organisation responsibility is not blanket authority for every host action, tool/API invocation or version decision.

  • USE RELATIONSHIP

    As bounded accountability context.

  • USE EVIDENCE

    To understand support, source and scope.

  • RE-CHECK

    When publisher/organisation responsibility is material.

  • DO NOT INFER

    Certification, plugin safety or version integrity beyond evidence.

BINDINGS

How the persistent identity connects to a changing plugin/extension supply chain

Bindings can associate the Plugin ECZ-ID with supported external surfaces and identifiers.

  • REPOSITORY

    Source/repository reference.

  • STORE / PACKAGE

    Marketplace/store listing or package coordinate/namespace where supported.

  • VERSION

    Plugin/extension version reference where supported.

  • HOST / PLATFORM

    Host/platform relationship or integration surface where supported.

  • PERMISSIONS / CAPABILITIES

    Declared permissions/capabilities where supported and evidenced.

  • OTHER SUPPORTED BINDING

    Additional store, repository/package, host or provider references represented by the canonical system.

SEMANTICS A binding says the ECZ-ID record is associated with the external surface according to current evidence/state. It does not make that surface the identity authority root.

VERSION, PERMISSIONS/CAPABILITIES AND CURRENT STATE

Separate persistent identity from mutable plugin and host context

Where supported, current state can carry point-in-time lifecycle and version family context while the Plugin ECZ-ID remains stable.

  • STATE MAY CHANGE

    Version, declared permissions/capabilities where supported, host/platform relationship, deprecation/withdrawal context, publisher relationship, bindings and evidence may change over time.

  • IDENTITY MAY PERSIST

    The same intended plugin/extension object can retain the ECZ-ID across those supported contextual changes.

FRESHNESS Do not cache a plugin trust conclusion indefinitely. Re-resolve when current version, publisher, host, permissions/capabilities or binding context matters.

  • CONSUMER PATTERN

    Read current state and evidence before a consequential install, enable, upgrade or invocation decision.

  • BOUNDARY

    Current state is not a guarantee of code behaviour, vulnerability status or future safety.

EVIDENCE AND PROVENANCE

Evidence supports bounded claims - it is not magic provenance

Evidence can support claims about plugin/extension identity, responsibility, bindings, version/capability context and other supported relationships according to source, scope and freshness.

  • REPOSITORY EVIDENCE

    Can support association to a source repository where represented.

  • REGISTRY EVIDENCE

    Can support association to a package-store listing or package coordinate.

  • VERSION EVIDENCE

    Can support bounded version relationships where represented.

  • PUBLISHER EVIDENCE

    Can support responsibility/publisher context where represented.

PROVENANCE BOUNDARY Do not infer signed-build provenance, reproducibility, artifact integrity, SBOM completeness or cryptographic attestation unless the specific evidence explicitly supports it.

AUTHORITY AND ADOPTION BOUNDARY

Identity is not permission to install or execute code

Some interactions require separate evidence/policy that a package may be adopted, upgraded, distributed or executed in a particular environment.

PRE-USE VERIFICATION

Verify identity and context before you adopt a plugin or extension

Use Passport proof as one input; keep package/signature verification, signature/package verification, permission review, vulnerability review and host/runt

  1. Step 1: Obtain Plugin ECZ-ID

    from store listing, docs, repository/package or publisher

  2. Step 2: Resolve

    confirm family/object and publisher context

  3. Step 3: Inspect bindings

    store, repository/package host + version refs

  4. Step 4: Check freshness

    state, evidence and current plugin context

  5. Step 5: Evaluate local controls

    permissions + signing / vulnerability + host policy

  6. Step 6: Decide

    allow, challenge, pin or deny

  7. Step 7: Re-check

    before consequential install or upgrade

Boundary: Plugin identity/proof does not replace plugin/package verification, vulnerability management, permissions review or host execution policy. If required proof is absent, stale or mismatched, challenge or deny rather than infer.

DECISION BOUNDARY Evaluate plugin/package signing/authentication, vulnerability status, host/organisation approval policy, approved versions, change control and runtime restrictions separately from Plugin identity.

  • PASSPORT CONTRIBUTION

    Which package is this and what bounded publisher/distribution/host context is current?

  • LOCAL CONTROLS

    Is this exact artifact/version permitted and safe enough for this environment?

RESOLVER REPRESENTATION

Public proof and machine-readable resolution

Resolver is the public, read-only proof surface. It is designed for independent re-check by humans and machines.

  • HUMAN USE

    Inspect ECZ-ID, family/object, organisation/Parent/publisher context, current state, bindings and evidence where present.

  • MACHINE USE

    GET https://api.ecocitizenz.com/api/p/{ecz_id}.json and evaluate only the returned fields relevant to policy.

READ-ONLY Resolver does not mutate the Plugin Passport. Changes flow through the authenticated/canonical control path and become visible when the public record is updated.

  • RE-CHECK

    Use Resolver again when publisher, store/package, version or evidence freshness matters.

  • NOT FOUND / ABSENT

    Treat required missing data as not established; do not fabricate a fallback plugin/extension identity.

MACHINE-CONSUMER CONTRACT

A safe integration pattern

Treat Resolver output as structured identity/proof context, not as an all-purpose “trust = true” signal.

  1. Step 1: PARSE IDENTITY

    Read the stable ECZ-ID and confirm Plugin Passport family/object.

  2. Step 2: CHECK RESPONSIBILITY

    Evaluate organisation/Parent/publisher context if policy requires it.

  3. Step 3: CHECK BINDINGS

    Compare store/repository/package/host/version references relevant to the plugin/extension.

  4. Step 4: CHECK STATE/EVIDENCE

    Evaluate required current state, evidence scope and freshness.

  5. Step 5: APPLY LOCAL CONTROLS

    Package/signature verification, vulnerability review, permissions, host/platform policy and execution controls remain separate.

  6. Step 6: FAIL SAFELY

    If required proof is missing, stale or mismatched, challenge/deny/pin/re-resolve.

NO UNIVERSAL SCORE Do not reduce the record to a single “trusted plugin” boolean unless your own policy defines and justifies that decision from specific fields/evidence.

LIFECYCLE AND VERSION FAMILY CONTINUITY

Keep the identity meaningful as distribution changes

A plugin/extension can move through publication, active maintenance, major versions, deprecation, store/repository/package migration, withdrawal and archival while retaining identity continuity where the object remains the same.

OPERATIONS LIFECYCLE

Operate one durable Plugin identity through change

Update supported distribution and host context and evidence without fragmenting the canonical plugin/extension identity.

Plugin ECZ-ID

stable plugin/extension identity

  • Confirm Plugin identity

    start from the canonical Plugin ECZ-ID

  • Update bindings

    store · repository/package host · version refs

  • Refresh evidence

    source · scope freshness

  • Publish state

    lifecycle · version operational context

  • Re-check Resolver

    verify what counterparties see

Store listing, repository/package, host/platform and version changes update context; they do not automatically require a new Plugin ECZ-ID.

OBJECT CONTINUITY Update supported bindings/state/evidence when distribution and host context changes. Mint a distinct identity when the plugin/extension object/version family boundary genuinely differs.

  • PRESERVE

    Same intended plugin/extension object; context changes.

  • SEPARATE

    Different plugin/extension object that replaces or forks the original.

PROVIDER-SPECIFIC BINDINGS

Store and host platforms are context, not canonical authority

Provider identifiers can be useful for navigation and proof, but ECZ-ID remains the canonical identity layer.

  • EXAMPLES OF PROVIDER CONTEXT

    Marketplace/store listing IDs, repository/package references, host/platform identifiers, documentation URLs, provider project IDs and version metadata where supported.

  • ARCHITECTURE RULE

    Provider-native identifiers become bindings/evidence/relationships - never the ECZ-ID authority root.

PORTABILITY The Plugin ECZ-ID can remain referenceable even if store/repository/package moves between stores, repositories/packages or providers.

  • USEFUL FOR

    Cross-provider plugin/extension inventories, verification and migration.

  • STILL REQUIRED

    Provider/package/signature verification and local plugin/extension supply-chain controls.

FAILURE HANDLING

Treat absence and ambiguity explicitly

Safe integrations distinguish not-found, missing-evidence, stale-context, wrong-object and transport/client errors.

  • NOT FOUND

    Confirm ECZ-ID and distinguish missing record from network/client failure.

  • WRONG FAMILY/OBJECT

    Do not treat another Passport family or plugin/extension as equivalent.

  • BINDING MISMATCH

    Challenge if store/repository/plugin/version reference does not match the intended package.

  • EVIDENCE ABSENT

    Treat required provenance/context as not established.

  • STATE STALE

    Re-resolve or require fresh evidence according to policy.

  • PLUGIN SECURITY / HOST-POLICY FAILURE

    Signature/vulnerability/permissions/runtime failure remains a separate control outcome.

FAIL CLOSED WHEN REQUIRED If your decision requires a field/evidence and it is absent, stale or mismatched, do not infer it away.

WORKED INTEGRATION EXAMPLES

Apply the model to real package-distribution patterns

Examples show how the same persistent identity can support different operational contexts without claiming more than the record proves.

  • MARKETPLACE/STORE OR PACKAGE MIGRATION

    Same Plugin ECZ-ID; supported store/package binding updates.

  • REPOSITORY MOVE

    Same plugin/extension identity; repository/source binding changes.

  • MAJOR VERSION

    Same version family identity where object continuity is intended; version context updates.

  • ENTERPRISE PLUGIN ADOPTION GATE

    Resolve identity, publisher/bindings/state/evidence, then apply local signature/vulnerability/permissions policy.

  • SECONDARY STORE / MIRROR

    A secondary store or package mirror is binding/context; canonical identity remains ECZ-ID.

  • PLUGIN SUCCESSOR / FORK

    A genuinely different plugin/extension should receive its own identity even if it replaces the original in a product stack.

EXAMPLE LAW Examples illustrate the identity model; they do not promise every binding or evidence type is always present.

DEVELOPER QUICK REFERENCE

The external integration contract in one page

Use this page when implementing a verifier or integration around Plugin Passport proof.

  • OBJECT

    Plugin / extension / integration component.

  • STABLE IDENTIFIER

    ECZ-ID.

  • MACHINE ROUTE

    GET https://api.ecocitizenz.com/api/p/{ecz_id}.json

  • KEY CONTEXT

    Parent/publisher · state · store/repository/package/host/version bindings · evidence.

  • MUST NOT INFER

    Code safety · vulnerability-free status · build provenance · host approval · install/execute authority.

  • FAILURE RULE

    Required absent/stale/mismatched proof → challenge, deny, pin or re-resolve.

NEXT Read the Operations, Lifecycle and Troubleshooting Guide before implementing plugin-identity changes or production support workflows.

Download and support

This page is the HTML edition of ECZ-ID Plugin Passport Technical Reference, release 2026.10. The PDF is the designed offline copy.

Permanent route: https://developers.ecocitizenz.com/passports/plugin/technical-reference/