# Context Index — GeoNetAgent ⭐ AI Entry Point > **Terakhir Diperbarui:** 2026-06-29 > **Versi Agent:** v0.1.10-phase0 > **Fase Aktif:** Fase 1 — Foundation 🔄 --- ## Filosofi Proyek ini menerapkan **AI Native Development**: - Repository = sumber kebenaran utama (Single Source of Truth) - AI tidak boleh mengandalkan riwayat percakapan - Developer sering berpindah perangkat — konteks harus tersimpan di repo - Implementasi tanpa dokumentasi = belum selesai --- ## Urutan Membaca 1. **File ini** — peta navigasi 2. `.cursor/blueprint.md` — visi, fase, batas sistem 3. `.cursor/progress.md` — fase aktif & DoD checklist 4. Dokumen spesifik task (lihat tabel di bawah) 5. `perintah.md` — wajib dibaca sebelum menyatakan selesai --- ## Peta Dokumentasi ### Dokumentasi di `docs/` | File | Isi | Baca Saat | |------|-----|-----------| | `docs/project-status.md` | Status modul, progress, known issues | Selalu | | `docs/roadmap.md` | Fase & milestone | Planning | | `docs/todo.md` | Next actions berprioritas | Sebelum coding | | `docs/issues.md` | Known bugs + root cause | Debug | | `docs/environment.md` | Env vars (tanpa secret) | Setup, deploy | | `docs/server.md` | Server list, SSH, deploy commands | Deploy, infra | | `docs/deployment.md` | Step-by-step deploy | Deploy | | `docs/development.md` | Setup lokal, coding standard | Onboarding | | `docs/database.md` | Schema PostgreSQL, tabel, migration | DB change | | `docs/troubleshooting.md` | Debug common problems | Debug | | `docs/monitoring.md` | Zabbix, collector health | Monitoring | | `docs/security.md` | Credential management, rules | Security | | `docs/glossary.md` | Kamus istilah | Reference | ### Arsitektur (`docs/architecture/`) | File | Isi | |------|-----| | `system-overview.md` | Diagram sistem, boundary, komponen | | `folder-structure.md` | Struktur monorepo | | `request-flow.md` | Alur agent → collector → DB | | `authentication-flow.md` | Auth agent token, Laravel session | | `database-flow.md` | Write FastAPI, read Laravel | | `deployment-architecture.md` | Docker, Nginx, server topology | | `storage.md` | QNAP Object Storage (ADR 003) | ### API (`docs/api/`) | File | Isi | |------|-----| | `overview.md` | Base URL, auth, format response | | `service-collector.md` | FastAPI: agent/report, assets, snapshots | | `service-portal.md` | Laravel: portal pages, documents, tickets (planned) | | `error-codes.md` | Error format standar | ### ADR (`docs/adr/`) | ADR | Keputusan | |-----|-----------| | `ADR-001-agent-asset-identity.md` | Identitas asset: serial → smbios_uuid → MAC → machine_id | | `ADR-002-asset-split-by-hardware.md` | Split asset hardware campur (laptop + PC) | | `ADR-003-asset-documents-qnap.md` | Dokumen procurement di QNAP Object Storage | ### Konteks AI di `.cursor/` | File | Isi | |------|-----| | `.cursor/blueprint.md` | Master blueprint, visi, fase, modul M1-M9 | | `.cursor/progress.md` | Checklist fase + milestone history | | `.cursor/db-schema.md` | Schema PostgreSQL detail + ERD Mermaid | | `.cursor/api-contracts.md` | Kontrak API FastAPI, Laravel, webhook | | `.cursor/repo-structure.md` | Struktur monorepo + konvensi | | `.cursor/me.md` | Profil user + inventaris infrastruktur | | `.cursor/server.md` | SSH commands semua server | | `.cursor/monitoring-architecture.md` | Layer monitoring Zabbix/FastAPI/Laravel | | `.cursor/agent-playbook.md` | Workflow multi-tab koordinasi | --- ## Quick Reference ### URL Produksi | Fungsi | URL | |--------|-----| | Agent POST (internet) | `https://agent.gisportal.id/api/v1/agent/report` | | Install agent | `https://agent.gisportal.id/install/` | | Collector UI + read API | `https://collector.gisportal.id/ui/` | | Internal HTTP | `http://10.100.1.24:8000/ui/` | ### Deploy Commands ```powershell .\infra\collector\publish_agent_install.ps1 # publish agent .\infra\collector\push_collector.ps1 # deploy collector bash infra/collector/deploy_nginx.sh # deploy nginx ``` ### Server | Server | IP | SSH | |--------|----|-----| | Reverse Proxy + Collector | 10.100.1.24 | `ssh -m hmac-sha1 root@10.100.1.24 -p 22` | | PostgreSQL | 10.100.1.25 | `ssh -m hmac-sha1 root@10.100.1.25 -p 22` | | AD/LDAP | 10.100.1.40 | `ssh -m hmac-sha1 Administrator@10.100.1.40 -p 22` | | Zabbix | 10.100.1.42 | `ssh -m hmac-sha1 root@10.100.1.42 -p 22` | | QNAP NAS | 10.100.1.10 | `ssh -i "$env:USERPROFILE\.ssh\id_ed25519" -o IdentitiesOnly=yes admin@10.100.1.10 -p 22` | --- ## Fase & Status Saat Ini | Fase | Status | Blocker | |------|--------|---------| | Fase 0 — Blueprint | ✅ Selesai | - | | Fase 1 — Foundation | 🔄 Aktif | Laravel asset index belum scaffold | | Fase 2 — Zabbix integrasi | ⏳ | Menunggu Fase 1 DoD | | Fase 3 — CMDB + Dokumen | ⏳ | Menunggu Fase 2 | | Fase 4 — Scale | ⏳ | Menunggu Fase 3 | --- ## Aturan Utama AI 1. Baca `context-index.md` ini terlebih dahulu 2. Cek `.cursor/progress.md` — jangan implement fase yang belum waktunya 3. Setelah selesai: update progress.md + perintah.md 4. ADR tidak boleh dihapus — buat baru jika keputusan berubah 5. **Jangan commit secret** ke repository