4.1 KiB
4.1 KiB
🔍 ผลการตรวจสอบการผสานต้นน้ำ (Upstream Merge & Provenance Audit)
เอกสารนี้บันทึกที่มา (Provenance) ของโค้ดทุกส่วนใน G-Launcher โดยแจกแจงอย่างชัดเจนว่าฟีเจอร์ใดนำมาจาก Firefly-Shelter/Firefly_Launcher หรือ horoyoi-san/game-Launcher
1. ตารางแจกแจงที่มาของไฟล์และฟังก์ชัน (File Attribution Matrix)
| ไฟล์ / แพ็กเกจใน G-Launcher | โครงการต้นแบบ | เหตุผลทางวิศวกรรมและสิ่งที่ปรับปรุง |
|---|---|---|
frontend/src/ (UI Pages & Components) |
Firefly Launcher | ดีไซน์ทันสมัย เรียบหรู รองรับ DaisyUI 5 และ TailwindCSS v4 |
internal/git-service/git_runtime.go |
Horoyoi-san | นำระบบดาวน์โหลด Portable MinGit x64 อัตโนมัติมาใช้ เพื่อรองรับ Zero-Dependency |
internal/fs-service/game-selection.go |
Horoyoi-san | นำระบบ Atomic Write ด้วย Windows API MoveFileEx มาใช้เพื่อป้องกันไฟล์คอนฟิกเสียหาย |
internal/diff-service/ziff.go |
Horoyoi-san | นำ Wrapper สำหรับเครื่องมือ zift.exe มาใช้รองรับไฟล์แพตช์นามสกุล .ziff |
internal/language-service/thai-patch.go |
Horoyoi-san | นำเอ็นจินแก้ไขไฟล์ไบนารี ExcelData พร้อมระบบสำรอง .backup มาใช้สำหรับม็อดภาษาไทย |
scripts/launcher-release.mjs |
Horoyoi-san | นำสคริปต์คำนวณเวอร์ชัน SemVer และสร้าง latest.json มาใช้ใน CI/CD Release Pipeline |
frontend/public/locales/th.json |
G-Launcher (GaCy) | เขียนคำแปลภาษาไทยฉบับสมบูรณ์สำหรับทุกหน้าจอ ปุ่ม และเมนูของ Launcher |
scripts/bootstrap.ps1 |
G-Launcher (GaCy) | พัฒนาระบบ Auto-Updater & Local Build ที่ทำงานแบบ Temp Isolation + Rollback + Purge Temp |
update-and-build.bat |
G-Launcher (GaCy) | พัฒนาสคริปต์คลิกเดียวสำหรับผู้ใช้ทั่วไปเพื่ออัปเดตและคอมไพล์โดยไม่ต้องตั้งค่าใดๆ |
internal/git-service/launcher.go |
G-Launcher (GaCy) | ผสานระบบตรวจสอบผ่าน Manifest SHA-256 และระบบคอมไพล์จากซอร์สโค้ดใน Temp เข้าด้วยกัน |
2. การจัดการ Naming และ Module Rebranding
เพื่อปฏิบัติตามคำแนะนำของ Horoyoi-san ("ส่วนชื่อที่เป็น sunbringer หรือชื่อผมค่อยไปเปลี่ยนทีหลังนะ"):
- Module Name: เปลี่ยนชื่อ Go Module หลักเป็น
g-launcherในgo.mod - User-Facing Branding: เปลี่ยนชื่อหน้าต่าง, Title, ข้อความใน UI, และ Metadata ของ Windows Application Manifest เป็น G-Launcher
- Internal Identifiers: อนุรักษ์ชื่อโครงสร้างข้อมูลและโปรโตคอลภายในที่จำเป็นต่อการเชื่อมต่อกับระบบเดิมไว้ เพื่อไม่ให้กระทบต่อ Wails Bindings และ Protobuf Serialization