Skip to content

1 · Repository map

โครงสร้างไฟล์ของ vtrc-backoffice-new (branch: uat — ไม่ใช่ master default ที่ว่างกว่า, 773 ไฟล์ที่ track ด้วย git)


โฟลเดอร์ระดับบนสุด

vtrc-backoffice-new/
├── src/               ซอร์สโค้ดแอป (React) — โครงสร้างตรงกับ vtrc-backoffice เกือบทั้งหมด
├── public/            static assets ของ CRA
├── build/             ผลลัพธ์ build ที่ commit ไว้ (~47 MB) — ห้ามแก้มือ
├── meeting/           nginx conf ย่อยสำหรับ path /meeting
├── rc/                nginx conf ย่อย (`rc/default.conf`) — ใช้เป็น target ของ Dockerfile stage-2
├── nginx/             nginx conf หลัก
├── docker-nginx/      ไฟล์เสริมสำหรับ nginx image
├── docker-compose.yml serve build/ ผ่าน nginx:latest โดยตรง (ไม่เรียก Dockerfile)
├── Dockerfile         multi-stage build จริง (node:14.20 → nginx:1.24.0) — ดูเหมือนไม่ได้ถูกเรียกจาก docker-compose.yml
├── nginx.default.conf.bak  ไฟล์ backup
└── package.json / package-lock.json

(branch: uat) หลักฐานจำนวนไฟล์: git ls-files | wc -l = 773 ที่ commit 3672913 (vtrc-backoffice-new/.git, branch uat)

ข้อต่างเดียวที่พบระดับ root เทียบกับ vtrc-backoffice — มีโฟลเดอร์ rc/ เพิ่มเข้ามา (มีไฟล์เดียวคือ default.conf) ส่วน vtrc-backoffice ไม่มีโฟลเดอร์นี้


src/ breakdown — เทียบ vtrc-backoffice

โฟลเดอร์จำนวนไฟล์ (branch: uat)จำนวนไฟล์ vtrc-backofficeต่างกันอย่างไร
src/pages/297296+1 ไฟล์ (Login/index_prd.js เพิ่มมา)
src/components/8383เหมือนกัน
src/recoil/states/2727เหมือนกัน
src/utils/2121เหมือนกัน
src/config/1211+1 ไฟล์ (appllo_bk.js)
src/graphql/+1 ไฟล์ backup+1 ไฟล์ (mutations_api-prd.js) และ queries.js/mutations.js มีบรรทัดมากกว่า (ดูด้านล่าง)

(นับด้วย find {dir} -type f | wc -l ที่ working tree ของ vtrc-backoffice-new บน branch uat)

สรุป diff ไฟล์ทั้งหมดระหว่างสอง repo (diff <(find src -type f | sort) ของทั้งสอง repo) พบว่า vtrc-backoffice-new มีไฟล์เพิ่มมาเพียง 3 ไฟล์ จากทั้งหมด 700+ ไฟล์ใน src/:

  • src/config/appllo_bk.js — ไฟล์มีอยู่จริงแต่ เนื้อหาเป็นไฟล์เปล่า (0 บรรทัด) ยืนยันด้วยการอ่านไฟล์ตรง — ไม่ใช่ backup ของ apollo config ตามที่อาจดูจากชื่อไฟล์ (ทำเครื่องหมายแก้ไขจากสมมติฐานเดิม)
  • src/graphql/mutations_api-prd.js (backup ของ mutations ก่อน deploy prod ล่าสุด — ชื่อไฟล์สื่อถึงการ snapshot ก่อน deploy)
  • src/pages/Login/index_prd.js (backup ของ Login ก่อนเพิ่ม logic checkEmployeeCU/SSO handoff — มีเนื้อหาเกือบเหมือน Login/index.js ปัจจุบันทุกประการรวมถึง checkEmployeeCU เอง จึงเป็นไปได้ว่าเป็น snapshot ที่ใกล้เคียงกับเวอร์ชันล่าสุดมากกว่าจะเป็นเวอร์ชันก่อนเพิ่มฟีเจอร์ — ดู 02-core-pipeline)

ไม่มีไฟล์ใดถูกลบออกเมื่อเทียบกับ vtrc-backoffice — ทุกไฟล์ของ vtrc-backoffice มีอยู่ใน vtrc-backoffice-new ด้วยชื่อ/ตำแหน่งเดียวกัน


src/graphql/ — ขนาดไฟล์ต่างจาก vtrc-backoffice

ไฟล์บรรทัด (uat)บรรทัด (vtrc-backoffice)
queries.js3,3523,316
mutations.js1,9971,995
WorkForce/queries.js, WorkForce/mutations.jsเหมือนกันเหมือนกัน

queries.js มีมากกว่า 36 บรรทัด — ส่วนใหญ่มาจาก query ใหม่ checkEmployeeCU (vtrc-backoffice-new/src/graphql/queries.js:36-46, branch: uat) ที่ไม่มีใน vtrc-backoffice เลย (full-text search ยืนยันไม่พบ string checkEmployeeCU ใน vtrc-backoffice/src เลยทั้ง repo)


src/pages/ — 41 module เหมือนกันทุกชื่อ

รายชื่อ module ตรงกับ vtrc-backoffice/01-repository-map ทุกตัวอักษร (ls src/pages | sort ให้ผลลัพธ์เดียวกันทั้งสอง repo) — ไม่มี module ใหม่หรือ module ที่ถูกลบ


Docker/deploy files — ต่างจาก vtrc-backoffice

ไฟล์vtrc-backofficevtrc-backoffice-new (branch: uat)
DockerfileFROM nginx:1.18 เท่านั้น ไม่ build จาก source (vtrc-backoffice/Dockerfile:1-2)multi-stage node:14.20 build จริง → nginx:1.24.0 (vtrc-backoffice-new/Dockerfile:1-11)
docker-compose.yml network nameuat-vtrc-backoffice-network (vtrc-backoffice/docker-compose.yml:19)vtrc-backoffice-network (vtrc-backoffice-new/docker-compose.yml:19)
โฟลเดอร์ nginx conf พิเศษไม่มีrc/default.conf (vtrc-backoffice-new/Dockerfile:9 อ้างถึงไฟล์นี้ตรง)

ชื่อ network สลับกับที่คาดไว้ตามชื่อ repo — vtrc-backoffice (repo "หลัก" ไม่มีคำ uat ในชื่อ) กลับอ้าง network ชื่อ uat-... ส่วน vtrc-backoffice-new (repo ที่ canonical branch คือ uat) กลับอ้าง network ที่ไม่มีคำ uat — เป็นไปได้ว่าเป็นความสับสนตอนตั้งชื่อ หรือ docker-compose.yml ไม่ใช่ config ที่ ops ใช้จริงบนเซิร์ฟเวอร์ (ทำเครื่องหมาย UNVERIFIED)


ขั้นตอนถัดไป

ไป 2 · API endpoint resolution + auth/login flow + SSO handoff