feat: auto-update (download+auto-install) + tide numbers (v0.6.0) Auto-update, autoGPS-style, ported to a Capacitor native plugin: - UpdaterPlugin.java: downloadAndInstall(url) streams the APK to cacheDir emitting a 'progress' event per percent, then fires the FileProvider install intent (application/vnd.android.package-archive). canInstall()/ openInstallSettings() handle the Android 8+ unknown-sources permission. - MainActivity registers the plugin; manifest gains REQUEST_INSTALL_PACKAGES (FileProvider + cache file_paths already present). - UpdateBanner: "업데이트" now shows a shimmer progress bar with live percent and auto-installs on completion; falls back to Browser.open on web and prompts for the install permission when missing. Mandatory modal keeps update/exit. Tide numbers (user asked for 만조/간조/조차 수치): - Timeline badges show ▲/▼ change (delta) for every event, absolute cm for official stations; Today shows "오늘 조차 NNNcm". Model spots show change/ range (datum-independent) marked 예측. Verified: gradle assembleDebug compiles the native plugin; Playwright shows 군산 with 조차 497cm, 만조 06:37 630cm ▲497, 간조 13:18 200cm ▼430. Deployed v0.6.0. Constraint: APK auto-install needs the user to grant unknown-sources once; the plugin detects this and opens the settings screen rather than failing silently. Confidence: medium Scope-risk: module Reversibility: moderate Directive: Real-device test the full download->install flow (permission grant, installer dialog) — cannot be verified in CI/web. Tested: gradle build (plugin compiles); app build clean; web fallback path; tide-number rendering via Playwright. Not-tested: on-device download progress + install intent + unknown-sources permission round-trip (needs a phone). Related: docs/BACKLOG.md 🐙 Autopus