Add devbox setup for local development - #173
Conversation
Bootstraps devbox with pinned go and golangci-lint versions matching .tool-versions, plus devbox run check/verify scripts mirroring CI. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
🛎️ Concierge
|
There was a problem hiding this comment.
Overview
This PR adds devbox configuration for local development tooling to parameter-store-exec — pinned packages, shell scripts (check/verify), and direnv integration. The changes are clean and well-considered: version pinning matches .tool-versions, the verify script mirrors CI exactly, and the lock file covers all four supported architectures. No runtime code, CI pipelines, or deployed artifacts are touched.
Issues
The devbox setup is missing a process-compose.yaml file and CI verification of devbox services up, both required by the current Development Environments standard — even for non-runnable services. The README also links to Confluence for devbox setup instructions, which the README File standard prohibits.
For reviewers
Entry point: Start at devbox.json -- it is the core of this PR (package pins and script definitions). Everything else flows from it.
Key questions:
- Do the pinned versions (
go@1.26.4,golangci-lint@2.12.2) still match what.tool-versionsand CI declare? A drift here meansdevbox run verifywould pass locally but CI could fail. - Is the
--timeout=2mongolangci-lint runaligned with what CI uses, or should it reference a shared variable/Makefile target instead of duplicating the flag?
1 Low-signal findings hidden
click to expand
README.md: Section heading "## Local development" doesn't match standard template heading "## Developer Ops" — pre-existing README structure gap; heading name not mandated by standard
generated using the pr-review workflow in 26 turns
give feedback with reactions 👍 👎
Scope this down to basic setup only: drop check/verify scripts and the README section (both out of scope for that skill), stop gitignoring .devbox/ (devbox already ignores it), and set CGO_ENABLED=0 explicitly since this is a pure Go CLI with no cgo usage. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Purpose
Sets devbox up for local dev tooling — pinned packages and
.envrcfor direnv. This is also a prerequisite for running any Concierge agent workflows against this repo.Summary
Adds basic devbox setup, aligned with the dev-env-devbox-setup-2 skill:
devbox.json/devbox.lock— pinnedgo@1.26.4andgolangci-lint@2.12.2, matching the existing.tool-versionsfile so local dev stays on the same versions CI already usesCGO_ENABLED=0set explicitly (this is a pure Go CLI with no cgo usage; devbox/nix can otherwise silently enable cgo via an available C toolchain).envrcfor direnvNo
check/verify/setupscripts or README changes — out of scope for this basic-setup pass. There's also nothing for asetupscript to install beyond whatgo build/go testalready fetch on their own.Scope: local-development only — no CI pipeline, deployed image, or runtime config changes.
Test plan
go versionunder devbox reportsgo1.26.4CGO_ENABLED=0present in the devbox envgo buildandgo test ./...pass under devbox