Skip to content

App updates and issue reports

Last updated: 2026-11-03

During the private test, the WyreDeck Android TV app includes a built-in sideload update flow and a privacy-bounded in-app issue reporter.

Sideload app updates on Android TV

Because private-test builds are distributed outside the Google Play Store, the app checks WyreDeck's official update manifest to keep tester devices current.

How the update check and verification work

  1. Manifest check: The app checks the update manifest for a newer version code and version name. This check requires no account or device credential so that a TV with an expired device token or an older test build can still receive an update.
  2. Same-origin HTTPS enforcement: Before downloading, the app verifies that the advertised APK download URL uses https:// on the exact same origin as the configured WyreDeck service.
  3. Byte size and SHA-256 verification: After downloading the APK package, the app verifies that the downloaded file's exact byte count matches the manifest's expected byte size and that its cryptographic SHA-256 checksum matches the 64-character hex digest in the manifest.
  4. Android package installer prompt: Only after both the byte size and SHA-256 checksum match does WyreDeck hand the verified APK to Android's system package installer so you can confirm the installation on your TV.

What "Minimum version required" means

When a paired device checks in with the account service, it reports its installed app version code. When older private-test builds are retired, the service can advertise a minimum required client version floor.

If your installed app build is older than that minimum version floor, WyreDeck displays an advisory Minimum version required banner. In v1, this version floor is advisory and does not revoke capabilities or reject server requests. To install the current build, open Settings > About > Check for Updates and choose Download and install. Updating the app preserves your local providers, catalog, favorites, and paired device credentials.

LAN Backbone container update manifest

For self-operated LAN Backbone appliances, WyreDeck also publishes a container release manifest:

  • Pinned OCI image digest: The manifest reports the available version code, version name, image tag, and the exact sha256:<64-hex> container image digest (plus optional release notes metadata) so operators and appliances can verify image provenance before pulling or upgrading.
  • Platform-scoped version floor: Account-enrolled LAN Backbone appliances receive an appliance-scoped minimum version floor during periodic device check-ins, independent of the Android TV client floor.

Submit an in-app issue report

When you encounter a visual glitch, usability rough edge, or playback/sync bug, open Help in the TV app and choose Report an issue.

Pre-submission disclosure and submission feedback

Issue reports are strictly user-initiated and are never sent automatically in the background:

  • Pre-submission privacy disclosure: Before you press Send report, the report screen displays a privacy disclosure explaining what details are included under the active collection mode and noting that detected credentials and provider URLs are removed.
  • Explicit submission feedback: While sending, the submit button disables to prevent accidental duplicate submissions. When the service confirms receipt, the screen displays a Report sent confirmation card with a reference Report ID you can share with support if asked for follow-up details. If the TV is unpaired, has reached the daily report quota, or encounters a network error, the screen shows a clear status message while preserving your selected category and typed description so you do not have to re-type on the TV remote.

What an issue report includes

Submitting a report requires a paired device linked to your anonymous account and sends a bounded diagnostic report (capped at 64 KiB):

  • Category, description, and screen slug: The issue category you select (visual, usability, functionality, capability, or other), your optional written description of what happened (up to 1,200 characters), and the static screen identifier where you opened the report sheet.
  • Client context: App version, build number, source revision, device manufacturer and model, Android SDK version, locale, and an ephemeral per-run session identifier (redacted on storage).
  • Public-release minimal mode vs. bounded private-test diagnostics: Public release builds use a minimal collection policy (public_release_minimal) that sends only the category, description, static screen identifier, and basic client/device version context above—omitting setup mode, tier, provider counts, LAN Backbone status, startup state, and diagnostic event history (and when public-minimal enforcement is active on the server, any non-minimal diagnostic payload is rejected). During the private test (private_alpha_rich), the report additionally includes setup mode, account tier, total and enabled provider counts, whether a LAN Backbone is configured, startup state, and up to 50 recent app events.

Automatic client and server redaction

To protect your privacy, issue reports pass through two layers of automated redaction across unconstrained text fields and diagnostic events:

  • Pre-send client scrubbing (Android TV app): Before uploading, the app scrubs HTTP/HTTPS and stream URLs (including stream paths containing embedded credentials), bearer tokens, credential and token key-value assignments, UUIDs, IPv4:port endpoints, 16-digit account-shaped number sequences, and configured provider display names.
  • Pre-storage server scrubbing (WyreDeck cloud service): Before storing the report, the cloud service repeats the URL, bearer-token, UUID, IPv4:port, and account-number filters and additionally scrubs PEM blocks, multi-line and inline HTTP Basic/Digest/Bearer authorization values, expanded credential and PIN key-value assignments, Xtream stream path credentials, email addresses, MAC addresses, and host:port or IPv6 endpoints.

Never type credentials or provider names into your description

Automated redaction matches recognizable patterns, not ordinary prose. A provider name, password, or hostname written casually in a sentence without a recognizable URL or key=value pattern may remain in the text you write. Never type your 16-digit WyreDeck account number, IPTV provider username or password, playlist URL, stream URL, or TMDB API key into an issue report.

Rate limits and 30-day retention

  • Daily account quota: Issue report submissions are limited to 20 reports per account per rolling 24-hour window. Wait for confirmation rather than submitting duplicate reports back-to-back.
  • 30-day automatic deletion: Live reports (along with any internal triage notes) are removed after 30 days under the current configuration (an outage can delay live cleanup until the service resumes, and a database backup that captured a report may retain its encrypted copy until that backup reaches the end of its separate 14-day lifecycle, for a maximum 44-day end-to-end window). If a report was promoted into an engineering tracking issue, only a non-personal promotion record (category, status, and issue key, with no account link or report text) remains after the 30-day live report is deleted.

See the Privacy policy for the complete data-handling and retention rules.