New 'Updates' tab in the app detail page, beside Backups. Reuses the headless UpdaterPage + renderAppDetail() scoped to the single app, so the per-app and fleet views share one data/render path. UpdaterPage is added to the apps script bundle so it's available on app pages; the tab is disabled while a task runs. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>