feat: разделение контента — на телефон только аудио, на очки только видео

Телефон качает audio-N.ogg (audioKeys вместо fileKeys, стадия «звук»),
очки получают DownloadFiles только с video.mkv (buildGlassesFileSpecs).
Watch проверяет готовность обоих: телефон — audioReady(), очки — как
было; отказ с подсказкой «Скачать на телефон/очки». Тесты: lib-core 19,
phone 36.
This commit is contained in:
Hermes Agent
2026-08-20 01:41:43 +03:00
parent 9f1c6735c1
commit 2844d6a3ac
7 changed files with 77 additions and 32 deletions
@@ -38,11 +38,9 @@ class GlassesFilesTest {
assertEquals("movie-1", msg.itemId)
assertEquals("Interstellar", msg.title)
assertEquals(3, msg.files.size)
assertEquals(1, msg.files.size)
assertEquals("video.mkv", msg.files[0].name)
assertEquals("https://s3/mirror/video.mkv?sig", msg.files[0].url)
assertEquals("audio-0.ogg", msg.files[1].name)
assertEquals("audio-1.ogg", msg.files[2].name)
}
@Test
@@ -56,8 +54,6 @@ class GlassesFilesTest {
)
assertEquals(1_863_946_240L, msg.files[0].sizeBytes)
assertEquals(68_157_440L, msg.files[1].sizeBytes)
assertEquals(0L, msg.files[2].sizeBytes)
}
@Test
@@ -67,8 +63,9 @@ class GlassesFilesTest {
sizes = emptyMap(),
presign = { "signed-$it" },
)
assertEquals(3, specs.size)
assertEquals(1, specs.size)
assertTrue(specs.all { it.url.startsWith("signed-") })
assertEquals("video.mkv", specs.single().name)
}
@Test