pub fn release_name(s: &str) -> StringExpand description
Sanitize an axis-derived string into a valid Helm release name — a DNS-1123
label: lowercase, each run of non-[a-z0-9] collapses to one -, no leading
or trailing -, capped at Helm’s 53-char limit. Job mode’s release name is
<benchmark>-<agent>-task-<task>; per-task task ids carry chars Helm forbids
(SWE-bench’s sympy__sympy-24066 has _), so without this run --mode job
can’t even render the chart for a per-task benchmark. Sibling to
flatten_imagestream — both make a name k8s-safe.