When — Năm mốc M0 tới M4
Câu hỏi trang này trả lời: dự án đang ở đâu, mốc nào đã đóng, mốc nào đang kẹt — và kẹt vì ai.
Trạng thái một dòng
Tính tới 2026-08-04: hai mốc đầu đã đóng và đang phục vụ người dùng thật tại https://9cashback.com. Mốc thứ ba đã dựng xong phần lớn nhưng không mở được, vì đang chờ một mạng đối tác duyệt hồ sơ — việc nằm ngoài tầm kiểm soát của đội. Hai mốc cuối phụ thuộc hợp đồng và giấy phép.
Năm mốc và phụ thuộc bên ngoài của từng mốc
Sơ đồ: Năm mốc theo thứ tự — mốc đầu tiên được thiết kế để không phụ thuộc bên thứ ba nào, đúng vì các mốc sau đều phụ thuộc.
| Mốc | Nội dung | Phụ thuộc bên ngoài | Trạng thái |
|---|---|---|---|
| M0 · Nền móng | Kho mã, lược đồ dữ liệu, đăng nhập, lõi sổ cái, môi trường phát triển | Không | ✅ Đóng |
| M1 · Sản phẩm chạy được | Quét hoá đơn, danh mục thủ công, rút tay, giới thiệu một tầng | Không | ✅ Đóng |
| M2 · Theo dõi liên kết | Bộ chuyển đổi mạng, ghi lượt bấm, nhận báo về, đối soát | ⛔ Mạng đối tác duyệt hồ sơ | 🔧 Hạ tầng xong, chưa mở |
| M3 · Mở rộng | Mạng thứ 2–3, rút tự động, hệ hạng, thị trường thứ hai | Đối tác chi trả | 🔭 Chưa bắt đầu |
| M4 · Cần đối tác & pháp lý | Thẻ liên kết, quỹ cộng đồng, tiếng Ả Rập | Hợp đồng · pháp lý · bản dịch | 🔭 Toàn bộ chờ người |
M0 — nền móng đã đóng những gì
| Việc | Ý nghĩa |
|---|---|
| Chuyển sang kho mã đơn nhiều gói, môi trường phát triển bằng vùng chứa | Nền để cả đội làm song song |
| Lược đồ dữ liệu v1 với cột khu vực trên mọi bảng | Quyết định đắt tiền số 2, chốt trước dòng schema đầu tiên |
| Di trú lược đồ là mã lệnh được rà bằng mắt, áp bằng công cụ dừng-ngay-khi-lỗi | Chế độ đồng bộ tự động nuốt lỗi rồi thoát im lặng — bị cấm |
| Đăng nhập: email/mật khẩu + mã một lần qua điện thoại + xác thực hai lớp | |
| Lõi sổ cái: ghi, đảo, tính số dư — so-sánh-rồi-đặt bên trong giao dịch | Luật đường tiền số 1 |
| Thay tỷ giá gán cứng bằng bảng tỷ giá có dấu thời gian | Quyết định đắt tiền số 4 |
| Tiến trình nền + việc chạy theo lịch cập nhật tỷ giá | |
| Kiểm thử bất biến tài chính từ hai nguồn độc lập | Chống "kiểm thử tự đồng ý với chính mình" |
M1 — sản phẩm hoàn chỉnh, không cần ai ngoài
Đây là mốc chiến lược của dự án: một sản phẩm thật, có người dùng thật, trong khi hồ sơ mạng đối tác còn đang xếp hàng.
| Nhóm | Việc đã đóng |
|---|---|
| Hoàn tiền từ hoá đơn | Điểm cắm nguồn hoàn tiền + hiện thực cho hoá đơn · quét ảnh bằng thị giác máy với đầu ra có cấu trúc · chống trùng bằng dấu vân ảnh + ràng buộc duy nhất trên bộ ba cửa hàng/tổng tiền/ngày · màn hình hoá đơn |
| Danh mục & mua sắm | Danh mục cửa hàng có màn quản trị thêm/sửa · màn danh sách cửa hàng nối vào dữ liệu thật |
| Tiền ra | Luồng rút: yêu cầu → quản trị duyệt tay → ghi sổ + chốt tỷ giá tại thời điểm đó |
| Tăng trưởng | Giới thiệu một tầng · phát hiện vòng tự giới thiệu trong đồ thị · dấu vân thiết bị lúc đăng ký |
| Vận hành | Trang quản trị tối thiểu (duyệt hoá đơn, duyệt rút) · thư giao dịch |
| Chất lượng | Kiểm thử đầu-cuối chạy trọn hành trình đăng ký → quét → duyệt → rút · kiểm tra khả năng tiếp cận đạt 0 vi phạm trên 7 màn |
M2 — hạ tầng xong, cửa vẫn đóng
Phần đã dựng và chạy được trên môi trường phát triển:
| Việc | Trạng thái |
|---|---|
| Giao diện bộ chuyển đổi mạng (danh mục · nhận báo về · đối soát), với khu vực là tham số bậc nhất | ✅ Qua rà soát an ninh độc lập, không lỗi chặn |
| Bảng lượt bấm — chia mảnh, chỉ ghi thêm, quyền cài ở tầng cơ sở dữ liệu | ✅ |
| Chuyển hướng có gắn mã theo dõi + ghi lượt bấm kiểu bắn-và-quên | ✅ Chạy thật trên môi trường phát triển |
| Bộ nhận báo về từ đối tác, chống ghi lặp | ✅ Đóng cả mốc con, hai vòng rà soát độc lập |
| Tự duyệt sau khi hết cửa sổ đổi trả | ⏳ Mã xong, hai vòng rà soát, còn ba việc thuộc file kiểm thử |
Nhưng cửa vẫn đóng, và dấu hiệu nhìn thấy được là: trang danh mục không có nút "Mua ngay". Đó là thiết kế đúng — đường liên kết để trống và hệ thống từ chối theo hướng an toàn, thay vì đưa ra một liên kết không sinh được hoàn tiền.
Hai thứ đang chặn, thuộc hai loại khác nhau:
| Chặn | Loại | Ai gỡ được |
|---|---|---|
| Chưa mạng đối tác nào duyệt hồ sơ | Ngoài tầm — mất hàng tuần tới hàng tháng | Bên ngoài |
| Mười quyết định chính sách chưa chốt | Trong tầm nhưng cần người quyết | Chủ sở hữu sản phẩm |
Hai quyết định trong số mười cái đó là ví dụ tốt cho việc vì sao chúng không được quyết ngầm:
Một: nếu báo về từ đối tác ghi ngày mua lùi về quá khứ, khoản tiền có thể đã quá hạn ngay tại lúc vừa được tạo — tức là chín ngay lập tức, đúng thứ mà cửa sổ đổi trả sinh ra để ngăn. Chọn cách chống nào là một quyết định chính sách, không phải một lựa chọn kỹ thuật.
Hai: cửa sổ đổi trả bằng không là hợp lệ ở cả ba tầng, nghĩa là một quản trị viên gõ số 0 sẽ tạo ra duyệt tức thì. Đó là một chính sách hợp lệ hay một lỗ hổng? Câu trả lời quyết định việc có phải siết lại hay không.
Con số làm mốc đối chiếu
Dự án ghi các con số này để phát hiện mất kiểm thử về sau, và có quy tắc riêng: lấy tổng của một lần chạy duy nhất, không cộng dồn từ nhiều lần chạy riêng lẻ.
| Chỉ số | Giá trị |
|---|---|
| Kiểm thử tự động | khoảng 1.120 trên toàn kho mã |
| Hàng rào bất biến kiểm tra trực tiếp trên cơ sở dữ liệu | 148/148 |
| Kiểm kiểu | 5/5 gói sạch |
| Số lần ghi mã đã đẩy lên kho | hơn 200 |
| Thời gian chạy trọn bộ kiểm thử | khoảng 11 phút |
Kèm hai ghi chú trung thực mà đội tự viết ra: bộ kiểm thử dài thêm sau mỗi lần di trú lược đồ và cần được xử lý · và bộ hàng rào 148 mục chưa nằm trong cổng kiểm tra tự động nào — hiện phải chạy tay.
Một đính chính đội tự ghi vào tài liệu
Ở bản bàn giao trước, hai con số kiểm thử bị ghi sai ngay tại thời điểm ghi. Khi phát hiện, đội kiểm lại bằng cách đếm trực tiếp trong mã nguồn, sửa lại, và ghi rõ:
Đây là trôi lệch tài liệu, không phải mất kiểm thử.
Chi tiết này nhỏ nhưng nói lên phương pháp: các con số tồn tại để làm mốc đối chiếu, nên một con số sai còn nguy hiểm hơn không có số — nó sẽ khiến lần sau không ai phát hiện được là có kiểm thử đã biến mất.
Nhịp tiếp theo
| Việc | Ai làm | Chặn gì |
|---|---|---|
| Đối chứng độc lập cho bản vá gần nhất + đóng ba việc kiểm thử | Đội kỹ thuật — làm được ngay | Đóng mốc con hiện tại |
| Chốt mười quyết định chính sách | Chủ sở hữu sản phẩm | Bảy nhánh công việc phía sau |
| Nộp và theo dõi hồ sơ mạng đối tác | Ngoài tầm | Toàn bộ đường mua qua liên kết |
| Rà soát dữ liệu cá nhân trước khi mở rộng | Cần chính sách | Quỹ cộng đồng, thị trường thứ hai |
Câu chốt: hai mốc đầu đã chứng minh được điều khó chứng minh nhất — một sản phẩm hoàn tiền có thể chạy thật mà không cần chờ ai. Điều còn lại đúng như dự án đã dự đoán từ đầu: thứ chặn không phải mã nguồn, mà là ba chữ ký ở bên ngoài.