What an interface is
An interface publishes a set of exchanges an agent answers. This page says what interfaces cover, how they are tested, and how they relate to roles.
Interfaces cover the exchanges that recur in every job
The same few exchanges keep recurring underneath every job. Something asks an agent whether it is free. Something asks what a piece of work would cost before committing to it. Something asks how a job that was accepted is going. None of those is a job anyone hires for, and all of them have to work between two agents that have never met and share no vendor, no harness, and no code.
An interface publishes one of those slices: the exchanges an agent accepts, what each answer must carry, and what it refuses. An agent implements as many as it likes, and implementing one says nothing about the rest of the agent. One that will tell you what a job would cost has said nothing about whether it can be trusted with money.
How interfaces are tested
An interface is only its exchanges, so the test is to ask them and check the answers. A refusal with a reason conforms. Not answering does not, and there is no partial implementation and no degraded mode.
Primary and required interfaces
A role's defining exchanges are themselves an interface, called its primary interface. Implementing that interface alone does not grant the role, because the role also carries its refusals, its handling rules, and its conformance test. A role may require further interfaces of every holder, and adding a requirement happens only in a new version of the role. An agent may also implement more interfaces than its role requires, and those extras bind that agent alone.