Catatan teknis & deploy
Lingkungan
- Worker uji tim:
play-95-duo-dev→ play-95-duo-dev.terusmengajar.workers.dev (guest mode). Deploy:SKIP_R2_SYNC=1 bash apps/portal/scripts/deploy-play95-duo-dev.sh(nama worker eksplisit, bukan--env). Cek build:/api/health. - Service worker saat ini:
pc-v58— wajib di-bump sekali tiap bundle game berubah. - Build game:
pnpm run build:games(±20 menit, 95 game) ataunode scripts/build-games.mjs <slug>; bundleapps/portal/public/calistung-*di-commit. - Setelah deploy: jalankan boot sweep manual
scripts/ifp-boot-sweep.sh <url>(wajib bilasrc/games/shared/*berubah). - Buku cerita (tim konten): tm-calistung-games-story-draft — generator di tm-ai-workspace
brainstorming/interactive-funpaper/2026-10-28-peta-petualangan-duo/buku/gen_buku.py, deployscripts/ifp-story-book-pages.sh. - Situs ini:
docs/audit-site/(data JSON +gen.py), deploybash docs/audit-site/deploy.sh→ Pages projecttm-cg-audit.
Sumber teks di kode
- Cerita bab (dialog pembuka + kotak CERITA papan):
src/games/shared/duo/stories/<slug>.json(intro,levels[k],penutup,ngobrol). - Tujuan misi orang tua: JSX di
src/games/shared/duo/missions/<file>.tsx; Tantangan level:*-cases.ts(instruksi/instruksiEasy). - Nama tempat: tiga sumber yang wajib sinkron —
stories/*.json,duo/catalog-data.ts,apps/portal/src/lib/petualangan-data.ts. - Teks game anak:
src/games/calistung-*/; teks bersuara = argumenspeakIndonesian/prefetch/potongan suara — cek berkasvoiceAssetPath(teks)dipublic/audio/voice/livna(manifest tidak lengkap). - Prolog/epilog portal:
apps/portal/src/lib/cerita-bingkai.ts; kartu beranda “Ceritanya dimulai di sini” (selama 0 kunci) →/cerita; setelah 95 kunci kartu Epilog menggantikan “Perhentian berikutnya”; perayaan bab 95 menautkan/cerita#akhir. - Lencana:
apps/portal/src/lib/rewards.ts(game:<slug>,duo:<slug>), artwork/images/badges/; kartu akhir game menampilkan lencana dari progres lokal (CelebrationPopup).
Aturan kerja yang dipegang
- Nama palet desain (ungu/teal/oker) hanya untuk prompt gambar — teks pemain memakai nama warna yang tampil di layar.
- Regenerasi suara (Livna) hanya dengan persetujuan;
scripts/generate-voice-assets.mjs --dumptidak berhenti (lanjut generate) dan--dry-runtetap menimpa manifest. - Test teks: banyak test mengunci teks instruksi persis (kanon); ubah test bersamaan dengan teks.
- Rekam suara baru: susun daftar delta pasti (contoh
docs/audit-site/data/voice-delta-2026-10-30.json), lalunode /Users/mac/Repos/terusmengajar/scripts/ifp-voice-delta.mjs <delta.json> --model=eleven_v4 [--dry-run]— talent tetap Livna (GdyFAZdMpKMBHw5pc1Bu), quota-abort 401/429, credit = jumlah karakter. Sejak 30 Okt 2026 kalimat baru memakai eleven_v4 (v4 hanya menerima stability & similarity; tempo setara v2 speed 0,8). - Audio dilayani dari R2
play-calistung-prod: unggah HANYA berkas baru. Manifest lokalapps/portal/.r2-sync-manifest.jsontidak lengkap (±365 dari ±10.000 berkas suara) —sync-r2-assets --only audio/voice/livnaakan mengunggah ulang ±9.700 berkas. Verifikasi daftar penuh lewat HEAD ke worker.
Riwayat commit terbaru (repo interactive-funpaper)
| Commit | Tanggal | Ringkasan |
|---|---|---|
f9467364 | 2026-10-30 | feat(anak): suara baru Livna (eleven_v4) untuk teks audit instruksi anak + rebuild |
a4f3a360 | 2026-10-30 | feat(anak): rapikan teks bersuara audit instruksi anak (cara hemat) — AUDIO MENYUSUL |
bf704232 | 2026-10-30 | fix(anak): rapikan 3 teks layar dari audit instruksi anak ronde 2 |
f174965d | 2026-10-30 | docs(audit-site): audit ulang instruksi anak ronde 2 — 15 temuan baru |
84c66627 | 2026-10-30 | docs(audit-site): situs audit & catatan teknis Petualangan Duo (tm-cg-audit.pages.dev) |
da22f9f1 | 2026-10-29 | fix(anak): rapikan 13 teks layar game anak yang tak lazim (tanpa rekam ulang suara) |
e7d5671a | 2026-10-29 | fix(anak): bar kunci tak lagi menutupi papan, kotak level bisa diklik, animasi lencana di akhir game |
3ab63753 | 2026-10-29 | fix(duo,portal): rapikan bahasa aneh di cerita/papan + animasi hover peta lebih halus |
488d10ff | 2026-10-29 | feat(duo): sinkronkan cerita level dengan instruksi papan orang tua |
50ac181b | 2026-10-29 | build(bundle): regenerasi bundel (bahasa instruksi orang tua + tautan epilog) |
bbb75571 | 2026-10-29 | feat(portal): prolog & epilog cerita 95 Kunci Kakek |
4aa26dd8 | 2026-10-29 | fix(duo): bahasa instruksi orang tua — audit 174 temuan (95 misi) |
9d0193c8 | 2026-10-29 | feat(portal): kanal Bantuan & dukungan di dashboard orang tua |
6d9b78b7 | 2026-10-29 | build(bundle): regenerasi bundel (URL ikon topi v2) |
0623dbac | 2026-10-29 | feat(duo): topi petualangan standar = konsep v2 (ikon Solo/Duo, landing, peta pulau) |