mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-08 11:46:35 +00:00
Inner-loop iteration on a deployed stack often needs a one-off sidecar container against the same docker daemon the stack lives on — typical cases are rerunning a Playwright project with a patched .env, retrying an arbitrary CLI image against an app container, or smoke-checking a release image without going through Ansible. Without a wrapper the caller has to spell out `docker exec <host-container> docker run --rm <flags...> <image> <cmd>` by hand, which is verbose enough that agents tend to fall back to redeploying instead of validating in-place. Add `make run IMAGE=<ref> [CMD=...] [RUN_FLAGS=...]` plus the underlying `scripts/tests/deploy/local/exec/run.sh`. The script reuses `scripts/meta/env/all.sh` to resolve the host container name (same SPOT as `make exec`), forwards RUN_FLAGS verbatim, and only wraps CMD in `sh -lc` so default-entrypoint images and shell one-liners both work. Wire both iteration loops to mention the wrapper next to `make exec`: the Role Loop's Inspect block gets a bullet pointing at it, and the Playwright Spec Loop gains a short "Debugging in the nested docker daemon" section that also reminds the agent to mirror any successful hand-patch back into the role's playwright.env.j2. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>