thread-master/docs/product/haixun-console/plan.md

4.2 KiB
Raw Blame History

Plan: 巡樓 Console 從零重寫

Status: approved(與 task 拆分一併啟動)
Source: docs/product/haixun-console/spec.md
Last updated: 2026-07-09

1. 交付策略

舊碼已在 old/ 封存。主線 greenfield

  1. 先 B前端 mock 讓 Harbor Desk 流程(含 lead 可回覆)你摸到滿意。
  2. A 的 live 地基不阻塞 B可在 B 過關後或平行用 services/api 補。
  3. C 同一 UI 接真;D 海巡等。

本 plan 的 可立即開工區間是 M0M2tasks T001T022,對應 Phase B 完整 mock。
Phase C/D 只定里程碑與 task 編號預留,細 task 待 B 過關再拆。

2. 里程碑

M0 — 倉庫骨架

  • 目標:npm run dev 的空應用
  • 完成定義: apps/web Vite+React+TS 起來;根 README 有啟動指令
  • Tasks T001
  • 驗證: cd apps/web && npm install && npm run build

M1 — 設計系統 + App Shell

  • 目標: Harbor Desk 外殼可導覽
  • 完成定義: token、基礎元件、桌面側欄+手機底欄、5 入口路由占位
  • Tasks T002T005
  • 驗證: 手動點 5 入口build 通過

M2 — Auth mock + 路由守衛

  • 目標: 未登入進不了 /app/**
  • 完成定義: mock 登入/登出/重整保 session
  • Tasks T006
  • 驗證: 登入後進 Todaylogout 回 login

M3 — 資料層 mock

  • 目標: repository 介面 + localStorage + seed
  • 完成定義: accounts/plays/outbox/jobs/notifications 可讀寫;mock|live 切換點存在live 可 stub 丟錯)
  • Tasks T007T008
  • 驗證: 重整後 seed/草稿仍在

M4 — Crew帳號

  • 目標: 看帳號列表、mock 新增、不可用狀態
  • Tasks T009
  • 驗證: 列表 ≥2 假帳;連線 error 不可當 lead/cast

M5 — Studio 列表 + Wizard 船隊/劇本

  • 目標: 建立串場lead+cast步驟含 lead 發言
  • Tasks T010T013
  • 驗證: root(A)→reply(B)→reply(A) 可編輯保存

M6 — 預覽 / 船期 / 提交

  • 目標: 預覽泡泡、排程、進 Outbox
  • Tasks T014
  • 驗證: submit 後 Outbox 有對應 bundle

M7 — Outbox 發送模擬

  • 目標: 逐步狀態、主失敗不發後續、重試
  • Tasks T015T016
  • 驗證: 模擬成功全 publishedroot fail 時 reply 不 published

M8 — Job + 通知 + Today

  • 目標: 任務進度、鈴鐺、今日總覽
  • Tasks T017T019
  • 驗證: 模擬 job 完成出通知Today 有捷徑

M9 — Scout / Settings / 收尾

  • 目標: 占位頁、datasource 切換、RWD 基線、範例劇本
  • Tasks T020T022
  • 驗證: Scout 無假成功手機底欄可用build 通過

M10 — Phase B 過關(人審)

  • 目標: 你主觀認可流程與風格
  • Tasks 無新碼;走查 checklistrequirements Phase B
  • 驗證: 文件勾選 + 你回「B OK」

M20 — Phase C 接真預留B 後再拆細 task

  • services/api 最小 auth/me/permissions
  • Threads OAuth + accounts
  • Jobs + notifications live
  • ThreadPlay/Outbox live 垂直切片

預留 task 號:T100+(本輪不寫檔)

M30 — Phase D預留

  • Scout 海巡滿血等 → T200+

3. 依賴

M0 → M1 → M2 → M3 → M4
                   ↘ M5 → M6 → M7
                   ↘ M8
                         ↘ M9 → M10 (人審)
                               ↘ M20 → M30

4. 風險與緩解

風險 緩解
Task 膨脹超 200 行 實作時再拆子 task更新 INDEX
Mock 契約與 C 不一致 T007 介面以 spec §5 為準C 只換 adapter
過早寫 Go M10 前禁止大範圍 services/api 業務

5. 刻意不做(本 plan 週期內 = 到 M10

  • 海巡真功能、舊碼搬回、重型 UI 庫
  • live Threads 發文(屬 M20
  • email 驗證閘

6. 全域驗證指令

cd apps/web && npm install && npm run build
# 之後若有測試:
# npm test

7. 批准

  • Plan 已批准2026-07-09使用者好請幫我開始拆
  • 實作順序:從 T001 起,完成一題勾 INDEX 再下一題