Signature
InputField() constraints before the handler runs. Handlers can be async def or plain def,
and run between steps, never during one.
ModelMessage sends it back as
that command’s correlated reply. The return annotation has to be one message class or None; a
union is rejected when the class is declared. See
Events & Messages.
A handler whose name matches a generated set_<field> command replaces it.