-
v1.8.2 — ship the feeder fix for a silent transcript-feed failure
Publish Docker Image / resolve-versions (push) Successful in 25sLint / actionlint (push) Successful in 30sPublish Docker Image / base-decide (push) Successful in 8sLint / hadolint (push) Successful in 46sPublish Docker Image / build-base (push) Successful in 41m26sPublish Docker Image / smoke (push) Successful in 4m45sPublish Docker Image / smoke-studio (push) Successful in 5m11sPublish Docker Image / build-variant-studio (push) Successful in 17m44sPublish Docker Image / build-variant (push) Successful in 23m41sPublish Docker Image / update-description (push) Successful in 6sPublish Docker Image / promote-base-latest (push) Successful in 10sreleased this
2026-08-16 00:53:46 +02:00 | 92 commits to main since this releaseThe v1.8.1 image was the first to actually run the pi transcript feeder, and its
first boot (EMB-7KJ4VR4G, 2026-08-15) shipped seven session transcripts to the
palace host and filed none of them — while reporting success.Two halves, either of which alone would have been caught:
- The feeder's default MEMPALACE_PI_REMOTE_PATH is /data/feed, which assumes a
CONTAINERIZED palace server with the inbox bind-mounted there. That fleet's
primary runs natively (systemd user unit + uv tool), so it sees only host
paths and the mine failed with "source directory not found". rsync had
already succeeded, so the inbox on the palace host looked perfectly healthy. - Success was decided with
'"error"' in body. MCP returns HTTP 200 with the
tool's own JSON ESCAPED inside result.content[].text, so those bytes are
"error" and the substring never matched: the catch-up log printed
"Done. Wing 'wing_conversations' updated." directly under the error JSON and
exited 0.
Ships:
- mempalace-toolkit >= b609cf5 baked: envelope parsing (JSON-RPC error, MCP
isError, inner success=false), an "unverified" state instead of assuming the
good case, a preflight warning when the ship path and MEMPALACE_PI_REMOTE_PATH
disagree, and no more faking NEW/SKIP from the local palace in remote mode. - smoke:
mempalace-pi-session --self-testagainst the BAKED toolkit — six
recorded MCP responses (fixture 1 is the verbatim failure body) plus a
regression guard asserting the old substring check is blind to it. A stale
MEMPALACE_TOOLKIT_REF can no longer ship a silently-failing feeder. - .env.example: MEMPALACE_PI_REMOTE_PATH is the path the SERVER PROCESS opens.
Image pins unchanged from v1.8.1: pi 0.84.2, pi-atelier v0.8.1.
The new smoke call is deliberately bare, with no HOME= prefix: run() uses
docker run --entrypoint=""and no Dockerfile sets HOME, so it exercises the
no-HOME container that cost v1.8.0 a release — b609cf5 makes the feeder derive
HOME from the passwd database rather than assuming the image provides it.Downloads
- The feeder's default MEMPALACE_PI_REMOTE_PATH is /data/feed, which assumes a