guide to agentprivacy
Browse collections
โœจVisualise
Connect with Star
Your VTA, your chosen perspective

The planned connection uses your VTA and the Trust Spanning Protocol to carry a scoped exchange for you or your agent. You choose what is presented; the receiving service checks the request before a view is shared.

This guide has no VTA connection adapter yet. Opening Star does not connect an identity or send a key.

Open Star โ†— ยท Inspect your City Key โ†—
guide / DTG / Agent Admission Revoke

Agent Admission โ€” Revoke

PROPOSED โ€” not yet upstreamed. Built to the ToIP spec.meta.schema.json for the dtgwg-trust-tasks-tf registry; the slug below is proposed to that namespace, not registry-accepted. The PR is pending; the registry's decision governs.

Proposed slug: agent-admission/revoke ยท version 0.1 ยท status draft

A supervisor revokes an admitted agent's relationship credential; the gate authority records the revocation, and mirrors a revocation mark to every external registry the outcome was anchored on, so on-chain and off-chain relying parties converge on refusal.

Abstract

The Agent Admission โ€” Revoke Trust Task ends an admitted agent's standing.
Because an admission outcome may have been anchored on external registries as
discoverable evidence, revocation is not complete until a revocation mark is
mirrored to the same registries โ€” otherwise off-chain relying parties refuse
the agent while on-chain ones keep trusting the stale anchor. Anchors are
evidence, never authority: the revocation's authority is this signed task and
the gate authority's record; the mirrors only make it discoverable everywhere
the issuance was.

Status of this Document

This is a draft Trust Task specification per SPEC.md ยง5.3; the schema MAY change without notice. Feedback via the issue tracker.

Conformance

RFC2119(https://www.rfc-editor.org/rfc/rfc2119) and RFC8174(https://www.rfc-editor.org/rfc/rfc8174) key-word conventions apply.

A conforming producer (the supervisor) MUST emit a Trust Task document whose type is https://trusttasks.org/spec/agent-admission/revoke/0.1, with itself as issuer, the gate authority as recipient, and a verifiable proof.

A conforming consumer (the gate authority) MUST:

  1. Verify the proof and that the issuer is a supervisor it recognises for this credential's policy (permissionDenied otherwise).
  2. Record the revocation and append the event to the content-addressed audit ledger before attempting any mirror โ€” the local record is the authority; mirrors follow it.
  3. Post a revocation mark to every registry named in the credential's anchor set, and report per-anchor convergence in the #response. Partial mirror failure is mirrorFailed (retryable); the revocation itself is never rolled back for a failed mirror.
  4. Refuse further delegated authority derived from this credential immediately upon recording, without waiting for mirrors.

Payload

payload.credentialId (REQUIRED) โ€” the credential being revoked (its digest or ceremony identifier).
payload.agent (REQUIRED) โ€” VID of the agent whose standing ends.
payload.reason (REQUIRED) โ€” recorded, durable free text.
payload.ext โ€” extension slot per SPEC.md ยง4.5.1.

Request

{
  "id": "urn:uuid:9f5ea3b8-c2d6-4be4-a6f7-809102132435",
  "type": "https://trusttasks.org/spec/agent-admission/revoke/0.1",
  "issuer": "did:key:z6MkSupervisorExample",
  "recipient": "did:key:z6MkGateAuthorityExample",
  "issuedAt": "2026-07-18T14:00:00Z",
  "payload": {
    "credentialId": "4a5b6c7d8e9f2021324a5b6c7d8e9f2021324a5b6c7d8e9f2021324a5b6c7d8e",
    "agent": "did:key:z6MkCandidateAgentExample",
    "reason": "Deployment scope exceeded during batch run; standing withdrawn pending re-assessment."
  },
  "proof": {
    "type": "DataIntegrityProof",
    "cryptosuite": "eddsa-jcs-2022",
    "created": "2026-07-18T14:00:00Z",
    "verificationMethod": "did:key:z6MkSupervisorExample#z6MkSupervisorExample",
    "proofPurpose": "assertionMethod",
    "proofValue": "z3FXQmV6ExampleProofValueForAgentAdmissionRevoke"
  }
}

Response

{
  "id": "urn:uuid:a06fb4c9-d3e7-4cf5-b708-9102132435460",
  "type": "https://trusttasks.org/spec/agent-admission/revoke/0.1#response",
  "issuer": "did:key:z6MkGateAuthorityExample",
  "recipient": "did:key:z6MkSupervisorExample",
  "threadId": "urn:uuid:9f5ea3b8-c2d6-4be4-a6f7-809102132435",
  "issuedAt": "2026-07-18T14:00:03Z",
  "payload": {
    "credentialId": "4a5b6c7d8e9f2021324a5b6c7d8e9f2021324a5b6c7d8e9f2021324a5b6c7d8e",
    "revoked": true,
    "revokedAt": "2026-07-18T14:00:03Z",
    "mirroredAnchors": [
      { "namespace": "org.erc8004.validation", "ref": "0x5aโ€ฆe21f" }
    ]
  },
  "proof": {
    "type": "DataIntegrityProof",
    "cryptosuite": "eddsa-jcs-2022",
    "created": "2026-07-18T14:00:03Z",
    "verificationMethod": "did:key:z6MkGateAuthorityExample#z6MkGateAuthorityExample",
    "proofPurpose": "assertionMethod",
    "proofValue": "z58aKqExampleProofValueForAgentAdmissionRevokeResponse"
  }
}

Security & Privacy

The reason is durable and, where anchors exist, its existence (not its
text) becomes publicly discoverable; supervisors SHOULD keep reasons free of
third-party personal data, and mirrors MUST carry only the revocation mark and
credential digest โ€” never the reason text. Revocation timing is itself a
signal: a relying party watching an anchor registry learns when an agent lost
standing. That is the intended disclosure โ€” convergence beats confidentiality
here, which is why the mirror is mandatory rather than best-effort. The window
between local recording and mirror convergence is the residual risk; relying
parties that can reach the gate authority SHOULD prefer
agent-admission/status over anchor reads.

Assets

Source: specs/agent-admission/revoke/0.1/ โ€” spec.md + payload.schema.json

๐Ÿ“Ž agent-admission-revokepayload.schema.jsonspec.md

upstream: ~/dtgwg-trust-tasks-tf-mage (untracked contribution lane; upstream registry: trustoverip/dtgwg-trust-tasks-tf) ยท author: Mitchell Travers ยท the git source wins on any disagreement ยท (โš”๏ธโŠฅโฟปโŠฅ๐Ÿง™)๐Ÿ˜Š

โ† The Trust Tasks ยท Welcome Visitors