Source document
docs/pilot/RELEASE-REPORT-PILOT-READINESS.md
Source version
0.0.0
Generated time
2026-07-06T14:59:20.318Z
Owner
Operations / Founder
Audience
Internal
Status
Approved

Release Report — Stage Beta · Pilot Readiness

Mục tiêu: xác nhận BNG Booking Platform sẵn sàng cho đối tác tích hợp đầu tiên. Không phát triển tính năng. Ngày: 2026-07-06.

1. Những gì đã hoàn thành

luồng Availability → Booking → Confirm → Cancel hoàn thành trọn (200/201/200/200, exit 0) chỉ dùng examples/curl/flow.sh + key, không sửa mã, không hỏi dev. Thời gian partner-flow < 1 giây; tổng end-to-end ~30–60s.

examples (curl chạy thật), error catalog, sandbox checklist, ops guide.

2. Những gì còn thiếu

Đã kiểm chứng hành vi bằng local (đại diện trung thực) + staging /health=200. Cần một lần chạy staging sau khi BNG allowlist IP thật của partner.

3. Friction phát hiện (đầy đủ: PILOT-FRICTION-LOG.md)

IDFrictionMức độXử lý
F-1Staging /api/booking/* 403 cho IP chưa allowlistBlocker (self-serve) / High (facilitated)Onboarding step: BNG allowlist IP. Đã tài liệu hoá. Không sửa hệ thống (đụng deploy).
F-2Error Catalog/OpenAPI thiếu TENANT_INACTIVEMediumĐã sửa (docs).
F-3examples mặc định base URL = stagingLowChấp nhận; README nêu rõ.
F-4Trích raw key từ output issue-key (BNG-side)LowĐã tài liệu hoá ops guide.
F-5PIK chưa nhắc vòng đời Partner/Tenant cho partnerLow–MediumGiảm nhẹ qua F-2; còn lại backlog.

Không có blocker chức năng. Blocker duy nhất (F-1) là truy cập, xử lý bằng bước onboarding của BNG.

4. Đánh giá mức độ sẵn sàng

ChiềuĐánh giá
Chức năng API (availability/booking/confirm/cancel)✅ Sẵn sàng — dry-run end-to-end PASS.
Contract & docs (OpenAPI/Postman/examples/errors)✅ Sẵn sàng — đã đồng bộ implementation (vá drift).
Provisioning & vận hành (key/partner/tenant lifecycle, audit)✅ Sẵn sàng — Beta-4/5/6 (audit transactional).
Truy cập sandbox cho partner ngoài⚠️ Cần BNG allowlist IP (bước onboarding, đã tài liệu hoá).
Self-serve❌ Chưa (BNG-facilitated).

Readiness Checklist: 11/12 PASS, 1 CONDITIONAL (#12 access gate). Xem PILOT-READINESS-CHECKLIST.md.

5. Khuyến nghị GO / NO-GO cho Pilot Customer

✅ CONDITIONAL GO — cho pilot BNG-facilitated

Nền tảng + bộ kit sẵn sàng cho đối tác tích hợp đầu tiên, với điều kiện BNG thực hiện các bước onboarding (đều đã tài liệu hoá, không cần code mới):

  1. Allowlist IP egress của partner trên nginx staging (gỡ F-1 cho partner đó).
  2. Provision partner→tenant→inventory + issue-key (sandbox), giao base URL + key + unit IDs.
  3. Xác nhận partner chạy được GET /api/booking/availability (không 403) rồi trao Sandbox Checklist.

Sau 3 bước trên, partner tự hoàn thành Availability→Booking→Confirm→Cancel theo tài liệu (đã chứng minh khả thi qua dry-run).

❌ NO-GO nếu kỳ vọng self-serve (partner tự kết nối, BNG không can thiệp)

Vì F-1 (IP-allowlist, không self-serve key). Để đạt self-serve cần Hotfix/Hardening sprint riêng (sandbox host auth-only + self-serve key) — đụng deployment, ngoài phạm vi sprint này.

6. Đề xuất Sprint kế

  1. Staging pilot run thật: allowlist IP một partner thí điểm (hoặc IP nội bộ), chạy dry-run trên staging, chốt số thời gian thật.
  2. Backlog Hardening — Self-serve sandbox: host sandbox auth-only (bỏ IP-gate) + quy trình cấp key tự phục vụ có kiểm soát.
  3. Process gate: thêm "cập nhật Partner Integration Kit" vào DoD mỗi sprint đổi error/contract (chặn drift như F-2 tái diễn).

QA

Ràng buộcKết quả
Không thay đổi Platform Core
Không thay đổi API✅ (chỉ tài liệu hoá thêm mã TENANT_INACTIVE đã tồn tại trong impl)
Không thay đổi Deployment
Không thay đổi Database Schema
Không phát sinh secret trong repo✅ secret scan sạch
Chỉ cập nhật tài liệu & quy trình✅ chỉ docs/ (PIK error-catalog/openapi + docs/pilot/*)

Definition of Done

Tiêu chíKết quả
Toàn bộ Readiness Checklist PASS✅ 11/12 PASS + 1 CONDITIONAL (access gate, đã tài liệu hoá) — không blocker chức năng
Dry-run hoàn thành theo tài liệu✅ Availability→Booking→Confirm→Cancel, không sửa mã, không hỏi dev
Không còn blocker nghiêm trọng✅ (F-1 là access, xử lý bằng onboarding; không phải lỗi hệ thống)
Mọi friction được ghi nhận✅ 5 friction trong Friction Log
Founder có đủ bộ tài liệu bàn giao✅ Onboarding Package liệt kê đầy đủ

Kết luận: CONDITIONAL GO cho pilot BNG-facilitated. Founder có đủ tài liệu để bàn giao đối tác đầu tiên; điều kiện GO = BNG allowlist IP + cấp key (đã tài liệu hoá). Chờ Founder quyết.