From 80f5cf179f8dc2633bc0634cec4fd404ae3ebb53 Mon Sep 17 00:00:00 2001 From: Hank Date: Tue, 16 Jun 2026 19:19:52 +0800 Subject: [PATCH] =?UTF-8?q?chore(openspec):=20=E6=AD=B8=E6=AA=94=20feature?= =?UTF-8?q?-test-coverage=E3=80=81provider-verification-workflow=20?= =?UTF-8?q?=E8=AE=8A=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 兩個 change 全任務完成(feature-test-coverage 40/40、provider-verification-workflow 48/48)。 同步規格: - feature-test-coverage/spec.md 補齊 ## Requirements 區塊標頭(結構修正) - Admin 教練審核 scenario 改為 approve 端點(toggle-verified 已由 #36 移除) Co-Authored-By: Claude Sonnet 4.6 --- .../2026-06-16-feature-test-coverage}/.openspec.yaml | 0 .../2026-06-16-feature-test-coverage}/design.md | 0 .../2026-06-16-feature-test-coverage}/proposal.md | 0 .../specs/feature-test-coverage/spec.md | 0 .../2026-06-16-feature-test-coverage}/tasks.md | 0 .../.openspec.yaml | 0 .../2026-06-16-provider-verification-workflow}/design.md | 0 .../proposal.md | 0 .../specs/admin-user-management/spec.md | 0 .../specs/provider-verification/spec.md | 0 .../2026-06-16-provider-verification-workflow}/tasks.md | 0 openspec/specs/feature-test-coverage/spec.md | 9 ++++++--- 12 files changed, 6 insertions(+), 3 deletions(-) rename openspec/changes/{feature-test-coverage => archive/2026-06-16-feature-test-coverage}/.openspec.yaml (100%) rename openspec/changes/{feature-test-coverage => archive/2026-06-16-feature-test-coverage}/design.md (100%) rename openspec/changes/{feature-test-coverage => archive/2026-06-16-feature-test-coverage}/proposal.md (100%) rename openspec/changes/{feature-test-coverage => archive/2026-06-16-feature-test-coverage}/specs/feature-test-coverage/spec.md (100%) rename openspec/changes/{feature-test-coverage => archive/2026-06-16-feature-test-coverage}/tasks.md (100%) rename openspec/changes/{provider-verification-workflow => archive/2026-06-16-provider-verification-workflow}/.openspec.yaml (100%) rename openspec/changes/{provider-verification-workflow => archive/2026-06-16-provider-verification-workflow}/design.md (100%) rename openspec/changes/{provider-verification-workflow => archive/2026-06-16-provider-verification-workflow}/proposal.md (100%) rename openspec/changes/{provider-verification-workflow => archive/2026-06-16-provider-verification-workflow}/specs/admin-user-management/spec.md (100%) rename openspec/changes/{provider-verification-workflow => archive/2026-06-16-provider-verification-workflow}/specs/provider-verification/spec.md (100%) rename openspec/changes/{provider-verification-workflow => archive/2026-06-16-provider-verification-workflow}/tasks.md (100%) diff --git a/openspec/changes/feature-test-coverage/.openspec.yaml b/openspec/changes/archive/2026-06-16-feature-test-coverage/.openspec.yaml similarity index 100% rename from openspec/changes/feature-test-coverage/.openspec.yaml rename to openspec/changes/archive/2026-06-16-feature-test-coverage/.openspec.yaml diff --git a/openspec/changes/feature-test-coverage/design.md b/openspec/changes/archive/2026-06-16-feature-test-coverage/design.md similarity index 100% rename from openspec/changes/feature-test-coverage/design.md rename to openspec/changes/archive/2026-06-16-feature-test-coverage/design.md diff --git a/openspec/changes/feature-test-coverage/proposal.md b/openspec/changes/archive/2026-06-16-feature-test-coverage/proposal.md similarity index 100% rename from openspec/changes/feature-test-coverage/proposal.md rename to openspec/changes/archive/2026-06-16-feature-test-coverage/proposal.md diff --git a/openspec/changes/feature-test-coverage/specs/feature-test-coverage/spec.md b/openspec/changes/archive/2026-06-16-feature-test-coverage/specs/feature-test-coverage/spec.md similarity index 100% rename from openspec/changes/feature-test-coverage/specs/feature-test-coverage/spec.md rename to openspec/changes/archive/2026-06-16-feature-test-coverage/specs/feature-test-coverage/spec.md diff --git a/openspec/changes/feature-test-coverage/tasks.md b/openspec/changes/archive/2026-06-16-feature-test-coverage/tasks.md similarity index 100% rename from openspec/changes/feature-test-coverage/tasks.md rename to openspec/changes/archive/2026-06-16-feature-test-coverage/tasks.md diff --git a/openspec/changes/provider-verification-workflow/.openspec.yaml b/openspec/changes/archive/2026-06-16-provider-verification-workflow/.openspec.yaml similarity index 100% rename from openspec/changes/provider-verification-workflow/.openspec.yaml rename to openspec/changes/archive/2026-06-16-provider-verification-workflow/.openspec.yaml diff --git a/openspec/changes/provider-verification-workflow/design.md b/openspec/changes/archive/2026-06-16-provider-verification-workflow/design.md similarity index 100% rename from openspec/changes/provider-verification-workflow/design.md rename to openspec/changes/archive/2026-06-16-provider-verification-workflow/design.md diff --git a/openspec/changes/provider-verification-workflow/proposal.md b/openspec/changes/archive/2026-06-16-provider-verification-workflow/proposal.md similarity index 100% rename from openspec/changes/provider-verification-workflow/proposal.md rename to openspec/changes/archive/2026-06-16-provider-verification-workflow/proposal.md diff --git a/openspec/changes/provider-verification-workflow/specs/admin-user-management/spec.md b/openspec/changes/archive/2026-06-16-provider-verification-workflow/specs/admin-user-management/spec.md similarity index 100% rename from openspec/changes/provider-verification-workflow/specs/admin-user-management/spec.md rename to openspec/changes/archive/2026-06-16-provider-verification-workflow/specs/admin-user-management/spec.md diff --git a/openspec/changes/provider-verification-workflow/specs/provider-verification/spec.md b/openspec/changes/archive/2026-06-16-provider-verification-workflow/specs/provider-verification/spec.md similarity index 100% rename from openspec/changes/provider-verification-workflow/specs/provider-verification/spec.md rename to openspec/changes/archive/2026-06-16-provider-verification-workflow/specs/provider-verification/spec.md diff --git a/openspec/changes/provider-verification-workflow/tasks.md b/openspec/changes/archive/2026-06-16-provider-verification-workflow/tasks.md similarity index 100% rename from openspec/changes/provider-verification-workflow/tasks.md rename to openspec/changes/archive/2026-06-16-provider-verification-workflow/tasks.md diff --git a/openspec/specs/feature-test-coverage/spec.md b/openspec/specs/feature-test-coverage/spec.md index 46cf91b..2104c45 100644 --- a/openspec/specs/feature-test-coverage/spec.md +++ b/openspec/specs/feature-test-coverage/spec.md @@ -5,6 +5,8 @@ --- +## Requirements + ### Requirement: Provider 課程 CRUD 測試覆蓋 測試套件 SHALL 驗證 `POST /api/provider/offers`、`PUT /api/provider/offers/{id}`、`DELETE /api/provider/offers/{id}` 的正常流程與所有權邊界。 @@ -86,9 +88,10 @@ - **WHEN** Admin 送出 `PUT /api/admin/members/{id}/toggle-active`(目標會員 is_active=true) - **THEN** 回傳 HTTP 200,DB 記錄 is_active 由 true 變為 false -#### Scenario: Admin 切換教練驗證狀態 -- **WHEN** Admin 送出 `PUT /api/admin/providers/{id}/toggle-verified`(目標教練 is_verified=false) -- **THEN** 回傳 HTTP 200,provider_profiles.is_verified 由 false 變為 true +#### Scenario: Admin 核准教練審核 +- **WHEN** Admin 對 `verification_status=pending` 的教練送出 `PUT /api/admin/verifications/{userId}/approve` +- **THEN** 回傳 HTTP 200,provider_profiles.verification_status 變為 `approved` +- **NOTE** `toggle-verified` 路由已由 provider-verification-workflow 移除,驗證狀態變更一律透過審核狀態機 #### Scenario: 非 Admin 角色被拒絕 - **WHEN** role=member 的使用者送出 `GET /api/admin/members` -- 2.52.0