# Prompt AI Agent - End of Session Project Knowledge Preservation > **Trigger:** akhir sesi / sebelum commit-push. Alias: `/handover` > **Workspace:** monorepo (satu git root, banyak subproject) --- ## Objective Pindahkan pengetahuan sesi ke docs agar agent berikutnya lanjut dengan **token minimal** (< 2000 token cold start). Chat **bukan** penyimpanan pengetahuan. Catatan penting, arsitektur, flow, keputusan teknis **wajib** masuk docs (owner yang benar). --- ## Scope Identifikasi subproject yang berubah. Project tanpa perubahan: skip. --- ## Tier Handover ### Tier 1 - Minimal (WAJIB jika ada perubahan kode/config) 1. **OVERWRITE** `docs/ai-session-summary.md` - Max 80 baris / ~1500 token - Wajib: yaml + **TL;DR** + **Lanjut dari sini** + **Jangan** - Detail opsional (omit-if-N/A) - **Satu-satunya rolling session memory** - jangan andalkan WORKLOG/development-log 2. **UPDATE** `docs/todo.md` - Seksi "Selesai (Sesi Ini)" di-overwrite (bukan menumpuk) 3. **APPEND** `docs/changelog.md` (Keep a Changelog saja) 4. **APPEND** `docs/version.md` (poin-poin versi) — **wajib** jika deploy / naik versi / install ke device atau server; format bullet seperti entri semver yang ada; jangan overwrite entri lama 5. **UPDATE** `AGENTS.md` (root project) **hanya jika** aturan kritis / pointer berubah ### Tier 2 - Jika relevan | Kondisi | Aksi | |---------|------| | Bug / limitation | `docs/issues.md` | | Keputusan arsitektur / flow sistem | `docs/adr/` | | Flow / prosedur step-by-step | `docs/guide/` | | Host/IP, runtime (Docker/nginx/IIS/Apache), DB, port berubah | `docs/server.md` | | System requirement (OS, JDK, Docker, DB versi) berubah | `docs/system-requirements.md` | | Migrasi server/domain / cutover URL | `docs/guide/migration.md` + `.env.example` | | Variabel env/URL baru | `.env.example` (root project); kode baca env — **no hardcode** | | Progress area | `docs/project-status.md` | | Dokumen/struktur baru | `docs/context-index.md` | | API berubah | `docs/api/` | ### Tier 3 - Monorepo **OVERWRITE** `Workspace-Session.md`: - Seksi **Active focus** di atas (1-3 baris per project) - Tabel project + link session summary + version - Cross-project impact - Jangan duplikasi isi session summary --- ## Single Owner | Informasi | Owner | |-----------|-------| | Cold start / aturan kritis | `AGENTS.md` (root project) | | Narasi sesi (rolling) | `docs/ai-session-summary.md` | | Priority / TODO | `docs/todo.md` | | Bug / RCA | `docs/issues.md` | | Changelog kategori | `docs/changelog.md` | | Poin versi | `docs/version.md` | | API | `docs/api/` | | Step-by-step / flow prosedur | `docs/guide/` | | Server / IP / runtime / DB | `docs/server.md` | | System requirements | `docs/system-requirements.md` | | Migrasi server/domain | `docs/guide/migration.md` | | Template URL/env (dynamic) | `.env.example` (root) | | Peta domain | `docs/context-index.md` (on-demand) | | Lintas project sesi | `Workspace-Session.md` | **Arsip (bukan jalur baca wajib):** WORKLOG, development-log, history panjang. --- ## Read budget (untuk AI berikutnya) | Tujuan | Baca maksimal | |--------|----------------| | Lanjut task yang sama | `AGENTS.md` + `ai-session-summary` (TL;DR/Lanjut/Jangan) | | Ambil task baru | + `todo.md` (High saja) | | Debug | + `issues.md` (ID terkait) | | Ubah API | + `docs/api/` | | Ikuti prosedur | + `docs/guide/` | | Deploy / debug koneksi / infra | + `docs/server.md` | | Migrasi / ganti domain | + `docs/guide/migration.md` + `.env.example` | | Setup tool chain | + `docs/system-requirements.md` | | Keputusan arsitektur | + `docs/adr/` terkait | | Navigasi domain | + `context-index.md` Zona B | **Urutan cold start:** ``` Workspace-Session.md (jika multi-project; baca Active focus dulu) -> {project}/AGENTS.md -> {project}/docs/ai-session-summary.md -> STOP - mulai kerja ``` Target: **< 2000 token** sebelum coding. --- ## No hardcoded URL (wajib) - Semua **URL, domain, base path, host:port** di aplikasi harus dari **environment** atau config yang dibaca saat runtime/build (.env, env var, BuildConfig, gradle.properties). - **Dilarang** hardcode di source code kecuali unit test mock atau .env.example placeholder. - Saat migrasi domain/server: ubah .env / server config + update .env.example, server.md, guide/migration.md — **bukan** scatter edit URL di banyak file kode. - Android/Kotlin: base URL lewat BuildConfig/flavor, bukan string literal di Activity/Service. - Commit: .env.example boleh; .env dengan secret **tidak**. --- ## Knowledge compression - Ringkas; omit-if-N/A; referensi jangan salin - **Harus masuk docs:** solusi bug, troubleshooting, config, deploy, keputusan teknis, arsitektur, flow, **system requirements**, **inventori server**, **langkah migrasi server/domain**, root cause, workaround, dependency, versi - **Jangan:** secret, log mentah, chat verbatim, info yang sudah di kode --- ## Validation Lihat `templates/handover-checklist.md`. Minimal: - [ ] Tier 1 lengkap - [ ] Session summary punya TL;DR + Lanjut + Jangan, <= 80 baris - [ ] Tidak ada pengetahuan penting hanya di chat - [ ] Tidak ada secret di diff --- ## Git Commit Conventional Commits hanya jika user meminta. Push hanya jika diminta. ## Final Report Project, tier, file, version, TODO/issue/ADR baru, ringkasan, next steps.