The process's two-factor tickets: the issued values behind the screens'
opaque tickets, plus the two handoffs the login answer leaves for the screen
it opens. It is a separate registry from the recovery one because the facts
are different — a 2FA ticket addresses the ids one screen's flow issued for
its own calls (the QPL pairs and the screen instances), not a recovery
action's server params — and because the 2FA screens are reachable only after
a login answer created their challenge. One value per runtime layer, so a
ticket issued by one runtime is not resolved by another, and the registry
goes with its process; it is process state and belongs in a checkpoint.
A handoff is the login action's values waiting for the screen's enter,
never an edge argument: a trail carries no server-issued value, and a retrace
of the two-factor chain in a fresh process is given the handoff as a
precondition (the checkpoint work, #314, carries a pending challenge between
processes). The screen reads a handoff without spending it and clears it only
after it opened, so a transient failure of its fetch can be retried.
The methods are the library's own seam (the screens use them); a published
declaration carries the empty shape, not the methods.
The process's two-factor tickets: the issued values behind the screens' opaque tickets, plus the two handoffs the login answer leaves for the screen it opens. It is a separate registry from the recovery one because the facts are different — a 2FA ticket addresses the ids one screen's flow issued for its own calls (the QPL pairs and the screen instances), not a recovery action's server params — and because the 2FA screens are reachable only after a login answer created their challenge. One value per runtime layer, so a ticket issued by one runtime is not resolved by another, and the registry goes with its process; it is process state and belongs in a checkpoint.
A handoff is the login action's values waiting for the screen's
enter, never an edge argument: a trail carries no server-issued value, and a retrace of the two-factor chain in a fresh process is given the handoff as a precondition (the checkpoint work, #314, carries a pending challenge between processes). The screen reads a handoff without spending it and clears it only after it opened, so a transient failure of its fetch can be retried.The methods are the library's own seam (the screens use them); a published declaration carries the empty shape, not the methods.