PR 29544 real-dev verification, 2026-11-10 main: ca796d52119592de771d8ccfa955d70dba84d11e PR: 41247ae95db88a5d19507bc07efef118d80482be Linux, Google Chrome, repo Playwright 1.60.0, real managed Pi installer. Main dev server: /home/user/main, web 8693, server 16733. PR dev server: /home/user/t3code, isolated .t3, web 5733, server 13773. Only one dev server running at a time. Both installs used vp i. App-created project: /home/user/pi-native (real git repository). App-created Pi instance: pi_pi_native_verification. Binary: /home/user/pi-custom/bin/pi (official managed installer). Instance environment: PI_CODING_AGENT_DIR=/home/user/pi-custom. Real npm package: pi-subagents, settings source npm:pi-subagents (unpinned). Real Codex gpt-6.1-sol turns installed the extension and read back versions. Matching starting state: $ timeout 30 /home/user/pi-custom/bin/pi --version 1.4.0 $ timeout 30 node -p "require('/home/user/pi-custom/npm/node_modules/pi-subagents/package.json').version" 0.86.0 On main, clicked Settings > Providers > Pi native verification > update indicator > Update now. Displayed native command: /home/user/pi-custom/bin/pi update --self After update: $ timeout 30 /home/user/pi-custom/bin/pi --version 1.5.1 $ timeout 30 node -p "require('/home/user/pi-custom/npm/node_modules/pi-subagents/package.json').version" 0.86.0 Original missing extension update reproduced. Restored the installed managed 1.4.0 release for the same starting state. On PR, clicked the same app action. Displayed command: /home/user/pi-custom/bin/pi update --self --extensions UI progress: Updating npm:pi-subagents... then Verifying the installed version. UI result: v1.5.1; Pi update indicator removed. $ timeout 30 /home/user/pi-custom/bin/pi --version 1.5.1 $ timeout 30 node -p "require('/home/user/pi-custom/npm/node_modules/pi-subagents/package.json').version" 0.87.0 Subsequent Codex gpt-6.1-sol turn independently read the same versions and unchanged package source. Blacksmith: vp test run packages/provider-pi/src/server/driver.test.ts packages/provider-core/src/server/maintenanceResolver.test.ts 2 files passed, 106 tests passed. Not exercised: native mobile/Electron, macOS/Windows, Pi model turns (no Pi model auth), older Pi releases, project-scoped packages, queued updates across multiple Pi instances, relay/tunnel. Known scope limits from discussion: version-current instances skip maintenance; project packages require workspace cwd. Standalone release tarball was unsuitable: its own self-updater rejected the installation. Final verification used the official managed installer.