母案:FR-058 檢測工具擴充(四工具接入)(母案)

任務摘要

客戶要能直接上傳源碼壓縮包(.zip / .tar / .tar.gz / .tgz)做 SonarQube 檢測。定位為 scan 模式的取源擴充,不是新模式——scan_mode 多一個 upload 選項,取源之後整條 FR-058.6 掃描管線全複用。上傳時機定在任務抽屜發起執行時(非任務設定表單);壓縮包落地 tenant 設定的儲存空間,agent 以 mTLS 主動拉取下載。tenant 端壓縮包保留供重掃沿用+歷史不刪(agent 端 workspace 維持掃完即刪)。決策 D25–D31 定案、D32 併入 D29 ④(2026-08-01 決策者已全數過稿)。

關鍵約束

design.md 座標

docs/features/FR-058-2607-detection-tools-expansion/design.md:詳細設計見 §4.8、決策理由見 §2 D25–D31(D32 併入 D29)、拆分與驗收條件見 §5.12 T-7.1〜T-7.4。討論稿:同資料夾 discussion-fr058.7-upload-scan.html(v4)。

驗收條件摘要

照 §5.12 T-7.4 清單:上傳 zip 掃描跑通、.tar.gz 跑通、沿用舊檔重掃跑通、替換後歷史保留、磁碟不足明確報錯、超額壓縮包被擋、環境變數調限額生效、nginx client_max_body_size 部署驗證。

子任務卡