# Baltique OS Core 0.78.2 — Enterprise Runtime Preflight

## Cel release

0.78.2 jest kolejnym krokiem po 0.78.0 Enterprise Integration Stabilization oraz 0.78.1 Dark UI Hotfix.

Nie dodaje nowego workflow klinicznego. Dodaje warstwę kontroli produkcyjnej po integracji:

- Runtime Preflight,
- Acceptance Tests Registry,
- wpisy Module Registry,
- migrację 087,
- panele administracyjne,
- walidator statyczny.

Celem jest odpowiedź na pytanie: czy Baltique OS jako zintegrowany HIS/ERP jest gotowy operacyjnie do pracy, czy powinien dostać HOLD/NO-GO przed dalszym wdrożeniem.

## Nowe panele

- `/upgrade_0_78_2.php`
- `/system_runtime_preflight.php`
- `/system_acceptance_tests.php`

Dodatkowo rozszerzony został panel:

- `/system_enterprise_078.php`

## Nowe tabele

- `system_runtime_preflight_runs`
- `system_runtime_preflight_checks`
- `system_acceptance_scenarios`
- `system_acceptance_runs`

## Co sprawdza Runtime Preflight

Runtime Preflight wykonuje bezpieczne, głównie read-only kontrole:

- PHP/PDO MySQL,
- zapisywalność storage,
- brak `public_html/config.php`,
- wersję `BALT_VERSION` i `app_settings.core_version`,
- Migration Ledger 086/087,
- Module Registry,
- legacy replacement pointers,
- rozwiązywanie tras modułów,
- krytyczne schema compatibility checks,
- Digital Twin schema,
- OR Readiness idempotency i duplikaty,
- OR Mobile Push dual-schema,
- Signed Document Archive hardening,
- obecność kluczowych plików OR/document/cron,
- zasianie scenariuszy akceptacyjnych.

Wyniki są zapisywane w bazie jako rekordy, nie jako dokument Word/PDF.

## Decyzje GO/HOLD/NO-GO

- `GO` — brak krytycznych i ostrzegawczych fail.
- `HOLD` — brak krytycznych fail, ale istnieją ostrzeżenia.
- `NO-GO` — istnieje co najmniej jeden fail krytyczny.

Score liczone jest jako 100 minus kary za błędy krytyczne, ostrzegawcze i informacyjne.

## Zasada architektoniczna

0.78.2 wzmacnia centralizację:

- baza danych jest źródłem prawdy,
- panele są tylko widokiem rekordów,
- dokumenty są eksportem lub snapshotem, nie źródłem prawdy,
- nowe funkcje administracyjne są wpisane do Module Registry.
