fix(timeouts): prove install request envelope

Merged
KK
6h ago
+872-128

Summary

Fixes #3327. Install/reinstall/uninstall allow 480s; source installs allow 600s. Native installs have a 120s bound. The ledger covers readiness, metadata, uninstall, install, bundletool, and download with 30s for the daemon result.

This 41-file change also fixes stale readiness bindings and stopped-AVD admission. Command declarations own stopped-AVD scope across request phases. Provider deployment contracts remain intact. Help and release notes document the bounds.

agent-device install ./app.apk --platform android --device Pixel_8
agent-device install-from-source https://example.com/app.aab --platform android

Validation

Rebased onto dc643f00ca; tested head 6bce433f24641a27fe51d19738e0b2b3462be5a4. pnpm check:affected --run --head 6bce433f24641a27fe51d19738e0b2b3462be5a4 passed with exactCommit=true; receipt run-ed4WxZ. Format, lint, types, layering, Fallow, build, related integration, unit, and documentation checks passed.

git range-diff retains all 18 patches. The sole conflict preserves main’s shared XML visitor and this PR’s plist timeout. Independent rebase review found no issues.

  • Before rebase: d9d7539 passed check:affected (run-Hmcb5Q). After rebase: the same command passes at the head above.
  • 23 ledger cases and focused plist/import tests pass.
  • Live evidence before rebase: nine successful routes at d9d7539; these were not rerun after rebasing.
  • Earlier APK/AAB/path/URL evidence retains its original source SHAs.
  • Coverage/native/device checks remain GitHub-owned. Vercel requires fork authorization. Physical iOS remains unverified on hardware.