From cc2b1f576ca1494624c0c201ddeb70c6b3004da5 Mon Sep 17 00:00:00 2001 From: OoO Date: Wed, 13 May 2026 23:53:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=20Code=20Review=20=E6=89=8B?= =?UTF-8?q?=E6=A9=9F=E6=8E=92=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config.py | 2 +- templates/code_review.html | 99 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 100 insertions(+), 1 deletion(-) diff --git a/config.py b/config.py index 3971a3d..0726911 100644 --- a/config.py +++ b/config.py @@ -320,7 +320,7 @@ YOUTUBE_API_KEY = os.getenv('YOUTUBE_API_KEY', '') # ========================================== # 系統版本與路徑 # ========================================== -SYSTEM_VERSION = "V10.141" +SYSTEM_VERSION = "V10.142" LOG_FILE_PATH = os.path.join(BASE_DIR, 'logs/system.log') public_url = PUBLIC_URL # 用於模板顯示 diff --git a/templates/code_review.html b/templates/code_review.html index 4353831..6b7abbd 100644 --- a/templates/code_review.html +++ b/templates/code_review.html @@ -33,6 +33,14 @@ .layout { display: grid; grid-template-columns: 340px 1fr; gap: 0; height: calc(100vh - 49px); overflow: hidden; } .sidebar { background: var(--panel); border-right: 1px solid var(--border); overflow-y: auto; padding: 16px; } .main { overflow-y: auto; padding: 16px; } + .layout, + .sidebar, + .main, + .card, + .card-header, + .card-body { + min-width: 0; + } /* ── Card ───────────────────────────────────────────── */ .card { background: var(--panel); border: 1px solid var(--border); border-radius: 8px; margin-bottom: 12px; overflow: hidden; } @@ -140,6 +148,8 @@ .sidebar, .main { + width: 100%; + max-width: 100%; overflow: visible; } @@ -148,6 +158,50 @@ border-bottom: 1px solid var(--border); } + .card, + .card-header, + .card-body, + .pipeline, + .step, + .step-info { + max-width: 100%; + min-width: 0; + } + + .card-header { + flex-wrap: wrap; + overflow-wrap: anywhere; + } + + #pipelineId { + flex: 1 1 100%; + margin-left: 0 !important; + overflow-wrap: anywhere; + white-space: normal; + } + + .step-name, + .step-agent, + .step-summary, + .hist-sha, + .hist-meta, + .report-box, + .ea-box, + code { + overflow-wrap: anywhere; + word-break: break-word; + } + + .step-summary { + white-space: normal; + } + + .hist-item > div:first-child { + align-items: flex-start; + flex-direction: column; + gap: 4px; + } + .tabs { flex-wrap: wrap; } @@ -163,6 +217,51 @@ padding: 28px 16px; overflow-wrap: anywhere; } + + #findingsTable table, + #findingsTable thead, + #findingsTable tbody, + #findingsTable tr, + #findingsTable td { + display: block; + width: 100%; + } + + #findingsTable thead { + display: none; + } + + #findingsTable tr { + border-bottom: 1px solid var(--border); + padding: 10px 12px; + } + + #findingsTable tr:last-child { + border-bottom: 0; + } + + #findingsTable td { + border-bottom: 0; + padding: 6px 0; + overflow-wrap: anywhere; + } + + #findingsTable td::before { + color: var(--muted); + content: ""; + display: block; + font-size: 11px; + font-weight: 700; + letter-spacing: .04em; + margin-bottom: 3px; + text-transform: uppercase; + } + + #findingsTable td:nth-child(1)::before { content: "嚴重度"; } + #findingsTable td:nth-child(2)::before { content: "類型"; } + #findingsTable td:nth-child(3)::before { content: "檔案 / 位置"; } + #findingsTable td:nth-child(4)::before { content: "問題說明"; } + #findingsTable td:nth-child(5)::before { content: "修復建議"; } }