28 lines
3.5 KiB
Markdown
28 lines
3.5 KiB
Markdown
# Проверки при подготовке 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.
|