/** * credentials 路由測試 —— 🔴 待重寫(D38 圍牆修復後) * * 【為什麼是紅燈而不是空檔】 * 2026-08-07 D38 圍牆修復把 credential 目錄從「獨立 credentials 表 + 原生 SQL」 * 改成「KBDB entries(entry_type='credential')+ HTTP API」。原本 111 行的測試 * 測的是舊的 SQL 實作,全部不再適用。 * * 施工的 agent 中途被中斷,留下一行 `// placeholder — see edit below` —— * 那個 "edit below" 從來沒發生。vitest 對這種檔案回報 `Tests: no tests`, * **很容易被讀成「沒失敗=通過」**,正是 CP 記過的 * 「這條 route 曾整條消失過沒人發現」同型。 * * ⇒ 這裡刻意留一個**會失敗**的測試:空檔會被誤認為綠,紅燈不會。 * * 【重寫時要涵蓋什麼】(照新實作 routes/credentials.ts) * 1. 寫入走 KBDB HTTP API,且 owner_id = api_key(租戶隔離) * 2. 讀取查得回 secret_ref,且查不到別的租戶的 * 3. 刪除是真的刪(不是 deprecated) * 4. **零原生 SQL**:整支檔案不得出現 .prepare/.exec/.batch * 5. 密文本體不落 KBDB(只有 secret_ref 指標)—— D19 不變 */ import { describe, it, expect } from 'vitest'; describe('credentials 路由(D38 改走 KBDB API 後)', () => { it('🔴 測試待重寫 —— 見本檔頭部清單(刻意紅燈,別刪掉改成空檔)', () => { expect.fail( 'D38 圍牆修復後 credential 改走 KBDB entries + HTTP API,' + '舊的 SQL 版測試已作廢、新測試尚未寫。' + '要補的五項見本檔頭部註解。', ); }); });