AttestationHarness

A live principal-bearing seam under test plus the operations to admit, reconnect, drop, and close peers whose connection carries a host-verified Principal.

An implementation owns whatever wiring its fabric needs (raw links, a mux server, …); the suite drives it only through these four operations and reads roster.

Properties

Link copied to clipboard
abstract val roster: PrincipalRoster

The PrincipalRoster view of the seam under test.

Link copied to clipboard
abstract val seam: Seam

The seam under test, for the suite's single collection of Seam.incoming (ADR-034) — the channel a joiner's claim arrives on. A harness must not collect it.

Functions

Link copied to clipboard
abstract suspend fun admit(peer: PeerId, principal: Principal?)

Admit peer over a fresh link stamped with principal (null = an unattested connection). A repeat call for an already-present peer models a reconnect: the prior link is torn and replaced, and the new principal supersedes the old.

Link copied to clipboard
abstract suspend fun admitClaiming(peer: PeerId, verified: Principal?, claimed: Principal)

Admit peer over a link the host verified as verified (null = an unattested connection) while the peer itself asserts claimed — the adversarial case admit cannot state, because there the suite supplies the one principal and then reads it back.

Link copied to clipboard
abstract suspend fun close()

Close the seam terminally.

Link copied to clipboard
abstract suspend fun drop(peer: PeerId)

Drop peer's current link (a transport drop), leaving the seam open.