• v1.8.13 — audited version bumps + two volume/capability guards
    Lint / actionlint (push) Successful in 17s
    Lint / hadolint (push) Successful in 14s
    Publish Docker Image / resolve-versions (push) Successful in 10s
    Publish Docker Image / base-decide (push) Successful in 12s
    Publish Docker Image / build-base (push) Has been skipped
    Publish Docker Image / smoke (push) Successful in 4m44s
    Publish Docker Image / smoke-studio (push) Successful in 5m8s
    Publish Docker Image / build-variant (push) Successful in 15m52s
    Publish Docker Image / update-description (push) Successful in 6s
    Publish Docker Image / promote-base-latest (push) Successful in 9s
    Publish Docker Image / build-variant-studio (push) Successful in 21m22s

    joakimp released this 2026-09-07 00:49:31 +02:00 | 48 commits to main since this release

    Pins (all resolved and verified in smoke run 639):
    pi 0.84.4 -> 0.85.1 (0.85.0 skipped: shipped internal experimental
    code that broke SDK imports, upstream #9132)
    mempalace 3.8.0 -> 3.9.0 (synlig server still 3.8.0; skew accepted,
    3.9.0-only features stay dark until redeploy)
    pi-atelier v0.10.0 -> v0.10.1 (refactor-only upstream)
    pi-fork master -> e69725c
    pi-studio v0.9.59 (CI resolves the newest STABLE tag; the v0.9.60-rc.0 that
    main points at is deliberately NOT built)
    mempalace skill snapshot a12fe5e -> e9e09d9, phrase canary re-pinned with it

    Guards added:

    • agent-browser volume-shadowing retirement (entrypoint-user.sh) plus
      assertions in recreate-sanity-check.sh and smoke-test.sh. A July 17
      hand-installed 0.27.0 in ~/.pi/npm-global shadowed the image's 0.35.2 for
      seven weeks; the harm was the stale bundled SKILL teaching 10 removed
      subcommands, not the binary.
    • pi-fork capability floor extensions: [] in settings.example.json + smoke
      assertion. pi-fork hands the child its parent's full session branch, so a
      fork in a long session answers as the user and has twice filed diary entries
      under the parent identity. Empty extensions removes the palace write path by
      construction.
    • workflow_dispatch inputs now declare type:, without which Gitea 1.26.2
      renders no input fields and a manual run silently takes every default —
      making the documented smoke_only hatch unreachable for its whole existence.

    Verified before tagging: run 639 (smoke_only) green — base 55 min, smoke 90
    passed/0 failed, smoke-studio 93 passed/0 failed, all three new assertions
    observed executing; build-variant/studio/promote/description correctly skipped
    so nothing published. lint 638 green. Local pinned linters clean (actionlint
    1.7.7, hadolint 2.14.0, shellcheck 0.10.0 -S error).

    Downloads