Skip to content

Commit d443e38

Browse files
docs: релизный контур перепроверен после миграции на 2.0.27
Сборка 40 с, подпись release-ключом (CN=opencode-mobile, OU=Release), все нативы в APK, движок и memory-MCP поднимаются за ~2 с, музыкальный MCP пропускается по делу (нет токена на чистой установке), падений нет. Ограничение записано честно: не-debuggable сборку нельзя опросить по HTTP.
1 parent 84fb13d commit d443e38

2 files changed

Lines changed: 20 additions & 1 deletion

File tree

‎CHANGELOG.md‎

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,25 @@ Play: листинг, скриншоты, политика конфиденци
116116
удалить данные. Аналитики и трекеров в сборке нет (проверено по зависимостям).
117117
- Осталось: доступ к Play Console и URL политики (файл есть, хостинг — нет).
118118

119+
Релизный контур перепроверен после миграции на 2.0.27 (26.10.2026)
120+
- `build.ps1 -Task release`: **40 с**, APK 176 132 731 байт, штамп коммита в имени
121+
(`…84fb13d1`) совпадает с HEAD. Сборка не сломалась ни от миграции на opencode 2.0.27,
122+
ни от рефакторинга чата.
123+
- Подпись — **release-ключ**, а не debug: `apksigner verify --print-certs` →
124+
`CN=opencode-mobile, OU=Release, O=opencode, L=Almaty, C=KZ`, SHA-256 `4fda00b2…`.
125+
- В APK лежат все нативы: `libopencode.so` (204 999 888), `libbun-musl.so` (73 604 864),
126+
`libc_musl.so`/`libldmusl.so`, `libstdcxx.so`, `libgcc_s.so`, плюс sherpa/whisper/ggml.
127+
Комплектность сверена штатной проверкой `fetch-opencode-binary.ps1 -Check` → «6 пинов,
128+
7 файлов».
129+
- Smoke на CPH2747: `serve` (opencode 2.0.27) поднялся за ~2 с, memory-MCP слушает 4199,
130+
музыкальный MCP на 4200 **отсутствует — так и должно быть**: он стартует только при
131+
непустом токене Яндекса (`credentials.takeIf { it.accessToken.isNotBlank() }`), а на
132+
чистой установке логина нет. `adb logcat -b crash` пуст, приложение живо.
133+
- Ограничение проверки, чтобы не выдавать желаемое за сделанное: release не debuggable,
134+
`run-as` не работает, пароль serve из `/proc/<pid>/environ` не прочитать — поэтому
135+
аутентифицированный вызов через HTTP не делался, проверены запуск, порты и отсутствие
136+
падений. Release-APK после проверки снят, debug-приложение возвращено на место.
137+
119138
Музыка: сокет состояния шёл на IP фронтенда, а не шарда (26.10.2026)
120139
- `music_play_query` висел **97,7 с** и падал `state open timeout`. По трассе редирект-сокет
121140
работал целиком (101, payload, тикет), а state-сокет получал **0 байт за 10 с**.

‎docs/ROADMAP.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -323,7 +323,7 @@ SAW-грантом (после `adb install -r` accessibility на ColorOS сб
323323

324324
| Трек | Статус |
325325
|------|--------|
326-
| 1. Release-контур | **Выполнен** — R8 + shrinkResources (374 → 274 → **147 MB**), base вынесена в lazy, пакет чистый `org.opencode.mobile`, smoke OK. **Подпись закрыта (26.09, `96bb02a`):** release подписан своим RSA-4096 ключом, `keystore.properties` в `.gitignore`, оффлайн-копия ключа сделана. **Карточка Play готова (25.10):** листинг в лимитах, 6 скриншотов 1272×2477, иконка 512×512, feature graphic 1024×500, политика конфиденциальности — `docs/play/`. Осталось: доступ к Play Console и URL политики |
326+
| 1. Release-контур | **Выполнен** — R8 + shrinkResources (374 → 274 → **147 MB**), base вынесена в lazy, пакет чистый `org.opencode.mobile`, smoke OK. **Подпись закрыта (26.09, `96bb02a`):** release подписан своим RSA-4096 ключом, `keystore.properties` в `.gitignore`, оффлайн-копия ключа сделана. **Карточка Play готова (25.10):** листинг в лимитах, 6 скриншотов 1272×2477, иконка 512×512, feature graphic 1024×500, политика конфиденциальности — `docs/play/`. **Перепроверено 26.10.2026 после миграции на 2.0.27:** сборка за 40 с, подпись release-ключом (`CN=opencode-mobile, OU=Release`), все нативы в APK (включая `libopencode.so` 2.0.27 и `libbun-musl.so`), движок и memory-MCP поднимаются за ~2 с, музыкальный MCP пропускается по делу (на чистой установке нет токена Яндекса), падений нет. Ограничение: не-debuggable сборку нельзя опросить по HTTP — пароль serve читается только через `run-as`. Осталось: доступ к Play Console и URL политики |
327327
| 2. Сеть без прокси | **Выполнен** — встроенный `Ipv4Proxy` (CONNECT, IPv4-first); туннели к context7/grep/npm открываются автоматически. Legacy `connect_proxy.py` удалён (26.09) |
328328
| 3. STT turbo на CPU | **Почти готов** — int8-encoder ~2× fp32, **VAD-чанкинг внедрён (первые слова 1–2 s)**, бенч на устройстве прогнан (24.09), **VAD-пороги измерены** (26.09, `56034e9`: `MIN_RMS=0.015` подтверждён свипом 6 порогов × 5 SNR), **WER-счётка готова и покрыта 13 тестами** (26.09, `c7256c1`). Осталось: наполнить корпус доверенными расшифровками и прогнать на устройстве |
329329
| 4. Безопасность и память | **Выполнен** — Basic Auth (401 без пароля), локальная память MCP (`ensureMcpConfig`, фикс «0 MCP»), протокольная диагностика, e2e чистой установки пройден |

0 commit comments

Comments
 (0)