Files
kam-mobile/reports/preparation/VALIDATION.md
T

27 lines
3.5 KiB
Markdown
Raw Normal View History

2026-09-12 16:50:30 +05:00
# Проверки при подготовке ZIP
Дата: 8 сентября 2026 года. Это результаты подготовки кода стенда, **не результаты Android-сборки на сервере пользователя**.
| Проверка | Фактический результат |
|---|---|
| Python unit / pipeline-control tests | **103/103 PASS**, см. `harness-tests.log` |
| Shell syntax | `bash -n build-android.sh test-harness.sh` — PASS |
| Python syntax | `python3 -m compileall -q tools tests` — PASS |
| Реальный preflight без скачиваний | `./build-android.sh --local --no-fetch` — **BLOCKED, exit 2** |
| Компиляция Pascal | **NOT_RUN**: FPC/CGE отсутствуют |
| Android native link и упаковка APK | **NOT_RUN** |
| Запуск на Android-устройстве | **NOT_RUN**: ADB/устройства отсутствуют |
| Загрузка игровых бинарных ресурсов | Не выполнялась |
| Загрузка полного upstream в этой среде | Не выполнялась; загрузчик предусмотрен для сервера |
`environment.json` фиксирует обнаруженные инструменты. Есть Java, но это не заменяет FPC, CGE, SDK/NDK и cross-compiler. `actual-preflight-result.json`, `actual-preflight-toolchain.json`, `actual-preflight-SUMMARY.md` — копии действительно полученного результата. Пути в этих копиях относятся к среде подготовки; временный `reports/runs/<id>/` не поставляется, чтобы не оставлять пользователю чужой `LATEST`.
## Что означает число 103
Это проверки Python-инструментария: выбор только исходных текстов, защита путей, проверки receipt, ELF/ABI/DT_NEEDED, APK identity, допустимое удаление debug sections, генерация targets, правила gate и обработка ошибок. Семь сквозных сценариев проверяют оркестратор с явно обозначенными временными **test doubles**, в том числе отсутствие выходного файла при коде 0 и подменённый APK.
Эти test doubles **не компилируют Pascal и не показывают совместимость KaM с Android**. Они проверяют, что стенд не объявит успех при отсутствующих/неверных результатах. Реальные проекты всегда вызывают `castle-engine` с `--os=android` и импортируют оригинальные units по проверенному receipt, без подмен KaM-классов.
## Что должен дать первый серверный запуск
Реальные compile/link/package logs для выбранного toolchain и r16020, конкретные активные блокеры и APK только успешно упакованных профилей. Заранее неизвестно, какие исходные KaM-корни соберутся как есть. Найденный блокер — полезный результат теста архитектуры; он не является обоснованием переписывания всего core.