pub fn truncate(s: &str, max: usize) -> String
Truncate a string to a maximum length, appending “…” if truncated.
Uses char-aware slicing to avoid panicking on multi-byte UTF-8 boundaries.