Context
Part of #1 — Workspace 邀請功能的後端核心:資料模型與全部驗證規則。此任務不含 API endpoint 與 email 寄送。
Scope
invitations 資料模型(email、status、建立時間、邀請者)
- 建立邀請的驗證邏輯:email 格式、重複成員、重複 pending 邀請、角色權限
- 7 天逾期判定(純函式,不依賴排程)
- 完整單元測試
Out of scope
- API endpoint(HTTP 層)
- 邀請 email 寄送(v0.2.0)
- 前端 UI
Technical approach
純函式模組(src/backend/invitations.js),不碰 I/O — 驗證規則與逾期判定都是 deterministic,用 node:test 直接測。資料持久化等 API 層任務再決定。
Acceptance Criteria
Risk
Low — 純函式新增,不動既有行為、無 migration。
Area
Backend
Dependencies
無(本 feature 的第一張任務,#3 文件任務依賴本任務的 API 形狀)
Context
Part of #1 — Workspace 邀請功能的後端核心:資料模型與全部驗證規則。此任務不含 API endpoint 與 email 寄送。
Scope
invitations資料模型(email、status、建立時間、邀請者)Out of scope
Technical approach
純函式模組(
src/backend/invitations.js),不碰 I/O — 驗證規則與逾期判定都是 deterministic,用node:test直接測。資料持久化等 API 層任務再決定。Acceptance Criteria
createInvitation成功時回傳pending狀態的邀請物件INVALID_EMAILALREADY_MEMBERALREADY_INVITEDFORBIDDENisExpired回傳 true(邊界:剛好 7 天不算逾期)node --test全綠Risk
Low — 純函式新增,不動既有行為、無 migration。
Area
Backend
Dependencies
無(本 feature 的第一張任務,#3 文件任務依賴本任務的 API 形狀)