跳到主要內容

約好 YoHo

P0 上架進度

目前工程端已具備多 team / 多人預約、後台管理、Cloudflare 部署骨架與安全檢查。正式上架前,仍需完成 staging 實體環境、付款規則確認與真實環境 QA;LINE 可作為上線後或同步進行的整合通路。

P0 必要項

7

正式上線前必須逐項驗收。

外部待完成

8

需要雲端、營運、法務資料與可選 LINE 整合。

工程可處理

5

可在程式與測試內持續補強。

已有證據

4

本機或程式碼已有可驗證基礎。

下一步照這個順序做

先完成 staging,不要直接跳 production。每一步完成後再進下一步。

  1. 1

    建立 Cloudflare staging Worker、PostgreSQL、Hyperdrive、KV、Queue 與 HTTPS staging 網域。

  2. 2

    填入 .env.staging.local,執行 staging:preflight 與 go-live:audit staging。

  3. 3

    部署 staging,跑 migration、health check、qa:staging 與手機實機預約流程。

  4. 4

    確認付款、取消、退款、隱私與資料保存文案,再切 production 資源與正式網域。

  5. 5

    需要 LINE 通路時,再建立 LINE Login、Messaging API、LIFF app,從 LINE App 實測 LIFF 與 webhook。

詳細檢查表在 docs/GO_LIVE_CHECKLIST.md,執行 SOP 在 docs/P0_GO_LIVE_SOP.md

雲端與部署

程式已有 Cloudflare Workers 部署骨架、production env gate 與 rollback 文件;真正上架仍需要建立實體雲端資源。

2

建立 staging 實體環境

P0 上架必要外部待完成店家/營運

目前狀態

OpenNext、Wrangler、Cloudflare binding 宣告、go-live audit 與部署文件已存在。

證據:package scripts: cf:build、cf:deploy:staging、cf:deploy:production、go-live:audit。

下一步

建立 staging Worker、PostgreSQL、Hyperdrive、KV、Queue 與 HTTPS staging 網域,並填入 .env.staging.local。

填入 Cloudflare production/staging secrets

P0 上架必要外部待完成店家/營運

目前狀態

production 與 staging 的設定檔範本已分開,程式會拒絕 placeholder 與弱 secret。

證據:scripts/go-live-audit.ts 會檢查公開網址、資料庫連線、工作階段密鑰、PII 查詢密鑰與資料加密密鑰。

下一步

用真實 Cloudflare resource id 更新 wrangler.jsonc,並在 Cloudflare secrets 填入正式值。

LINE 可選整合

平台已支援公開預約;LINE 是可選通路。本機 mock 只能證明整合介面,不能替代 LIFF 與 Messaging API 實機驗收。

2

建立 LINE Login / Messaging / LIFF

P1 上線後補強外部待完成店家/營運

目前狀態

production 可用 REQUIRE_LINE_AUTH=false 先公開上線;若啟用 LINE live mode,仍會要求 credentials 完整。

證據:lib/env.ts 與 go-live audit 會在 LINE_MODE=live 或 REQUIRE_LINE_AUTH=true 時檢查 LINE credentials。

下一步

建立 LINE Login Channel、Messaging API Channel、LIFF app;設定 LIFF endpoint 與 webhook URL。

LINE 實機驗收

P1 上線後補強本機已完成,待 staging 驗收共同驗收

目前狀態

LINE webhook 簽章驗證與 mock LINE flow 已有本機測試覆蓋。

證據:tests/e2e 與 unit tests 覆蓋 LINE gate、webhook signature、mock session。

下一步

部署 staging 後,使用 LINE App 從 LIFF 開啟預約頁,測 valid/invalid webhook 與 rich menu。

付款與訂金

MVP 建議先以上線可用的手動付款/轉帳/現場付款作為 P0;自動金流與對帳屬於下一階段。

2

確認 MVP 付款規則

P0 上架必要外部待完成店家/營運

目前狀態

後台可設定現場付款、訂金、全額付款、銀行轉帳資訊;前台會依設定顯示付款說明。

證據:owner payment settings API/UI 與 booking payment notice 已存在。

下一步

店家確認訂金比例、付款期限、銀行帳號、退款/取消文字,並在 staging 跑一筆測試預約。

正式金流串接

P1 上線後補強外部待完成工程

目前狀態

LINE Pay、信用卡、Apple Pay 目前不是 live provider;前台不可收真實卡號或 payment token。

證據:GO_LIVE_CHECKLIST 明確列為目前 launch scope 之外。

下一步

若要正式金流才上架,需新增 provider webhook、付款狀態回寫、退款與對帳測試。

QA 與驗收

前後台主要流程已可本機驗證;production 前必須在 staging 用真實部署與資料庫重跑。

2

本機 release gate

P0 上架必要本機已完成,待 staging 驗收工程

目前狀態

本機 lint、typecheck 與近期前台 UI smoke 已通過;多 team/staff booking flow 已可操作。

證據:本機 /booking/demo-hair 可載入,手機 375/390px 無水平溢出,team/staff 選擇可互動。

下一步

跑完整本機 gate:lint、typecheck、test、build、cf:check、cf:build。

staging 真實環境驗收

P0 上架必要外部待完成共同驗收

目前狀態

staging QA script 與 go-live audit 已存在。

證據:scripts/staging-preflight.ts、scripts/staging-release.ts、scripts/go-live-audit.ts。

下一步

staging 部署完成後執行 staging:preflight、qa:staging,並用手機實測預約、改期、取消與後台查看。

安全、隱私與營運

個資保護與權限是 production P0;程式已有基礎控制,但法務與營運文案仍需要人工確認。

2

安全掃描與 log 檢查

P0 上架必要本機已完成,待 staging 驗收工程

目前狀態

PII 加密、HMAC lookup、CSRF、workspace/team scoping、audit log 安全邊界已有實作與測試。

證據:lib/privacy、lib/auth、tests/unit 與 owner/public API tests。

下一步

跑 security:audit、security:secrets;production 前確認 Cloudflare logs 沒有 plaintext PII。

正式政策與備援演練

P0 上架必要外部待完成店家/營運

目前狀態

隱私權、取消/改期、訂金/退款、資料保存文案已列入 go-live checklist。

證據:docs/GO_LIVE_CHECKLIST.md security/privacy 與 payment sections。

下一步

店家或法務確認正式文案;完成備份、restore drill、rollback drill。

上線後補強

這些不是第一天上線必要條件,但會影響長期營運完整度。

2

Google Calendar 同步

P1 上線後補強外部待完成工程

目前狀態

Google Calendar 仍是 interface/mock,尚未 live sync。

下一步

上線後再規劃 OAuth、雙向同步、衝突處理與失敗重試。

營運分析補強

P2 之後優化本機已完成,待 staging 驗收工程

目前狀態

Dashboard、收單中心、team/staff 篩選已有基礎能力。

下一步

根據 staging 使用回饋補熱門服務/熱門時段、漏斗與回頭客分析。