<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Spurious-Warning on Tarragon</title><link>https://tarrragon.github.io/blog/tags/spurious-warning/</link><description>Recent content in Spurious-Warning on Tarragon</description><generator>Hugo -- gohugo.io</generator><language>zh-TW</language><copyright>Tarragon (CC BY 4.0)</copyright><lastBuildDate>Thu, 18 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://tarrragon.github.io/blog/tags/spurious-warning/index.xml" rel="self" type="application/rss+xml"/><item><title>spurious warning：linter 的偽警告</title><link>https://tarrragon.github.io/blog/til/terms/spurious-warning/</link><pubDate>Thu, 18 Jun 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/til/terms/spurious-warning/</guid><description>&lt;blockquote>
&lt;p>這個詞出現在「&lt;a href="../guard-misfires/">守衛和規則為什麼會誤觸&lt;/a>」這個問題裡——它是 linter 切面。&lt;/p>&lt;/blockquote>
&lt;p>spurious warning（偽警告）指&lt;strong>靜態分析、linter 或編譯器報了一條警告，但其實沒有問題&lt;/strong>——是 linting / 編譯領域的 &lt;a href="../false-positive/">false positive&lt;/a>。&lt;/p>
&lt;h2 id="常見成因">常見成因&lt;/h2>
&lt;ul>
&lt;li>規則訂得過嚴，把合法寫法也圈進去。&lt;/li>
&lt;li>分析器無法&lt;strong>證明&lt;/strong>某段安全，於是保守地報警（寧可誤報也不漏報）。&lt;/li>
&lt;li>規則的比對範圍太寬，見 &lt;a href="../over-match/">over-match&lt;/a>。&lt;/li>
&lt;/ul>
&lt;h2 id="處理">處理&lt;/h2>
&lt;p>確認是偽警告後，可用 inline 抑制（如 &lt;code>// nolint&lt;/code>、&lt;code># noqa&lt;/code>）關掉那一處——但要&lt;strong>保守&lt;/strong>：抑制範圍越窄越好，否則容易把真問題一起關掉。抑制過頭、警告太多沒人理，就變成 &lt;a href="../noise/">noise&lt;/a>。&lt;/p>
&lt;h2 id="相關概念">相關概念&lt;/h2>
&lt;ul>
&lt;li>上位概念：&lt;a href="../false-positive/">false positive&lt;/a>。&lt;/li>
&lt;li>機制成因：&lt;a href="../over-match/">over-match&lt;/a>。&lt;/li>
&lt;li>量多後的狀態：&lt;a href="../noise/">noise&lt;/a>。&lt;/li>
&lt;li>測試領域的同類偽訊號：&lt;a href="../spurious-failure/">spurious failure&lt;/a>。&lt;/li>
&lt;/ul></description><content:encoded><![CDATA[<blockquote>
<p>這個詞出現在「<a href="../guard-misfires/">守衛和規則為什麼會誤觸</a>」這個問題裡——它是 linter 切面。</p></blockquote>
<p>spurious warning（偽警告）指<strong>靜態分析、linter 或編譯器報了一條警告，但其實沒有問題</strong>——是 linting / 編譯領域的 <a href="../false-positive/">false positive</a>。</p>
<h2 id="常見成因">常見成因</h2>
<ul>
<li>規則訂得過嚴，把合法寫法也圈進去。</li>
<li>分析器無法<strong>證明</strong>某段安全，於是保守地報警（寧可誤報也不漏報）。</li>
<li>規則的比對範圍太寬，見 <a href="../over-match/">over-match</a>。</li>
</ul>
<h2 id="處理">處理</h2>
<p>確認是偽警告後，可用 inline 抑制（如 <code>// nolint</code>、<code># noqa</code>）關掉那一處——但要<strong>保守</strong>：抑制範圍越窄越好，否則容易把真問題一起關掉。抑制過頭、警告太多沒人理，就變成 <a href="../noise/">noise</a>。</p>
<h2 id="相關概念">相關概念</h2>
<ul>
<li>上位概念：<a href="../false-positive/">false positive</a>。</li>
<li>機制成因：<a href="../over-match/">over-match</a>。</li>
<li>量多後的狀態：<a href="../noise/">noise</a>。</li>
<li>測試領域的同類偽訊號：<a href="../spurious-failure/">spurious failure</a>。</li>
</ul>
]]></content:encoded></item></channel></rss>