Addresses PR #62 review comments on
claude_bottle/backend/smolmachines/bottle_plan.py:
- Lift the multi-value label printer (was a nested helper inside
DockerBottlePlan.print) into a new module
claude_bottle/backend/print_util.py:print_multi. Both backends
use it for env / skills / git / egress lines.
- Strip the three smolmachines-preflight lines the review flagged:
the gvproxy subnet line, the smolfile path line, and the
gvproxy-config path line. Internal detail — operators see the
agent / env / skills / bottle / git / egress that already
matter on the docker side, and nothing else.
- Add `git → upstream` to the smolmachines git output to match
what's useful at preflight time (the docker version shows
upstream_host:port; this is similar shape).
Leaves the slug=spec.identity-or-mint pattern alone pending a
reply on PR comment #432 — the docker backend uses the same
pattern to preserve identity across `resume`, so dropping it
would silently break the resume path once smolmachines launch
lands.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>