ScreenTinker
c115ad5e62
chore(release): v1.9.24
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-07-28 23:37:59 -05:00
ScreenTinker
bcb1b5c7a3
chore(release): v1.9.23
2026-07-28 20:43:34 -05:00
ScreenTinker
19d1e3e19f
chore(release): v1.9.22
2026-07-28 14:58:22 -05:00
ScreenTinker
2d4ebb800f
chore(release): v1.9.21
2026-07-28 14:01:09 -05:00
ScreenTinker
8caf908d3c
chore(release): v1.9.20
2026-07-28 13:18:21 -05:00
ScreenTinker
00c294cb3b
chore(release): v1.9.20-beta1
2026-07-28 12:53:08 -05:00
ScreenTinker
6e0b2464d7
chore(release): v1.9.19
2026-07-27 21:18:47 -05:00
ScreenTinker
90fd73b38c
chore(release): v1.9.18
2026-07-27 20:40:51 -05:00
ScreenTinker
d6f81171c2
chore(release): v1.9.17
2026-07-27 11:43:23 -05:00
ScreenTinker
1036333982
chore(release): v1.9.16
2026-07-27 10:37:11 -05:00
ScreenTinker
593458d519
chore(release): v1.9.15
2026-07-24 21:12:22 -05:00
ScreenTinker
df7ecd6881
chore(release): v1.9.14
2026-07-24 15:54:27 -05:00
ScreenTinker
7b4e5bf416
chore(release): v1.9.14-beta1
2026-07-23 22:10:05 -05:00
ScreenTinker
98473d57f6
chore(release): v1.9.13
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-07-23 12:52:01 -05:00
ScreenTinker
ea99ae5e8d
chore(release): v1.9.13-beta1
2026-07-23 12:39:30 -05:00
ScreenTinker
79ab849641
chore(release): v1.9.12
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-07-22 21:09:09 -05:00
ScreenTinker
6b5b401f7c
chore(release): v1.9.11
2026-07-20 16:59:56 -05:00
screentinker
96b71a0d56
feat: transition engine — GL wipes across web, Tizen & Android (+ image↔video) ( #204 )
...
Client-side GL Transitions v1 across all three players with never-blank degradation: shader lib + generated manifest + real-WebGL CI, transition-as-widget normalization, persistent WebGL/GLES2 compositors (web/Tizen/native Android), image↔video wipes, SSRF-hardened media proxy, decode-gated image preload, dashboard picker. Fixes the playlist change-fingerprint that dropped transition edits. Alpha + on-device soak validated.
2026-07-20 16:45:32 -05:00
ScreenTinker
af89eaa75b
chore(release): v1.9.10
CI / Unit tests (node --test) (push) Has been cancelled
CI / OpenAPI spec lint (push) Has been cancelled
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Has been cancelled
CI / Boot smoke + version check (push) Has been cancelled
2026-07-17 20:24:39 -05:00
ScreenTinker
79cf4cac2b
chore(release): v1.9.9
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-07-15 16:06:18 -05:00
ScreenTinker
87d5c5e1d7
chore(release): v1.9.8
2026-07-15 10:06:11 -05:00
ScreenTinker
f10373551f
chore(release): v1.9.7
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-07-13 23:10:57 -05:00
ScreenTinker
3c59f647ac
chore(release): v1.9.6
2026-07-13 12:12:03 -05:00
ScreenTinker
40efaa1fed
chore(release): v1.9.5
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-07-12 23:32:37 -05:00
screentinker
501ffb11c1
feat(device-owner): tier foundation + QR provisioning + content-expiry & device enhancements ( #168 )
...
Device-owner tier substrate + silent install, end-to-end QR provisioning (Android 12+ compliance, APK-derived checksum, URL pre-seed, zero-touch onboarding, guided a11y screen), content-expiry (#157 ) with player no-restart deferral, and the device-enhancement batch (#10/#12/#13/#14). Backward-compatible with 1.9.3 clients; all autonomous behaviors opt-in. QA + security review green. Closes #161 , #157 , #159 .
2026-07-12 19:41:07 -05:00
ScreenTinker
f7e1b4dc69
chore(release): v1.9.4
2026-07-10 11:57:43 -05:00
ScreenTinker
dfd954d2ad
chore(release): v1.9.3
2026-07-08 17:23:08 -05:00
ScreenTinker
57cdaf7e4e
feat(apk): v4 liveness contract + caching-cluster fix + reconnect-safe downloads
...
APK v4 — client-only (Android player). Brings the reference client up to the locked
v4 liveness contract and fixes the "stuck downloading / offline in CMS" caching bug:
- v4 liveness watchdog (LivenessWatchdog): half-open detection via server-silence,
arm-ONLY-after device:heartbeat-ack (degrade-safe), 45s±10s jittered threshold,
exp backoff 1/2/4/8/16→30s ±20%, no-poll; reconnect delegates to the #148
ConnectionGuard (teardown-before-reopen, single socket).
- Caching two-root fix: callTimeout + .part+Content-Length integrity + atomic swap
(CacheValidation), onPlayerError advance, re-ack cached content + reconnect re-ack.
- Screen resilience (PlaylistSelection): a pending/failed download never blanks the
screen — keep-current, swap only fully-valid content.
- Reconnect-safe background downloads (DownloadCoordinator): single-flight per
contentId + bounded pool + failure backoff + cancellation; a reconnect mid-fetch
can't orphan/duplicate/storm. Refuse 206 partials.
- v4 client identity block on register (client_type/version/platform/contract_version).
Tests: 52 JVM unit tests (watchdog, cache validation, reproduce-then-prove download
stall/truncation/reconnect-mid-download, screen selection, assembly soak).
Depends on the server device:heartbeat-ack (core pass) — degrade-safe until then.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-08 09:57:53 -05:00
ScreenTinker
be01674d35
chore(release): v1.9.2-patch3
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-07-06 23:51:44 -05:00
ScreenTinker
26d07c7b06
chore(release): v1.9.2-patch2
2026-07-02 19:13:06 -05:00
ScreenTinker
7d2233cd42
chore(release): v1.9.2-patch1
2026-07-02 15:00:40 -05:00
ScreenTinker
afa8bec2bc
chore(release): v1.9.2
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-07-01 22:42:31 -05:00
ScreenTinker
e5661c9894
chore(release): v1.9.2-beta7
2026-06-30 22:24:40 -05:00
ScreenTinker
d0f2557957
chore(release): v1.9.2-beta6
2026-06-29 23:38:35 -05:00
ScreenTinker
5a094710e5
chore(release): v1.9.2-beta5
2026-06-29 22:12:57 -05:00
ScreenTinker
a6e9237db0
chore(release): v1.9.2-beta4
2026-06-28 23:40:17 -05:00
ScreenTinker
6642841cd8
chore(release): v1.9.2-beta3
2026-06-28 00:02:43 -05:00
ScreenTinker
e32c91cfd1
chore(release): v1.9.2-beta2
2026-06-27 23:18:19 -05:00
ScreenTinker
d9fb914b9e
chore(release): v1.9.2-beta1
CI / Unit tests (node --test) (push) Has been cancelled
CI / OpenAPI spec lint (push) Has been cancelled
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Has been cancelled
CI / Boot smoke + version check (push) Has been cancelled
2026-06-27 19:59:34 -05:00
ScreenTinker
852219cb45
chore(release): v1.9.1
2026-06-27 19:50:09 -05:00
ScreenTinker
ae018b8eea
chore(release): v1.9.1-beta9
2026-06-25 12:06:44 -05:00
ScreenTinker
36c4bf523f
chore(release): v1.9.1-beta8
2026-06-24 11:43:31 -05:00
ScreenTinker
16c381254b
fix(android): lower minSdk 26 -> 24 to support Android 7.0/7.1 panels ( #141 )
...
Covers API 24 (7.0) + 25 (7.1.2); all 26+ APIs were already guarded with graceful else branches; no dependency bumps. Validated on API 24 + 25 emulators: install, foreground service, #139 OTA verify on the legacy GET_SIGNATURES path (incl. tampered-refuse), EncryptedSharedPreferences, and playback.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 11:38:56 -05:00
ScreenTinker
9c990ff91f
chore(release): v1.9.1-beta7
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-06-23 23:23:00 -05:00
ScreenTinker
a9cf8747cb
chore(release): v1.9.1-beta6
...
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
Version bump for the beta6 strobe artifact: VERSION, server package + lock, and
the Android client (versionName 1.9.1-beta6, versionCode 26 so OTA sees it as an
upgrade over beta5/25). Also removes two leftover untracked PiP test scratch files
(frontend/alert-overlay.html, frontend/overlay.js) from a prior session.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 23:31:33 -05:00
ScreenTinker
fa3aed720f
chore(release): v1.9.1-beta5
CI / Unit tests (node --test) (push) Has been cancelled
CI / OpenAPI spec lint (push) Has been cancelled
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Has been cancelled
CI / Boot smoke + version check (push) Has been cancelled
2026-06-19 15:33:51 -05:00
ScreenTinker
71f8948bdb
chore(android): bump versionName to 1.9.1-beta4 (versionCode 24)
...
The Android version fields live separately from the root VERSION / server package,
so the beta4 release commit didn't touch them and the APK reported beta3. Bump them so
the client reports beta4 and OTA sees it as newer. The v1.9.1-beta4 tag is intentionally
NOT moved to this commit.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 17:28:44 -05:00
ScreenTinker
5b13254de3
chore(release): v1.9.1-beta3
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-06-15 16:07:04 -05:00
ScreenTinker
d64244b5ac
chore(release): v1.9.1-beta2
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-06-14 20:34:21 -05:00
ScreenTinker
1f794ff7b4
chore(release): v1.9.1-beta1
CI / Unit tests (node --test) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
2026-06-12 22:37:50 -05:00