Bỏ qua để đến nội dung

Feature Flags

Đường dẫn: Menu → Vận hành → Feature Flags (/games/{gameId}/feature-flags)

Ai dùng được

Đây là quyền endpoint theo backend/src/admin_portal/core/permissions.py; các thao tác nhạy cảm như PII có kiểm tra step-up riêng. Super Admin vượt ma trận bằng quyền khẩn cấp.

Tài nguyên endpointHành động cầnVai trò được backend cho phép
game_registry READ Super Admin, Game Owner, Analyst, Auditor
admin_users ADMIN Super Admin

Đọc cờ cần GAME_REGISTRY/READ; cập nhật cần ADMIN_USERS/ADMIN. Cờ là cấu hình cấp game.

Điều kiện hiển thị: Có game đang chọn và GAME_REGISTRY/READ để đọc. Cập nhật cờ riêng yêu cầu ADMIN_USERS/ADMIN.

Xem và thay đổi cờ bật tắt module của game.

Gợi ý trong Portal (frontend/src/app/(portal)/games/[gameId]/feature-flags/page.tsx): Bật/tắt từng tính năng riêng cho game này, không ảnh hưởng game khác. Mỗi dòng ghi tính năng đó làm gì và điều gì xảy ra khi tắt. Tắt một tính năng chỉ khóa trang và API của nó (cả phía Portal lẫn phía game). Dữ liệu đã có không bị xóa; bật lại là dùng tiếp. “Mặc định” nghĩa là game chưa từng cấu hình riêng cờ này và đang theo giá trị mặc định. “Đã cấu hình” nghĩa là đã có người bật/tắt cho game này. Các tính năng phía game (Điểm danh, Hộp thư quà, Hồ sơ, Bảng xếp hạng) và Duyệt 2 người mặc định tắt; các module quản trị còn lại mặc định bật. Game nhận thay đổi khi tải lại cấu hình khởi động (cache khoảng 30 giây). Dữ liệu nghiệp vụ được giới hạn theo gameId đang chọn.

  1. Đọc danh sách flag cho game; xác nhận key, trạng thái và tính năng phụ thuộc.
  2. Bật/tắt flag chỉ sau khi kiểm tra ảnh hưởng và quyền ADMIN_USERS/ADMIN; xác minh lại trạng thái.

Xác nhận game, flag key và tác động phụ thuộc trước khi bật/tắt; thao tác có thể ảnh hưởng ngay toàn bộ người chơi.

Toast lỗi cập nhật flag trả detail từ API; kiểm tra quyền ADMIN_USERS/ADMIN và enum feature_key.

Tạo cấu hình điểm danh và bật module · Audit Log · Vai trò và quyền

Kiểm tra lần cuối với Portal v1.2.2. Hướng dẫn được đối chiếu mã nguồn; chưa chạy thao tác trên dev stack.

Áp dụng cho Portal v1.2.2