Closed, explicit scope algebra for collision isolation.
The context map passed to the resolve/2 callback is the BOUNDED callback context:
%{resource:, action:} — the trusted local facts the admission path derives itself
(AGENTS.md: "verification callbacks return trusted local facts"). Caller-supplied context
(actor, tenant, etc.) is NOT forwarded; see AshOnetime.Verifier for the same contract.
Summary
Types
Callbacks
@callback resolve(Ash.Changeset.t() | Ash.ActionInput.t(), map()) :: {:ok, AshOnetime.Canonical.value()} | {:error, term()}