Skip to content

Integration: Event-driven (sequenced) attestation freshness — WTRMRK on-chain model #7

@aeoess

Description

@aeoess

Context

On A2A#1712, @64R3N proposed event-driven freshness as an alternative to timer-driven freshness for attestation evidence. Instead of asking "how old is this attestation?" (timer-based), a receiving party asks "has the agent produced a newer attestation since this one?" (sequence-based).

The APS AttestationFreshness type currently supports snapshot, rotating, and static modes — all timer-based. 64R3N's proposal implies a fourth mode: sequenced, where freshness is determined by position in an append-only attestation log rather than elapsed time.

Proposed Addition

interface AttestationFreshness {
  type: 'snapshot' | 'rotating' | 'static' | 'sequenced'
  validAt: string
  ttl?: number          // rotating (SPIFFE)
  maxAge?: number       // snapshot (TPM)
  sequenceRef?: string  // hash of this entry in the registry
  registryUri?: string  // where to check for newer entries
}

New evaluation function: isLatestInSequence(sequenceRef, registryHead): boolean

Integration Point

WTRMRK's on-chain attestation sequence (Base L2) is the reference implementation for this pattern. Each agent accumulates a tamper-evident chain of attested actions. The sequenceRef would point to the agent's latest entry, and registryUri would point to the on-chain registry.

Open Questions

  1. Should sequenced freshness require a live registry query, or can it fall back to maxAge when offline?
  2. How does sequence-based freshness interact with cascade revocation — if an agent's passport is revoked, should all entries in its attestation sequence be considered stale?
  3. Is counterparty diversity (number of distinct interactions) a better signal than sequence length?

@64R3N — would you be interested in contributing the sequenced freshness spec or test vectors? The SDK is at npm install agent-passport-system with the current freshness types in src/types/passport.ts.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions