Common Errors — Symptom → Cause → Fix←
ตารางสรุป error ที่พบบ่อยทั้งฝั่ง agent + admin + technical
HTTP Status←
401 Unauthorized←
Symptom: Auto logout หรือ "Token หมดอายุ"
Cause:
- JWT 7-day expired
- JWT_SECRET ใน backend เปลี่ยน (DevOps deploy)
- Token ถูกเคลียร์จาก localStorage
Fix: Login ใหม่
403 Forbidden — "Admin only"←
Symptom: กดสร้าง/แก้/ลบใน Settings → alert "Admin only" + console 403
Cause: Stale token (role ใน JWT ≠ role ใน DB ปัจจุบัน)
Fix: Logout + login ใหม่ — ดู Agent FAQ — Q2
403 Forbidden — "Access denied"←
Symptom: เปิด conversation แล้ว 403
Cause: OA ของ conversation นี้ไม่อยู่ใน allowedOaIds ของ agent
Fix: Admin → 🔐 จัดการสิทธิ์ → ติ๊ก OA นั้นให้ agent
500 Internal Server Error (random)←
Cause: Backend bug หรือ DB ไม่พร้อม
Fix: ดู docker logs inbox_backend | tail -50 (DevOps task)
500 ที่ /api/auth/me เฉพาะ←
Cause: SQL query corrupted (เกิดบน chat.aurora1688.vip 2026-05-04 — WHERE id = $1 หาย $1 จากการ shell-expand)
Fix: DevOps deploy ใหม่ผ่าน Deploy-MergeChat (มีการ refactor + post-deploy auth smoke ป้องกันแล้ว)
WebSocket←
"[WS] Disconnected — retrying in 3s"←
Cause (ปกติ): Network blip, Caddy reload, backend restart
Fix: รอ 3-9 วินาที ระบบ retry อัตโนมัติ — ถ้า disconnect นาน >30s ให้ refresh page
"[WS] Connected" แต่ไม่ได้รับ message ใหม่←
Cause:
- WS connect แต่ไม่ subscribe room (auth issue ตอน WS handshake)
- Backend WS broadcast bug
Fix: Logout + login → reconnect WS fresh
LINE Webhook←
Webhook Verify FAIL ที่ LINE Console←
Cause + Fix: ดู Admin FAQ — Q1
ลูกค้าทักไม่เข้า mergchat←
Cause:
- LINE Use webhook = OFF
- mergchat OA toggle = OFF
- Webhook signature mismatch (Channel Secret ผิด)
- Backend down
Fix: ดู Admin FAQ — Q2
Quick Replies←
บันทึก slot empty → 400←
Cause: Backend reject empty text field (validation 1+ char)
Fix: ใส่ space เดียว " " หรือเปลี่ยนเป็นข้อความอื่น
Database←
"psql: connection refused"←
Cause: Postgres container ไม่ running
Fix:
Schema mismatch←
Cause: ลืม run migration หลัง deploy
Fix: DevOps run Test-Deploy-MergeChat audit เทียบ schema กับ reference (chat-olive888)
Caddy / TLS←
TLS cert expired←
Cause: Caddy auto-renew failed (rare — ปกติ Caddy ทำเอง)
Fix:
"502 Bad Gateway"←
Cause: Caddy → backend connection refused (backend down or port wrong)
Fix: ตรวจ backend container status; ถ้า down → restart
Performance←
หน้า Inbox โหลดช้า←
Cause:
- Conversation count > 10,000 → query slow (no pagination yet in v1)
- Backend CPU/memory แน่น
Fix:
- ปิด conversation เก่าๆ (ปุ่มปิดเคส)
- DevOps scale backend (vertical: เพิ่ม RAM/CPU; horizontal: load balancer + multiple replica)
ที่อ้างอิง←
- FAQ Agent: Agent issues
- FAQ Admin: Admin issues
- API Reference: ../../../API-Docs-MergeChat (sibling project)