FR-107 · 需求索引 · 本頁由 build 掃資料夾生成
🔄 功能已全線打通,收口中——25 張子卡 22 張驗收通過;SPEC 五頁與定版交付文件已完成。未完成:分類容器 image 進出貨包(CM-1871)、模型碼表換代+思考深度(CM-1885)、端到端回歸測試(CM-1886)。母卡 CM-1843。
把「證據自動分類」從綁死 Google Drive 改成只認系統自己的儲存後端(本機/MinIO/SeaweedFS/遠端 agent 都行),使用者上傳到暫存批次 → AI 分類 → 使用者確認 → 檔案搬進對應任務成為正式證據,系統的任務證據表終於會真正寫入一筆。同時把寫死在程式裡的 CMMC 框架知識抽成資料(classification_profiles),任何客戶自匯框架都能跑,還加上多供應商 AI(Anthropic/OpenAI)可選。全案拆六棒、23 張子任務卡,新功能一律進既有套件 jedi-evidence-classification,主專案只留宿主接線與前端。落地版客戶沒有 Drive,這是讓分類功能對他們也能用的前提。
| 棒 | 做什麼(一句話) | 子卡號範圍 | 狀態 |
|---|---|---|---|
| .1 | 暫存批次+安全地基:新表存批次檔、upload_files 補租戶/擁有者/RLS、批次 API+FE 上傳頁 |
CM-1850~1853(+mockup CM-1878) | ✅ 四張全數驗收通過 |
| .2 | 儲存 port+容器改取檔:套件開檔案存取 port,容器不再自己連 Drive/資料庫 | CM-1854~1856 | ✅ 三張驗收通過 |
| .3 | 分類跑在批次上:觸發/狀態機/審閱頁改讀批次 | CM-1857~1860 | ✅ 四張驗收通過 |
| .4 | 歸檔進任務:搬檔進 job_evidences、前端歸檔對話框 |
CM-1861~1863 | ✅ 三張驗收通過 |
| .5 | 框架去硬編碼:classification_profiles 表+CRUD、catalog 補 part_id、prompt 三段組裝、多供應商 AI client、三個 AI 功能統一金鑰解析+原廠鑰裝機寫入(D13) |
CM-1864~1867、1877、1879 | ✅ 六張驗收通過;模型碼表換代+思考深度另開 CM-1885 待派 |
| .6 | 舊線退場+收口:舊入口隱藏、兩套件發版、SPEC/定版文件、e2e、image 進出貨包 | CM-1868~1871、1886 | 🔄 T-6.1/T-6.2 ✅;T-6.3 SPEC 五頁+FINAL-SPEC ✅(e2e 已拆至 CM-1886 待 image 就緒);T-6.4 未開始 |
與 Notion 母卡 CM-1843 最上面那張表同步。尚未完成的三項:分類容器 image 進出貨包(CM-1871)、模型碼表換代+思考深度(CM-1885)、端到端回歸測試(CM-1886,前置是含本案的 image 進 190 測試機)。細節見 FINAL-SPEC.md 的「這一輪沒做完的」。
classification_profiles,AI 角色與指引可依框架版本各自設定,缺省有通用設定。jedi-evidence-classification,主專案只留宿主 adapter 與前端;這是設計文件與討論稿最大的差異點。LlmClient 介面,可用模型動態算不寫死。classification_profiles 不建 FK 一律軟參照;profile CRUD 只給平台管理員;job_evidences 既存重複列先查不自動合併;舊 route/FE 常數並存期可接受,留到 .6 一起清。全部照建議裁定。upload_files 既有 37 筆舊上傳檔擁有者欄位補不回來(無從追溯),記錄在案、不強行處理。install.sh 裝機寫入,不落明文 .env;第一版不開放客戶自填。新增 T-5.5。| 文件 | 性質 | 回答什麼 |
|---|---|---|
| FINAL-SPEC.md | 定版 | 最後長什麼樣——想知道「這個功能現在怎麼運作」先看這份 |
| design.md | 設計 | 當初為什麼這樣決定、哪些方案被排除(定稿後凍結,不代表現況) |
| discussion.md | 設計 | 需求怎麼來的、現況盤點原文 |
| handoff/fr107-LOG.md | 歷史 | 哪一棒做了什麼、踩過什麼坑 |
| handoff/fr107-STATE.md | 歷史 | 此刻的交接現況(living) |
以下全部由 build 掃資料夾產生,新增檔案重 build 即自動出現。標題連結指向渲染後的 HTML,md 連向源檔。
| 文件 | 類型 | 標題 | 最後更新 |
|---|---|---|---|
| FINAL-SPEC / md | 定版交付 | 分類完成之後,檔案真的掛進任務了 | 2026-09-17 |
| 文件 | 類型 | 標題 | 最後更新 |
|---|---|---|---|
| discussion / md | 需求討論稿 | 讓證據分類不再綁 Google Drive,分完直接掛進任務 | 2026-09-16 |
mockup/(2 份)其他文件
| 文件 | 類型 | 標題 | 最後更新 |
|---|---|---|---|
| auto-classify-batch | 文件(手刻 HTML) | 自動分類證據 — 單一批次流程(頁 B mockup) | 2026-09-17 |
| auto-classify-list | 文件(手刻 HTML) | 自動分類證據 — 歷史清單(頁 A mockup) | 2026-09-17 |
由新到舊。每份是某一棒次交接當下的完整現況快照,看某個時間點「當時知道什麼」請從這裡進。
| 日期 | 文件 | 標題 |
|---|---|---|
| 2026-09-17 | next-session-prompt / md | — |
| 2026-09-17 | fr107-STATE / md | FR-107 交接現況(living,就地更新) |
| 2026-09-17 | fr107-LOG / md | FR-107 交接日誌(append-only) |
卡片內容(決策紀錄、驗收條件)以 Notion 為準,本頁只記座標。
| 關係 | 卡號 | 標題 | 狀態 |
|---|---|---|---|
| 母案 | CM-1843 | FR-107 證據自動分類 2.0(母卡,六棒 25 張子任務卡) | — |