async fn prompt_for(key: &str) -> Result<String, Box<dyn Error>>Expand description
Prompt for a single field, re-prompting until the input is valid. Masks passwords, applies the field’s default on empty input, validates the port is numeric, and exits cleanly if the user interrupts with Ctrl-C.