Skip to content

Changelog

v2026.03.26

Tính năng mới

  • Thông báo cập nhật: Banner thông báo khi có phiên bản mới + changelog + hướng dẫn update
  • Nút Dừng job: Có thể dừng job đang chạy từ giao diện (#7)
  • Docs + Version: Hiển thị ở sidebar, truy cập nhanh tài liệu và changelog
  • URL ứng dụng: Cấu hình URL trong Cài đặt để link thông báo Telegram/Email chính xác (#43)
  • Lịch chạy "Sau mỗi lần đồng bộ": Tự động chạy phân tích sau khi đồng bộ kênh thành công (#7, #45)
  • Cron hot-reload: Tạo/sửa/xóa job "Theo lịch" không cần restart app

Sửa lỗi

  • Job bị treo: Fix infinite loop khi batchSize=0, thêm context cancellation check, check lỗi DB query (#7)
  • Facebook token: Fix lỗi "must be called with Page Access Token" — tự động exchange User Token thành Page Token (#12, #13, #14)
  • Gemini models: Thay gemini-2.0-flash (deprecated) bằng gemini-2.5-flash/pro
  • Lịch chạy: Không lưu được "Lịch chạy" khi sửa công việc (#9)
  • AI model: Job detail hiện đúng AI model từ Settings global thay vì giá trị cũ (#33)
  • Tỷ giá: Dashboard dùng tỷ giá từ tenant settings thay vì hardcode 26000 VND (#23)
  • Install script: Fix bị treo trên Ubuntu do interactive prompt (#35)
  • Ảnh trong đánh giá: Hiển thị ảnh/sticker/file trong "Diễn biến cuộc chat" + lightbox zoom (#39)
  • Link Telegram: Link thông báo dùng domain thực thay vì localhost (#43)
  • Job polling: Spinner/progress bar dùng server status, không timeout cứng — F5 tự resume polling
  • Badge tab: Đánh giá/Phân loại badge màu nổi hơn
  • Mobile sidebar: Không tự mở sidebar trên điện thoại sau khi login

Bảo mật

  • Thêm security log khi từ chối truy cập file (IDOR fix)
  • IDOR: Kiểm tra tenant ownership khi serve file (#22)
  • Token refresh: Fix race condition gây logout bất ngờ (#26)
  • OAuth state URL-encoded (#29)
  • Goroutine timeout cho TriggerJob và TestRunJob (#30, #31)
  • Giới hạn per_page max 100 tránh DB exhaustion (#32)
  • Infinite polling: Frontend tự dừng poll sau timeout (#27, #28)
  • RBAC: Phân quyền Member đầy đủ — backend middleware + frontend ẩn menu/nút + router guard (#42)
  • Export: Member không có quyền ghi không được export tin nhắn
  • Tạo/xóa công ty: Chỉ admin/owner mới được tạo và xóa công ty

Tài liệu

  • Sửa hướng dẫn lấy Telegram Group ID — dùng Telegram Web (#36)
  • Thêm hướng dẫn chạy localhost (Zalo OA hỗ trợ callback localhost) (#34)
  • Sửa docs Zalo OA: localhost không cần SSL (#37)
  • Đơn giản hóa cài đặt Watchtower — 1 lệnh curl thay vì sửa YAML thủ công

v2026.03.24

Bug Fixes

  • Timezone: Sửa lệch giờ 7 tiếng giữa Zalo OA và CQA — giờ hiển thị đúng GMT+7 (#5)
  • Sửa công việc: Không lưu được "Quy tắc cho AI" khi sửa công việc phân tích (#2)
  • Đồng bộ kênh: Chuyển sang async để tránh lỗi 504 timeout khi đồng bộ
  • Rate limit: Tăng giới hạn mặc định lên 500/IP và 1000/user mỗi phút
  • Hiển thị ảnh: Sửa lỗi không hiển thị ảnh từ Facebook trong tin nhắn
  • Auto-reload: Tự tải lại khi JS chunks cũ sau deploy

Mobile UI

  • Onboarding bar: scroll ngang mượt, nút X luôn hiện
  • Dashboard: ẩn tiêu đề trên mobile, date filter responsive
  • Tin nhắn: toggle list/detail trên mobile thay vì xếp chồng
  • Tạo công việc: stepper không còn đè chữ
  • Chi tiết công việc: header compact, buttons responsive
  • Bảng dữ liệu: thêm scroll ngang cho các bảng bị tràn

CI/CD

  • Tự động build + push Docker image lên Docker Hub khi push main
  • Versioning theo ngày: v2026.03.24, v2026.03.24.2...
  • Tự động tạo GitHub Release với changelog

Documentation

  • Thêm yêu cầu hệ thống vào hướng dẫn cài đặt
  • Ảnh trong docs có thể click zoom
  • Hỗ trợ macOS và Windows (Docker Desktop)

[1.0.0] - 2025-03-23

Ra mắt phiên bản đầu tiên

  • Đồng bộ tin nhắn từ Zalo OA và Facebook Messenger
  • Đánh giá chất lượng CSKH bằng AI (Claude / Gemini)
  • Phân loại chat theo chủ đề tùy chỉnh
  • Cảnh báo tự động qua Telegram và Email
  • Batch AI mode — tiết kiệm chi phí gọi AI
  • Dashboard với biểu đồ và thống kê
  • Multi-tenant với phân quyền Owner > Admin > Member
  • Tích hợp MCP cho Claude Web/Desktop
  • Nginx reverse proxy + SSL tự động (Let's Encrypt)
  • Docker Compose deployment
  • Hỗ trợ Docker Hub images

Phát hành theo giấy phép MIT