這份只記需求、現況、已查證的阻擋點與決策者已定的方向。方案細節與拆卡留給討論稿與 design。
extraction_status=succeeded),但解析完不留檔(file_id 空)。/data/content/cache/manual/{linux,windows}-baseline 有首腦手放的 dev-sec 兩支,主控台貼路徑可跑,不進下拉。本案做完可刪。網址型 Profile 的匯入與解析在 jedi-detection 套件,不在 BE(BE 用 Nexus 版 jedi-detection==1.7.2)。
jedi_detection/app/service/detection_profile_extraction_service.py 第 39–53 行的設計不變式:「下載內容不落儲存——不寫 upload_files、source_type 維持 url、file_id 維持 NULL。存成 file 型快照會破壞雙軌語意,掃描(agent 拉 URL)與抽取(平台存快照)可能對不上。」chk_dpv_source_exclusive(套件 migrations/001-detection-tables.sql:204):url 型必須 file_id IS NULL。list_current_files_visible_to(repo_impl:117–124)只撈 file_id IS NOT NULL;agent_profile_sync_service.current_profiles_for_heartbeat 文件寫明「只含 file 型」。匯入網址型時,把下載內容存成 upload_files,該版改記成檔案型(source_type=file、file_id 有值),原網址另存成「來源網址」欄位;新鮮度檢查(ETag)改看該欄。
file_id。改動小,但同一版有「網址」與「快照」兩個來源,Agent 該用哪個要另訂規則,日後容易兩個真相。約三張卡:①環境卡:BE 開發期改走 jedi-detection 本機路徑;②套件卡(Repo 選 jedi-packages):匯入與抽取改法+「來源網址」欄 migration+ETag 改看該欄;③BE 卡:接線、DEV 重新匯入 dev-sec 兩支、本機 Agent 拉設定看到 CINC 兩筆、主控台下拉有東西。
要先確認的:
GET /agents/config)的接點:本案的同步走哪條通道,看 FR-171 做到哪。~/Projects/Jedicogy/module/jedi-python-package/jedi-detection/