diff --git a/CHANGELOG.md b/CHANGELOG.md index f7a7306..1563cc0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,51 @@ Pre-v1.0.0 tags followed the pi npm version (`v{pi_version}[letter]`). _Nothing yet — next release's changes will accrue here._ +## v1.6.2 — 2026-07-23 + +Patch release. **Completes the v1.6.1 studio publish.** CI-only change; the +shipped image content is identical to v1.6.1 apart from the bumped `pi` +version resolution at build time (still `0.81.1`). + +> **Note on v1.6.1.** Ran on 2026-07-23; the non-studio variant (`v1.6.1`, +> `latest`, `base-latest`) shipped cleanly, but the studio variant was blocked +> in the smoke-studio job by a size assertion that was still calibrated for +> the pre-`agent-browser` baseline. `v1.6.1-studio` and `latest-studio` were +> never pushed; `latest-studio` on Hub still points at v1.5.0-studio until +> v1.6.2 lands. Users who pull `joakimp/pi-devbox:v1.6.1` today get a valid +> non-studio image with `pi 0.81.1` baked; there is no `v1.6.1-studio` image. + +### Fixed (CI) + +- **`scripts/smoke-test.sh`: raise `SIZE_THRESHOLD_MB` from `3500` to `3800`.** + The 3500 threshold was set in v1.0.0 based on a local arm64 build measured + at 3.20 GB plus a `+300 MB` margin. v1.6.0 baked in `agent-browser` + + Playwright Chromium (~291 MB net, documented in v1.6.0's entry) but the + threshold was never updated — v1.6.0 never ran to smoke because of the + site-network fault, so nothing surfaced the miscalibration until + run 512 (v1.6.1) reached smoke-studio and reported + `3574 MB exceeds threshold 3500 MB`. Actual CI amd64 sizes observed on + run 512: **3411 MB non-studio**, **3574 MB studio**. The new 3800 MB + ceiling carries ~225 MB margin above the studio number — enough to absorb + minor arch/build-cache variance and small future growth, still tight + enough to catch a genuine +GB regression. The comment above the constant + is refreshed to reflect the new baseline (agent-browser included, run 512 + actuals). Not base-affecting; base hash unchanged. + +- **`scripts/smoke-test.sh`: don't hard-code a `v` prefix on `release_tag` + in the `pi-devbox-version` human-output assertion.** (Landed on the + retagged `v1.6.1` and carried forward in `v1.6.2`.) The smoke workflow + deliberately passes `RELEASE_TAG=smoke` / `RELEASE_TAG=smoke-studio` to + the variant build so smoke images don't collide with real `vX.Y.Z` tags, + and `pi-devbox-version` correctly prints `pi-devbox smoke`. The prior + assertion required the literal substring `pi-devbox v` — only true for + real releases — so it fired on every smoke run once it existed. The two + neighbouring assertions on `--json` and `--quiet` already cover the value + of `release_tag`; the human-output assertion now only verifies that the + line renders (substring `pi-devbox ` — note the trailing space). Never + fired before because `pi-devbox-version` was added post-v1.5.0 and every + CI attempt since was blocked before smoke ran. + ## v1.6.1 — 2026-07-22 Patch release. Headline: **pi `0.80.6` → `0.81.1`** (npm `latest`) — the first diff --git a/scripts/smoke-test.sh b/scripts/smoke-test.sh index b93e986..eae2830 100755 --- a/scripts/smoke-test.sh +++ b/scripts/smoke-test.sh @@ -31,11 +31,14 @@ IMAGE="${1:?usage: $0 }" PASS=0; FAIL=0 # pi-devbox v1.0.0 (decoupled from opencode-devbox) added pandoc, graphviz, # imagemagick, yq, tealdeer, a baked /etc/tmux.conf, and the non-modal -# editors nano + micro (~15 MB combined). Local arm64 build -# observed 3.20 GB. CI amd64 builds may differ slightly; threshold below -# carries +300 MB margin to absorb arch differences without false reds. -# Tighten in a follow-up release once amd64 actuals are observed in CI logs. -SIZE_THRESHOLD_MB=3500 +# editors nano + micro (~15 MB combined). v1.6.0 baked in agent-browser + +# Playwright Chromium (~291 MB net after dropping the unused headless-shell +# build), which lifted the baseline. CI amd64 actuals observed on run 512 +# (v1.6.1): 3411 MB non-studio, 3574 MB studio. Threshold below carries +# ~225 MB margin above the studio number to absorb minor arch/build-cache +# differences and small future growth without false reds, while still +# catching an unexpected +GB regression. +SIZE_THRESHOLD_MB=3800 run() { local label="$1"; local cmd="$2"