Skip to content

Interop: Cross-engine delegation verification test suite #2

@dreynow

Description

@dreynow

Goal

Prove that agent identity systems built on Ed25519 can cross-verify delegation chains regardless of DID method or SDK. Three engines are ready to test:

Engine DID Method SDK Contact
Kanoniv did:agent: @kanoniv/agent-auth @dreynow
Agent Passport System did:aps: agent-passport-system @aeoess
Guardian TBD TBD @xsa520

Test Matrix

Round 1: Signature cross-verification

Each engine exports a signed delegation chain as JSON:

{
  "delegator": "did:agent:coord-9f3a1b",
  "delegate": "did:agent:research-4e7c2d",
  "scopes": ["search", "memory.read"],
  "created_at": "2026-03-18T19:00:00Z",
  "expires_at": "2026-03-25T19:00:00Z",
  "signature": "<Ed25519 base64>",
  "public_key": "<Ed25519 base64>"
}

Every other engine verifies the signature. Ed25519 is Ed25519 - this should pass trivially.

Round 2: Delegation chain verification

Multi-hop chains: A delegates to B, B delegates to C with scope narrowing. Each engine verifies the full chain and confirms scope constraints propagate correctly.

Round 3: Execution envelope

Each engine emits a signed execution envelope (action + delegation proof + result). Other engines verify provenance without needing to understand internal types.

Reference Implementation

Kanoniv reference chains will be posted in this thread as the baseline. DID-method-agnostic - any method that resolves to an Ed25519 public key can participate.

Why here

Interop needs a neutral test surface, not a bilateral thread inside one engine's repo. This issue is that surface. All engines post their test artifacts here, all verification results here.

Success Criteria

  • All engines can verify each other's delegation signatures
  • Scope constraints propagate correctly across chains
  • Execution proofs can be validated without shared internal types

If this holds, it suggests that trust between agent systems can be portable across runtimes today.

cc @aeoess @xsa520

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions