BAGA Biz docs Yêu cầu & nghiệm thu
Baseline · brief v0.1-draft (26/09/2026)

Trạng thái và quy tắc chuyển bước

State machines theo từng trục nghiệp vụ và business rules (BR) — invariant triển khai enforce phía server.

1. Các trục trạng thái

Mỗi thực thể có vòng đời riêng nên tách state machine theo trục (account, cart, order, payment, shipment, content, …) thay vì một cột status cố gánh mọi sự kiện. Register: data/states.yaml.

TrụcCác trạng thái chính
Ví dụ trục — thay bằng trục trạng thái thậtState A → State B → State C; nhánh Exception / Cancelled. Ghi rõ điều kiện chuyển bước nhạy cảm (ai được chuyển, khi nào).

Ghi chú chung về state machine (ví dụ: chuyển state bằng API/server rule và audit ở action nhạy cảm).

Các transition nhạy cảm phải fail-closed:

  • chuyển state bằng API/server rule, không dựa vào ẩn nút UI;
  • action nhạy cảm phải audit actor/time/action/target/reason;
  • state không được tự sinh từ hệ thống ngoài khi chưa có integration được chốt.

2. Business rules (BR)

Các rule dưới đây là invariant triển khai, không phải gợi ý UI. Register: data/br.yaml.

Quy tắcĐiều kiện chuyển bước
BR-00 — [VÍ DỤ] Thay bằng business rule thậtInvariant triển khai: điều kiện phải đúng trên mọi đường thực thi, enforce phía server/API, không phụ thuộc ẩn nút UI.

3. Negative-path bắt buộc

  • TODO: negative path 1
  • TODO: negative path 2

Baseline nguồn: packages/biz-docs/SOURCE-REQUIREMENTS.md · 26/09/2026 · repo RunLumi/bagaofficial.com

Requirement có trong baseline nghiệp vụ được đánh dấu Baseline. Chi tiết chưa đủ để code/nghiệm thu phải nằm ở trạng thái Cần chốt hoặc D-xx Mở, không tự suy diễn thành cam kết. Trạng thái được cập nhật trong packages/biz-docs/data/.