From 8ff992e74c9b34295d5eaa580c19050c540d3b7b Mon Sep 17 00:00:00 2001 From: shanshanzhong147 Date: Tue, 2 Jun 2026 22:48:20 -0700 Subject: [PATCH] =?UTF-8?q?=E9=85=8D=E7=BD=AE:=20golangci-lint=20=E6=94=B9?= =?UTF-8?q?=E7=94=A8=20only-new-issues=20=E6=A8=A1=E5=BC=8F=20(#4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR #3 触发新 ci.yml 第一次跑 golangci-lint,爆出 47 个 lint 错误,全部是上游 perfect-panel/server + hi-server 历史代码的存量 (errcheck / unused functions), 不是本批改动引入的。 新 ci.yml 的初衷是把红挡在 merge 前。47 个 legacy lint 错误会让每一个新 PR 都被堵住、无法 merge,等于把 lint check 变成 'PR 全部红,所有人靠经验跳过' 的反模式 — 这正是我们想避免的。 切到 only-new-issues 模式:只 flag 本 PR diff 引入的新 lint 问题,让 CI 对 增量改动保持纪律,同时不阻塞 legacy backlog。 并加 fetch-depth: 0,因为 only-new-issues 需要拿 base ref 算 diff。 存量 47 个 lint 问题独立 issue 跟踪,由后端工程师按优先级清。 Co-authored-by: multica-agent --- .github/workflows/ci.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 48b1b6d..9b95b70 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -50,6 +50,9 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 + with: + # Fetch base ref so golangci-lint can diff against it for only-new-issues. + fetch-depth: 0 - name: Setup Go uses: actions/setup-go@v5 @@ -62,3 +65,8 @@ jobs: with: version: latest args: --timeout=5m + # Legacy codebase has ~47 pre-existing lint issues (errcheck / unused + # carried over from upstream perfect-panel/server). Only flag NEW + # issues introduced by this PR so CI stays useful without forcing a + # mass cleanup. Backlog cleanup tracked separately. + only-new-issues: true