# Upgrade Hosting ke AI Personal Companion v5.4

## 1. Backup
Backup folder `backend`, file `backend/config.php`, dan database MySQL melalui phpMyAdmin.

## 2. Upload backend
Upload dan timpa file berikut:

- `backend/ai-chat.php`
- `backend/sync.php`
- `backend/migration_v54.php`
- `backend/upgrade_v54.php`
- `backend/admin/index.php`
- `backend/admin/_bootstrap.php`
- `backend/health.php`

Jangan timpa `backend/config.php`, karena berisi database dan API key produksi.

`schema.sql` dan `install.php` pada paket hanya diperlukan untuk instalasi baru. Hosting yang sudah aktif cukup menjalankan `upgrade_v54.php`.

## 3. Aktifkan token sementara
Di `backend/config.php`, isi kembali token yang kuat:

```php
'install_token' => 'TOKEN_UPGRADE_PANJANG_DAN_ACAK',
```

## 4. Jalankan migrasi
Buka:

```text
https://sakinah.bgsx.biz.id/backend/upgrade_v54.php?token=TOKEN_UPGRADE_PANJANG_DAN_ACAK
```

Respons berhasil:

```json
{
  "ok": true,
  "version": "5.4.0"
}
```

Setelah berhasil:

1. Hapus `backend/upgrade_v54.php` dari hosting.
2. Kosongkan kembali `install_token` pada `config.php`.

## 5. Periksa AI
Buka:

```text
https://sakinah.bgsx.biz.id/backend/ai-chat.php
```

Pastikan terlihat:

```json
{
  "version": "5.4.0",
  "personalization_schema_ready": true
}
```

Tes koneksi nyata:

```text
https://sakinah.bgsx.biz.id/backend/ai-chat.php?probe=1
```

## 6. Tes dari aplikasi
Backend v5.4 tetap kompatibel dengan APK lama. Tutup aplikasi, buka lagi, login, lalu tes:

- `Apa saja enam rukun wudhu?`
- `Analisis pola ibadah saya 30 hari.`
- `Ringkas progres Qur'an dan dzikir saya.`
- `Buatkan rencana pribadi tujuh hari agar lebih konsisten.`

Jawaban tidak boleh berhenti di tengah kalimat atau daftar.

## 7. Build aplikasi v5.4
Untuk mendapatkan label mode AI dan conversation ID yang tersimpan di sisi aplikasi:

1. Buka project v5.4 di Android Studio.
2. Gradle Sync.
3. Build APK baru.
4. Hapus APK lama atau naikkan versi melalui update normal.

Versi: `5.4.0`, versionCode `11`.

## Catatan analitik Quran
Jumlah halaman keseluruhan langsung dibaca dari tracker lama. Metrik halaman 7/30 hari mulai tercatat sejak backend v5.4 menerima sinkronisasi halaman baru, agar data lama tidak salah dianggap dibaca baru-baru ini.
