# Daily Notes — 2026-06-18 (Kamis)

## 📆 Catatan Sesi

### 🎯 Yang Dikerjain

**Session Focus:** Produksi massal konten carousel untuk @balimentari + riset tren + planning konten turunan. Juga meliputi daily routines: weather check Bali (BMKG), World Cup 2026 updates, & daily news briefing.

**Konten yang udah selesai (generate & approved):**

| # | Topik | Slide | Status |
|---|-------|-------|--------|
| 1 | Sadar vs Bawah Sadar | 6 slide ✅ | Approved, 3:4 regenerated |
| 2 | Contoh Bawah Sadar Gak Kita Sadari | 7 slide ✅ | Approved, 3:4 regenerated |
| 3 | Si Penjaga Pintu (Critical Factor) | 6 slide ✅ | Monokrom + kuning |
| 4 | Kenapa Afirmasi Gak Selalu Work | 6 slide ✅ | - |
| 5 | Kenapa Trauma Lebih Nempel | 7 slide ✅ | - |
| 6 | Projection: Marah ke Orang Gak Salah | 7 slide ✅ | - |

**Konten yang udah siap prompt (belum di-generate):**
- 🎭 "Fake It Till You Make It: Works or Not?" — 6 slide ✅ prompt ready
- 🙈 "Denial: Gue Gak Kenapa-Kenapa" — 7 slide ✅ prompt ready
- 🎁 "Secondary Gain: Manfaat Tersembunyi dari Masalahmu" — 8 slide ✅ prompt ready
- 🔒 "Comfort Zone: Penjara Paling Nyaman" — 7 slide ✅ prompt ready

### 🔧 Teknis Viostudio API

**Endpoint:** `POST /v1/images/generate`
**Model:** `gpt-image-2.0` (5 credits/image)
**CRITICAL - Aspect Ratio workaround:**
- ✅ `"3:4"` — **WORKS** (ini yang dipake untuk IG carousel)
- ✅ `"portrait"` — WORKS (tapi kurang presisi)
- ❌ `"4:5"` — **ERROR 400**
- ❌ `"3/4"` — **ERROR 400**

**Polling:** `GET /v1/generations/{id}`
**Credits:** ~~128 remaining~~ — Banyak terpakai, estimasi tinggal ~30-40 credits (cek ulang sebelum generate batch berikutnya)

**Timeout handling:** Script perlu split per 3-4 slide (batch), polling 8 detik/interval max 30x retry. Kadang HTTP 500 error, retry works.

### 🎨 Brand @balimentari — Style Guide

| Elemen | Detail |
|--------|--------|
| Warna 1 | Deep teal blue (#1A5F7A) |
| Warna 2 | Soft cream (#FFF8F0) |
| Aksen | Orange (#FF9F43) |
| Style | Flat vector illustration, minimalis, modern aesthetic |
| Format | 3:4 aspect ratio (Instagram carousel) |
| Font | Sans-serif bold untuk judul |
| Vibe | Calming, profesional, edukatif, relatable |

### 📝 Workflow Konten

1. User (Mas Eko) kasih topik / minta ide
2. Aku propose konsep slide + prompt detail (JANGAN generate dulu kalo gak minta)
3. Mas Eko review, kalau oke bilang "gas"
4. Generate via Viostudio (split batch 3-4 slide biar gak timeout)
5. Kirim URL hasil + caption ready
6. Repeat

**Key insight:** Mas Eko selalu minta caption juga setelah slide jadi.

### 🧠 Content Universe (Saling Nyambung)

Semua konten @balimentari adalah **satu seri psikologi bawah sadar**:

```
Bawah Sadar (dasar teori)
  ├─ Contoh Bawah Sadar (aplikasi)
  ├─ Critical Factor / Si Penjaga Pintu (mekanisme)
  │    ├─ Self-Sabotage (manifestasi)
  │    ├─ Denial (bentuk defense)
  │    └─ Secondary Gain (manfaat tersembunyi)
  ├─ Afirmasi Gak Work (masalah)
  │    └─ Fake It Till You Make It (solusi)
  ├─ Trauma Lebih Nempel (mekanisme ingatan)
  │    └─ Projection (manifestasi trauma)
  └─ Comfort Zone (penghalang perubahan)
```

### 🌍 Daily Routines (Di Luar Konten)

**Pola interaksi Mas Eko (selain konten):**
1. **✅ Cuaca Bali harian** — Setiap pagi (07:00 WITA/UTC) minta cek BMKG. Responsif dan suka format lucu.
2. **✅ World Cup 2026 updates** — Setiap jam 12 siang (12:00 UTC). Cron job udah dibuat 7 Juni. Berisi skor, pemain bintang, stats, drama, jadwal.
3. **✅ Berita Harian Indonesia** — Setiap malam (22:00 UTC). Format rapi dengan emoji, kategorisasi. Covers politik, ekonomi, teknologi, hiburan, olahraga.
4. **✅ Cron job World Cup** — Dibuat 7 Juni 2026, jalan tiap hari jam 12 siang. Agent ID: `bbb952b5-2b4c-470c-9292-7d03cd45eb2f`

**Learning:** Mas Eko suka format yang konsisten dengan emoji, humor santai, tapi informatif. Gak suka info yang terlalu kaku/formal.

### 🧪 Session Events (14-16 Juni 2026)

**14 Juni — Critical Factor Content Ideation:**
- Topik: Critical Factor antara pikiran sadar ke bawah sadar
- Mas Eko minta contoh simpel sehari-hari untuk IG post 3:4
- Dua opsi carousel diajukan: "JENDELA PELUANG" (golden window) & "SI PENJAGA GERBANG"
- Slide 1 (JENDELA PELUANG) diminta generate duluan dengan teks

**14 Juni — Viostudio Generate (Slide 1):**
- **Attempt 1:** 1080×1350 (4:5) ❌ — User koreksi "bukan.. ukuran ig post"
- **Attempt 2:** 1080×1440 (3:4) ✅ dengan text overlay di prompt
- Generation ID: 148216
- Credits terpakai: 5 (sisa estimasi ~30-40)
- Catatan: gpt-image-2.0 bisa generate teks tp hasil tipografinya kurang presisi

---

### 📋 Rencana Konten Selanjutnya

Dari 10 ide yang diajukan, Mas Eko udah pilih/kerjain:
- ~~1. Boundaries~~ → skip (belum dipilih)
- ~~2. Inner Child~~ → skip
- ~~3. Doomscrolling~~ → skip
- ~~4. Ide pas mau tidur~~ → skip
- ~~5. Dopamine Detox~~ → skip
- ~~6. Overthinking vs Intuisi~~ → skip
- ~~7. Self-Sabotage~~ → prompt ready
- ~~8. Fake It Till You Make It~~ → prompt ready ✅
- ~~9. Defense Mechanism series~~ → Denial ✅, Projection ✅
- ~~10. Trauma series~~ ✅
- ~~11. Kenapa Marah ke Orang Gak Salah~~ ✅ (Projection)

Next potential: Boundaries, Inner Child, Doomscrolling, Dopamine Detox, atau lanjut defense mechanism lainnya (Rationalization, Sublimation, Repression).

---

## 💭 Reflections & Learnings

1. **Prompt engineering untuk image gen:** Teks Indonesia di prompt harus ditulis persis seperti yang diinginkan muncul di gambar. Semakin detail prompt tentang posisi, ukuran font, dan warna, semakin baik hasilnya.
   - **TAPI** — gpt-image-2.0 (dan AI image model pada umumnya) sering ngaco soal rendering teks: font beda, ada typo, layout tidak presisi.
   - **Solusi:** Generate background-only (tanpa teks) dari AI, lalu overlay teks manual pake Python/PIL. Ini jauh lebih rapi.

2. **Aspect ratio confusion:** User request "3:4" untuk IG feed (bukan 9:16 yang story/reels, bukan 4:5 yang biasa jadi patokan). Selalu konfirmasi aspect ratio sebelum batch generate.
   - ✅ 3:4 = **1080×1440 px** (ini bener)
   - ❌ 1080×1350 = **4:5** (SALAH — user koreksi "bukan.. ukuran ig post")

3. **Batch splitting essential:** 6-7 slide sequential generate + poll butuh 5-10 menit. Split ke 2 batch (3-4 slide) biar aman dari timeout.

4. **User trust signal:** Mas Eko udah trusted untuk langsung "gas" setelah aku kasih konsep detail. Tapi tetap harus tawarin konsep dulu, jangan langsung generate.

5. **Caption always requested:** Setiap carousel selalu ditanyain caption-nya. Better prepare caption bersamaan dengan hasil generate.

6. **Konsep prompt pertama harus jelas:** Mas Eko minta prompt detail "biar pas generate nantinya" — artinya dia review prompt dulu sebelum gas. Jadi prompt harus udah matang di tahap konsep.

7. **Content interconnectivity:** Mas Eko suka konten yang saling nyambung (satu universe). Semakin nyambung ke konten sebelumnya, semakin tinggi aproval rate idenya. Selalu sebutin "Nyambung ke: [konten sebelumnya]" di setiap proposal.

8. **Perbaikan:** Dulu pertama generate pake ukuran salah (4:5 / portrait). Sekarang udah fix pake "3:4". Jangan ulangi.

9. **Generate flow:** Jangan auto-generate. Tawarin konsep detail dulu → user review → user bilang "gas" → baru generate. Kalau user minta "generate dulu coba slide 1" itu berarti gas untuk sample 1 slide doang.

10. **Multiple tools availability:** Browser (BMKG) sering error/ngambek. Tavily search bisa jadi fallback buat cuaca & berita. Punya akses ke API eksternal (Viostudio) untuk image generation.
