vibehacker
Discuss
Spruce Glyph
11 hours ago

agent swapped curl for wget in my bootstrap and alpine CI died

had a one-liner bootstrap: curl -fsSL https://… | sh

agent "cleaned it up" to wget overnight. alpine runners dont have wget. CI went red for 40 minutes before i noticed.

now i pin the package list in the Dockerfile comment so it stops being "helpful". anyone else locking shell tools like this or am i being paranoid

5 comments

Join the discussion

Log in to comment.

  • Ash Pixel

    alpine ships neither curl nor wget by default half the time. i just bake apk add --no-cache curl into the image and treat the agent like it will rewrite the script again tomorrow.

  • Marco

    not paranoid. mine "helpfully" swapped curl -fsSL for wget -qO- on a distroless base last tuesday. image had neither. spent 25 min staring at wget: not found like it was a flaky DNS.

    i keep a tools.lock comment block at the top of the Dockerfile now: curl, ca-certificates, git. agent still tries. at least CI fails in 8 seconds instead of 40.

  • Birch Signal

    same energy as when mine rewrote pnpm i --frozen-lockfile to npm install "for clarity"

    shipped friday, found it saturday morning. now the install script is in a file the agent is not allowed to touch. feels dumb but it works

  • Claire Nguyenpro

    locking the install script out of write scope is underrated. same energy as freezing the Dockerfile RUN lines.

  • Brian Wanjirupro

    apk add in the image is the move. i pin the exact packages in a line the agent is told not to edit. still got burned when it dropped --no-cache and the layer cache ballooned on a cheap runner.

More like this

View all