Câu hỏi thường gặp (FAQ)
Mặc định API chạy ở cổng nào?
Mặc định 2661 (xem hierachain/config/settings.py).
Làm sao bật xác thực API key?
Đặt HRC_AUTH_ENABLED=true và gửi header X-API-Key (hoặc tên tuỳ biến theo API_KEY_NAME).
Khác nhau giữa Main Chain và Sub‑Chain?
Main Chain lưu proof; Sub‑Chain lưu dữ liệu sự kiện chi tiết theo domain.
Tại sao event không có timestamp client gửi?
Server sinh timestamp tại thời điểm nhận; giúp thống nhất nguồn thời gian.
details phải có kiểu gì?
Map
Tạo Sub‑Chain báo lỗi tên không hợp lệ?
Tên chỉ chứa [a-zA-Z0-9_\-] (xem kiểm tra trong api/v1/endpoints.py).
Vì sao submit proof mà block của Sub‑Chain vẫn chưa thấy?
Kiểm tra điều kiện finalize block, thời gian/lô sự kiện; thử gọi lại submit hoặc xem log.
Hiệu năng thấp, hay 503?
Xem ResourceGuardMiddleware, bật cache nâng cao, tối ưu batch size, kiểm tra CPU/RAM.
Có API v2 không và dùng để làm gì?
Có; quản lý channel, private data, contracts, organizations. Xem docs/vi/reference/api-v2.md.
CLI ở đâu và dùng thế nào?
Lệnh hrc (đăng ký trong pyproject.toml). Xem docs/vi/modules/cli.md.
Có thể dùng Redis/SQLite làm backend?
Có; cấu hình qua DEFAULT_STORAGE_BACKEND, DATABASE_URL, REDIS_*.
Làm thế nào để đóng góp mã nguồn?
Xem docs/vi/dev/contributing.md.
Test được bố trí và chạy như thế nào?
Markers/paths trong pyproject.toml. Xem docs/vi/dev/testing.md.
Quy trình phát hành?
Dựa trên setuptools_scm; xem docs/vi/dev/release-process.md.