# LisanQuest BM — Blueprint v1.0
Dipersetujui: 8 Oktober 2026. Sasaran: latihan BM SPM 2026.

## Pakej dan akses
RM30 sekali bayar di luar sistem. Owner sahkan pembayaran dan jana kod rawak unik. Akses seorang pelajar bermula pada pengaktifan dan tamat pada 1 Januari 2027, 00:00 Asia/Kuala_Lumpur (had eksklusif). Pembelian lewat tetap tamat pada tarikh sama; notis sebelum pembayaran wajib. Laporan sahaja boleh dilihat selama 30 hari selepas tamat. Latihan ulang dibenarkan sepanjang akses. Kuota penilaian dan simulasi AI ditetapkan sebelum jualan selepas ujian kos; belum diputuskan. Kegagalan teknikal tidak menghabiskan kuota.
Kod disimpan sebagai hash. Profil diikat ketika pengaktifan atomik. Satu sesi latihan aktif, pertukaran peranti dibenarkan melalui pengesahan semula. Owner boleh memulihkan akses, membatalkan kod dan menambah kuota. Had cubaan kod dan log audit diperlukan. Pemulihan identiti perlu disahkan menggunakan rekod pembelian.

## Kandungan
10 set PDF: naskhah calon, pentaksir, 4 soalan individu, tugasan kumpulan dan cadangan jawapan. Import tidak menerbitkan kandungan secara automatik. Semakan editorial, imej, fakta dan rubrik oleh owner/guru sebelum terbit. Set 1 dan 4 berkongsi tema hidupan liar tetapi kekal berasingan.
Soalan pendapat menerima jawapan alternatif yang munasabah. Tiada jaminan soalan akan keluar dalam peperiksaan.

## Latihan
Mod belajar: main semula audio, petunjuk dan rakam semula. Mod simulasi: tiada petunjuk; masa ditetapkan selepas semakan format oleh guru. Set rawak memilih set lengkap dan mengutamakan tema belum dilatih. Jawapan contoh selepas cubaan. Aliran: persediaan mikrofon → bahan rangsangan → soalan → rakam → semak/main semula → hantar → soalan berikut → laporan. Simpan kemajuan setiap jawapan. Audio bermasalah meminta rakaman semula. Sambungan terganggu membenarkan cuba hantar semula tanpa caj berganda.
Berkumpulan: seorang pelajar bersama watak AI secara giliran; AI memberi ruang respons. Bilik pelajar sebenar ditangguhkan.

## Penilaian dan permainan
Rubrik: relevansi, pengembangan, bahasa, penyampaian audio dan interaksi kumpulan. PDF menyatakan A 40/B 30; rubrik terperinci belum disahkan. Transkrip tidak membuktikan sebutan/intonasi. Papar anggaran latihan AI, bukti daripada jawapan, kekuatan dan langkah perbaikan. Kalibrasi dengan guru dan sampel suara BM sebelum pelancaran.
XP untuk usaha, berasingan daripada skor. Misi harian, lencana, peta set, kemajuan sendiri; tiada papan kedudukan awam.

## Dashboard
Pelajar: tarikh tamat, baki kuota, sambung latihan, 10 set, mod, sejarah, perkembangan, profil, mikrofon dan bantuan.
Owner: ringkasan bayaran/kod/aktiviti, rekod bayaran, jana kod, urus pelajar, kandungan, rubrik berversi, kos AI, pengumuman, tetapan pakej dan audit. Login owner dengan 2FA. Owner tidak automatik melihat semua audio; akses semakan perlu tujuan dan log.

## Infrastruktur dan privasi
Sasaran lisan.sainet.my pada shared hosting, PHP/Laravel dan MySQL/MariaDB tertakluk pengesahan hosting. HTTPS wajib. Rahsia API hanya backend. Audio soalan tetap dijana awal dan dicache. Audio jawapan disimpan secara peribadi; had saiz/tempoh disemak di server. API AI untuk transkripsi dan penilaian; adapter berasingan. Job database + cron jika tersedia; servis worker luar jika had hosting tidak mencukupi.
Persetujuan rakaman dan penjelasan pemprosesan pihak ketiga sebelum penggunaan. Data profil minimum, tiada MyKad. Cadangan audio dipadam automatik selepas 7 hari; laporan selepas tamat tempoh laporan. Tempoh ini perlu diterbitkan sebelum jualan. Tiada secret/audio peribadi dalam ZIP sumber.

## Fasa dan syarat lulus
P1: blueprint, bank kandungan draf, prototaip responsive, schema.
P2: backend, pembayaran manual, kod/session, role owner/pelajar, audit, ujian tamat akses dan perkongsian sesi.
P3: audio, rakaman, kemajuan, retry, storan peribadi.
P4: integrasi AI, kuota atomik, kawalan kos, simulasi berkumpulan, rubrik guru.
P5: gamifikasi dan laporan.
P6: ujian Android/iPhone/desktop, akses tidak sah, audio bising, rangkaian terputus, penggunaan serentak, deployment sainet.my dan pilot.
Pelancaran hanya selepas lulus ujian; sasaran sebelum 26 Oktober bukan jaminan.

## Belum tersedia
Nama/pelan hosting, PHP/extensions, akses Composer/SSH, database, cron, outbound HTTPS, SSL, upload/time limits, storan dan anggaran pelajar. Penyedia/kunci API, kuota, rubrik/massa latihan dan contact owner. Rahsia tidak dihantar dalam chat atau disimpan dalam frontend.
