pub fn read_ids_from_stdin() -> Result<Vec<String>>
Read bean IDs from stdin, one per line. Trims whitespace and skips empty lines.