Repository navigation
Upgrade Pi coding agent to 1.0.0 in the workspace image (#3542) - #3543
Conversation
Bump the sha512-pinned tarball from 0.99.2 to 1.0.0. Pi 1.0 runs its TUI fullscreen by default; provision tuiMode "regular" (and backfill it for existing settings.json) so the web terminal keeps its normal scrollback. Verified the builtin extensions' API surface (getAgentDir, CustomEntry, EntryRenderOptions, ExtensionCommandContext, Theme, and pi-tui Container/Text) is unchanged in 1.0.0.
935c116 to
b5e356b
Compare
Fresh-eyes reviewReview ran against 935c116; the two nits (changelog sentence count, docs placement) are addressed in b5e356b. Review: PR #3543 — pi agent 0.99.2 → 1.0.0Verified correct (the ship-sinking risks)SHA-512 pin — correct, verified two independent ways. Fetched tarball: Extension API surface — no break. Checked every symbol and call the 4 builtin extensions + 5 feature extensions use against the extracted 1.0.0 tarball (
Carried-forward assumptions — all still valid in 1.0.0: tuiMode decision — sound. Supply chain — unchanged. Same curl → FindingsNit 1 — changelog entry is 5 sentences ( Nit 2 — docs placement ( Question — delete-key path for fullscreen seekers. Observation (pre-existing, out of scope): VerdictNo blocking or important issues. The pin is right, the API surface is genuinely unchanged (including the non-obvious |
3D dependency graph (self-contained HTML)The page is fully self-contained: save it from either link and it opens offline. GitHub serves the raw gist as plain text, so the source link downloads; the render link views. |
|
Created backport PR for
Please cherry-pick the changes locally and resolve any conflicts. git fetch origin backport-3543-to-stable/2.0
git worktree add --checkout .worktree/backport-3543-to-stable/2.0 backport-3543-to-stable/2.0
cd .worktree/backport-3543-to-stable/2.0
git reset --hard HEAD^
git cherry-pick -x 8802f452a95b3846a0b8382cb99656bb91845517 |
Bump the sha512-pinned tarball from 0.99.2 to 1.0.0. Pi 1.0 runs its TUI fullscreen by default; provision tuiMode "regular" (and backfill it for existing settings.json) so the web terminal keeps its normal scrollback. Verified the builtin extensions' API surface (getAgentDir, CustomEntry, EntryRenderOptions, ExtensionCommandContext, Theme, and pi-tui Container/Text) is unchanged in 1.0.0.
Bump the sha512-pinned tarball from 0.99.2 to 1.0.0. Pi 1.0 runs its TUI fullscreen by default; provision tuiMode "regular" (and backfill it for existing settings.json) so the web terminal keeps its normal scrollback. Verified the builtin extensions' API surface (getAgentDir, CustomEntry, EntryRenderOptions, ExtensionCommandContext, Theme, and pi-tui Container/Text) is unchanged in 1.0.0.
Bump the sha512-pinned tarball from 0.99.2 to 1.0.0. Pi 1.0 runs its TUI fullscreen by default; provision tuiMode "regular" (and backfill it for existing settings.json) so the web terminal keeps its normal scrollback. Verified the builtin extensions' API surface (getAgentDir, CustomEntry, EntryRenderOptions, ExtensionCommandContext, Theme, and pi-tui Container/Text) is unchanged in 1.0.0.
Summary
Bump the workspace image's sha512-pinned Pi coding agent tarball from 0.99.2 to 1.0.0 (
PI_AGENT_VERSION/PI_AGENT_SHA512insrc/containers/workspace/Dockerfile; hash re-derived from the registry's owndist.integrityand verified against the fetched tarball).Pi 1.0 runs its TUI fullscreen by default, which replaces the web terminal's normal scrollback with pi's own viewport. The provisioning already protects that scrollback twice over (
theme: "dark"#3535,quietStartup: true#3537), soklangk-setup-pi.pynow writestuiMode: "regular"and backfills it for existingsettings.jsonfiles (explicit user overrides are preserved, as with the other provisioned keys). Users who want fullscreen can settuiMode: "fullscreen"in their own settings.Verified the builtin extensions' API surface is unchanged in 1.0.0 —
getAgentDir,CustomEntry,EntryRenderOptions,ExtensionCommandContext,Themefrom@earendil-works/pi-coding-agentandContainer/Textfrom@earendil-works/pi-tui(now 1.0.0) all still exist with the same export shapes; the extensions need no changes.Closes #3542.
Changes
src/containers/workspace/Dockerfile— pin 1.0.0 + refreshed sha512.src/containers/workspace/klangk-setup-pi.py— provisiontuiMode: "regular"(new settings + backfill), with rationale comment.src/containers/workspace/builtin-extensions/startup-header.ts— comment references pi 1.0.0.src/klangk/klangkd-tests/tests/test_setup_pi.py— covertuiModeprovisioning, backfill, and user-override preservation.docs/features/ai-coding-harnesses.md,docs/changes.md— document the provisioned setting and the upgrade.