Skip to content

fix(eval): sanitize jobbench DTU names for Incus - #136

Merged
David Koleczek (DavidKoleczek) merged 1 commit into
mainfrom
fix/jobbench-incus-safe-names
Aug 19, 2026
Merged

fix(eval): sanitize jobbench DTU names for Incus#136
David Koleczek (DavidKoleczek) merged 1 commit into
mainfrom
fix/jobbench-incus-safe-names

Conversation

@DavidKoleczek

Copy link
Copy Markdown
Collaborator

Problem

Incus instance names accept only alphanumerics and hyphens. JobBench occupation slugs come from the dataset directory names and are underscore-separated (civil_engineers, financial_analysts), so _dtu_name was emitting names Incus rejects outright. The container never launches and the trial fails before the agent runs.

Most occupations in the dataset contain an underscore, so this affects the majority of the suite.

Fix

Transliterate any non-alphanumeric character to a hyphen for both the occupation slug and the agent name before assembling jb-<agent>-<occupation>-t<N>-<uuid6>. The agent name is sanitized too because it is caller-supplied and can carry dots or slashes.

The 60-character budget and the uniqueness properties of the existing scheme are unchanged: sanitization is length-preserving and happens after the slice.

Scope of impact

Eval harness only. No engine, CLI, HTTP, protocol, or wrapper surface is touched, so no spec update, e2e case, or CHANGELOG entry applies.

Verification

  • ruff check and ruff format --check clean on the changed file.

Incus instance names accept only alphanumerics and hyphens. JobBench
occupation slugs come from the dataset directory names and are
underscore-separated (`civil_engineers`, `financial_analysts`), so
`_dtu_name` was emitting names Incus rejects outright -- the container
never launches and the trial fails before the agent runs. Most
occupations in the dataset contain an underscore, so this affects the
majority of the suite.

Transliterate any non-alphanumeric character to a hyphen for both the
occupation slug and the agent name before assembling
`jb-<agent>-<occupation>-t<N>-<uuid6>`. The agent name is sanitized too
because it is caller-supplied and can carry dots or slashes.

Scope: eval harness only. No engine, CLI, HTTP, protocol, or wrapper
surface is touched.

🤖 Generated with [Amplifier](https://github.com/microsoft/amplifier)

Co-Authored-By: Amplifier <240397093+microsoft-amplifier@users.noreply.github.com>
@DavidKoleczek
David Koleczek (DavidKoleczek) merged commit 0753dda into main Aug 19, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant