44 lines
3.7 KiB
Markdown
44 lines
3.7 KiB
Markdown
# 📚 G-Launcher Developer & AI Memory Documentation (`Doc/`)
|
|
> แหล่งรวบรวมข้อมูลสถาปัตยกรรม กฎการพัฒนา รายละเอียดระบบ และประวัติการทำโปรเจกต์
|
|
> **(ใช้สำหรับนักพัฒนาและให้ AI อ่านทบทวนบริบททุกครั้งหลังเกิดการ Compact)**
|
|
|
|
---
|
|
|
|
## 🎯 สรุปข้อมูลหลักที่ห้ามลืม (Master Quick Reference)
|
|
|
|
| หัวข้อ | ข้อมูลสำคัญ |
|
|
| :--- | :--- |
|
|
| **ชื่อโปรเจกต์** | **G-Launcher** (Go + Wails v3 + React 19 + Vite) |
|
|
| **เจ้าของโปรเจกต์** | **GaCy** |
|
|
| **Remote Repository** | `https://gaytea.cod-algieba.ts.net/GaCy/G-Launcher.git` |
|
|
| **Active Branch** | **`Dev`** เท่านั้น (ห้าม push ตรงเข้า main หรือ branch อื่น) |
|
|
| **โครงสร้างรากฐาน** | ผสมผสาน UI/Proxy จาก `Firefly_Launcher` + Core Tools/Rollback จาก `horoyoi-san/game-Launcher` |
|
|
| **กฎเหล็กอันดับ 1** | **แก้ระบบหลังบ้าน (Go Backend) ก่อน UI เสมอ** (`go vet ./...` ต้องผ่านก่อนแก้ Frontend) |
|
|
| **กฎเหล็กอันดับ 2** | **ห้าม Hardcode URL / IP / Path สัมบูรณ์** (รวมไว้ที่ [`pkg/constant/constant.go`](../pkg/constant/constant.go)) |
|
|
| **กฎเหล็กอันดับ 3** | **ระบบอัปเดต:** โหลดลง Temp -> Build ใน Temp -> แทนที่ตัวเก่า -> ลบ Temp ทิ้ง 100% |
|
|
|
|
---
|
|
|
|
## 📑 สารบัญเอกสารในโฟลเดอร์นี้
|
|
|
|
1. [**ARCHITECTURE.md**](./ARCHITECTURE.md)
|
|
* สถาปัตยกรรมโครงสร้างโปรเจกต์ Wails v3, Frontend React 19, และ Backend Services ทั้ง 5 ตัว
|
|
2. [**DEVELOPMENT_RULES.md**](./DEVELOPMENT_RULES.md)
|
|
* กฎ 6 ข้อในการพัฒนา และบทเรียนจาก Horoyoi-san & โปรเจกต์เดิม (Ananta / GaC-hkrpg-go)
|
|
3. [**UPDATER_SYSTEM.md**](./UPDATER_SYSTEM.md)
|
|
* กลไกและวงจรชีวิตของระบบ Auto-Updater และ Local Build (Temp Isolation, Rollback, Cleanup)
|
|
4. [**HISTORY_AND_LOGS.md**](./HISTORY_AND_LOGS.md)
|
|
* ไทม์ไลน์และประวัติการพัฒนาตั้งแต่เริ่มรวม 2 Repos จนถึงฟีเจอร์ปัจจุบัน
|
|
|
|
---
|
|
|
|
## 🤖 คำแนะนำสำหรับ AI Agent (เมื่อตื่นขึ้นมาหลัง Compact)
|
|
|
|
หากพบว่าความจำใน context ถูกย่อ (compacted):
|
|
1. **อ่านไฟล์ในโฟลเดอร์นี้ก่อนเริ่มทำงานเสมอ** เพื่อคืนบริบทของโปรเจกต์ทั้งหมด
|
|
2. เช็คว่ากำลังอยู่บน branch `Dev` หรือไม่ ด้วยคำสั่ง `git status`
|
|
3. ก่อน commit โค้ดใดๆ ต้องรัน:
|
|
* `go vet ./...` (ต้องผ่าน 100%)
|
|
* `npm --prefix frontend run build` (ต้องผ่าน 100%)
|
|
4. สื่อสารกับผู้ใช้เป็นภาษาไทยที่กระชับ ตรงประเด็น และรายงานผลการทำงานอย่างชัดเจน
|