# Wdrożenie Baltique OS Core 2.6.0

## Przed wdrożeniem

1. Zatrzymaj wykonywanie ciężkich synchronizacji i cronów.
2. Wykonaj pełny dump MySQL.
3. Wykonaj backup całej aplikacji oraz `storage`.
4. Sprawdź możliwość odtworzenia kopii na środowisku testowym.
5. Potwierdź, że bazowy system ma co najmniej Core 2.5.0.

## Wgranie plików

Wypakuj paczkę do katalogu głównego Baltique OS z zachowaniem struktury:

```text
app/
public_html/
database/
docs/
tools/
```

Paczka nie zawiera `app/config.php`, `.env`, danych pacjentów ani prywatnych kluczy.

## Upgrade

1. Zaloguj się jako `admin` lub `superadmin`.
2. Otwórz `/upgrade_2_6_0.php`.
3. Kliknij `Uruchom upgrade 2.6.0` tylko jeden raz.
4. Nie odświeżaj strony podczas wykonywania.
5. Po zakończeniu otwórz `/system_hospital_command_center.php`.

Upgrade tworzy sześć tabel Command Center, seeduje presety ról, rejestruje trasy, ustawia safety guardy i zapisuje Migration Ledger.

## Konfiguracja rzutu

Command Center wykorzystuje istniejące:

```text
hospital_sites
hospital_floors
hospital_rooms
hospital_floorplan_polygons
hospital_floorplan_backgrounds
```

Jeżeli poligony nie są jeszcze skonfigurowane, system pokaże kontrolowany układ schematyczny. Do pracy produkcyjnej należy zatwierdzić rzeczywisty rzut i mapowanie pomieszczeń.

## Kontrola powdrożeniowa

Sprawdź kolejno:

```text
/system_hospital_command_center.php
/system_runtime_preflight.php
/system_site_context_governance.php
/hospital_polygon_editor.php
```

Następnie wykonaj testy każdej roli na danych syntetycznych zgodnie z `docs/POST_DEPLOYMENT_ACCEPTANCE_2_6_0.md`.

## Rollback

W przypadku błędu:

1. zablokuj dostęp do nowej trasy;
2. przywróć pliki z backupu;
3. przywróć bazę tylko jeżeli upgrade uszkodził istniejący schemat — nowe tabele są niezależne i zwykle mogą pozostać;
4. zachowaj logi i Request ID;
5. zapisz incydent w Observability / Professional Clinical Operations.
