<?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>內容分類 on Tarragon</title><link>https://tarrragon.github.io/blog/tags/%E5%85%A7%E5%AE%B9%E5%88%86%E9%A1%9E/</link><description>Recent content in 內容分類 on Tarragon</description><generator>Hugo -- gohugo.io</generator><language>zh-TW</language><copyright>Tarragon (CC BY 4.0)</copyright><lastBuildDate>Mon, 29 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://tarrragon.github.io/blog/tags/%E5%85%A7%E5%AE%B9%E5%88%86%E9%A1%9E/index.xml" rel="self" type="application/rss+xml"/><item><title>一篇文章只承擔一種功能：SOP 跟 retrospective 混寫兩邊都做不好</title><link>https://tarrragon.github.io/blog/report/single-function-per-article-sop-vs-retrospective/</link><pubDate>Mon, 29 Jun 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/report/single-function-per-article-sop-vs-retrospective/</guid><description>&lt;h2 id="論述基礎與限制">論述基礎與限制&lt;/h2>
&lt;p>本卡抽自四篇方法論文章同時塞 SOP 和驗證紀錄、導致兩種讀者都服務不好的分類檢討。limitation：evidence 來自同一個 blog 的四篇文章，都是寫作方法論主題。&lt;/p>
&lt;h2 id="核心原則">核心原則&lt;/h2>
&lt;p>操作步驟（SOP：結構模板、流程 checklist、怎麼做）和演化紀錄（retrospective：批次驗證數據、實際跑出來學到什麼）服務不同讀者。混寫本身不一定失敗（SRE 手冊和 postmortem 模板都成功交織兩者），但在本 repo 的場景下會造成兩個具體問題：&lt;/p>
&lt;ol>
&lt;li>&lt;strong>SOP 同時存在於 skill 和文章裡，改 skill 時文章沒同步更新、兩處內容分歧&lt;/strong>。這是主要痛點。&lt;/li>
&lt;li>沒有清楚的分節標示時，讀者要跳過大量「不是給我看的」段落。&lt;/li>
&lt;/ol>
&lt;h2 id="情境">情境&lt;/h2>
&lt;p>四篇 &lt;code>posts/&lt;/code> 文章的共通症狀：&lt;/p>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>文章&lt;/th>
 &lt;th>SOP 段內容&lt;/th>
 &lt;th>Retrospective 段內容&lt;/th>
 &lt;th>混合比例&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>migration-playbook-methodology&lt;/td>
 &lt;td>6 type 結構模板、diff dimension audit 步驟&lt;/td>
 &lt;td>三輪 batch 驗證、cadence dogfood、self-aware limitation update&lt;/td>
 &lt;td>SOP 40% / retro 60%&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>vendor-deep-article-methodology&lt;/td>
 &lt;td>選題判準、6 段結構、寫作流程 7 step&lt;/td>
 &lt;td>兩輪 batch 驗證、跨兩輪 cadence 對照&lt;/td>
 &lt;td>SOP 35% / retro 65%&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>verification-driven-cli-tool-articles&lt;/td>
 &lt;td>分類 → fixture → 標註 → gotcha 回寫流程&lt;/td>
 &lt;td>「為什麼官方 docs 不夠」+ 實測落差清單&lt;/td>
 &lt;td>SOP 70% / retro 30%&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>ci-silent-hang-diagnosis&lt;/td>
 &lt;td>無明確 SOP（不可重複流程）&lt;/td>
 &lt;td>完整 case study + 原則提取&lt;/td>
 &lt;td>不適用此分類&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;p>前三篇的共通模式：文章開頭像方法論手冊（SOP 感），中段突然變成「第一輪 demo 驗證」「第二輪 batch 對照」（retrospective 感），讀者在兩種模式之間切換的認知成本高。&lt;/p>
&lt;p>第四篇 ci-silent-hang 是不同問題 — 它不是功能混合，是資料夾歸類錯（debugging case study 放在 &lt;code>posts/&lt;/code> 而非 &lt;code>work-log/&lt;/code>）。&lt;/p>
&lt;h2 id="理想做法">理想做法&lt;/h2>
&lt;p>功能拆分到對應的 surface：&lt;/p>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>功能&lt;/th>
 &lt;th>Surface&lt;/th>
 &lt;th>讀者&lt;/th>
 &lt;th>格式&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>SOP（操作步驟）&lt;/td>
 &lt;td>&lt;code>.claude/skills/&lt;/code>&lt;/td>
 &lt;td>Claude runtime + 人類執行者&lt;/td>
 &lt;td>Skill 格式（H1 + body、portable）&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Retrospective（驗證證據）&lt;/td>
 &lt;td>&lt;code>posts/&lt;/code> 或 &lt;code>content/skills/&lt;/code> 鏡像&lt;/td>
 &lt;td>人類讀者&lt;/td>
 &lt;td>文章格式（Hugo frontmatter）&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Debugging case&lt;/td>
 &lt;td>&lt;code>work-log/&lt;/code>&lt;/td>
 &lt;td>人類讀者&lt;/td>
 &lt;td>事件紀錄&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>抽象原則&lt;/td>
 &lt;td>&lt;code>report/&lt;/code>&lt;/td>
 &lt;td>所有讀者&lt;/td>
 &lt;td>Report 卡片&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;p>拆分後的文章只保留 retrospective 段（去掉跟 skill 重複的 SOP 步驟），開頭引用 skill 路徑建立 context。去掉 SOP 後文章若不能獨立成篇（冷讀者讀不懂、或只剩表格沒有判讀），降級成 &lt;code>content/skills/&lt;/code> 鏡像。&lt;/p>
&lt;p>已有先例：&lt;code>case-first-agent-team-review-workflow&lt;/code> 已經走這條路 — 文章是方法論敘事、skill 是操作步驟、兩者共存互連。&lt;/p>
&lt;h2 id="沒這樣做的麻煩">沒這樣做的麻煩&lt;/h2>
&lt;ul>
&lt;li>&lt;strong>機器讀者找不到步驟&lt;/strong>：Claude runtime 透過 skill 觸發操作流程；SOP 埋在文章的 retrospective 段落裡，觸發路徑不通&lt;/li>
&lt;li>&lt;strong>人類讀者跳著讀&lt;/strong>：讀者進來看「migration playbook 怎麼寫」，要跳過三輪 batch 驗證表才找到 6 type 結構模板；或者進來看「為什麼三輪 batch collapse 率不同」，要跳過 diff dimension audit 步驟才到驗證段&lt;/li>
&lt;li>&lt;strong>維護雙份&lt;/strong>：SOP 同時存在於 skill 和文章裡（migration-playbook 已發生），改 skill 時文章沒同步更新，兩處內容分歧&lt;/li>
&lt;li>&lt;strong>新文章不知道放哪&lt;/strong>：下一篇方法論文章也會自然累積 SOP + retrospective，如果沒有拆分慣例，就會繼續混寫&lt;/li>
&lt;/ul>
&lt;h2 id="判讀徵兆">判讀徵兆&lt;/h2>
&lt;p>寫方法論文章時，如果文章裡同時出現以下兩類段落，就是功能混合的訊號：&lt;/p></description><content:encoded><![CDATA[<h2 id="論述基礎與限制">論述基礎與限制</h2>
<p>本卡抽自四篇方法論文章同時塞 SOP 和驗證紀錄、導致兩種讀者都服務不好的分類檢討。limitation：evidence 來自同一個 blog 的四篇文章，都是寫作方法論主題。</p>
<h2 id="核心原則">核心原則</h2>
<p>操作步驟（SOP：結構模板、流程 checklist、怎麼做）和演化紀錄（retrospective：批次驗證數據、實際跑出來學到什麼）服務不同讀者。混寫本身不一定失敗（SRE 手冊和 postmortem 模板都成功交織兩者），但在本 repo 的場景下會造成兩個具體問題：</p>
<ol>
<li><strong>SOP 同時存在於 skill 和文章裡，改 skill 時文章沒同步更新、兩處內容分歧</strong>。這是主要痛點。</li>
<li>沒有清楚的分節標示時，讀者要跳過大量「不是給我看的」段落。</li>
</ol>
<h2 id="情境">情境</h2>
<p>四篇 <code>posts/</code> 文章的共通症狀：</p>
<table>
  <thead>
      <tr>
          <th>文章</th>
          <th>SOP 段內容</th>
          <th>Retrospective 段內容</th>
          <th>混合比例</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>migration-playbook-methodology</td>
          <td>6 type 結構模板、diff dimension audit 步驟</td>
          <td>三輪 batch 驗證、cadence dogfood、self-aware limitation update</td>
          <td>SOP 40% / retro 60%</td>
      </tr>
      <tr>
          <td>vendor-deep-article-methodology</td>
          <td>選題判準、6 段結構、寫作流程 7 step</td>
          <td>兩輪 batch 驗證、跨兩輪 cadence 對照</td>
          <td>SOP 35% / retro 65%</td>
      </tr>
      <tr>
          <td>verification-driven-cli-tool-articles</td>
          <td>分類 → fixture → 標註 → gotcha 回寫流程</td>
          <td>「為什麼官方 docs 不夠」+ 實測落差清單</td>
          <td>SOP 70% / retro 30%</td>
      </tr>
      <tr>
          <td>ci-silent-hang-diagnosis</td>
          <td>無明確 SOP（不可重複流程）</td>
          <td>完整 case study + 原則提取</td>
          <td>不適用此分類</td>
      </tr>
  </tbody>
</table>
<p>前三篇的共通模式：文章開頭像方法論手冊（SOP 感），中段突然變成「第一輪 demo 驗證」「第二輪 batch 對照」（retrospective 感），讀者在兩種模式之間切換的認知成本高。</p>
<p>第四篇 ci-silent-hang 是不同問題 — 它不是功能混合，是資料夾歸類錯（debugging case study 放在 <code>posts/</code> 而非 <code>work-log/</code>）。</p>
<h2 id="理想做法">理想做法</h2>
<p>功能拆分到對應的 surface：</p>
<table>
  <thead>
      <tr>
          <th>功能</th>
          <th>Surface</th>
          <th>讀者</th>
          <th>格式</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>SOP（操作步驟）</td>
          <td><code>.claude/skills/</code></td>
          <td>Claude runtime + 人類執行者</td>
          <td>Skill 格式（H1 + body、portable）</td>
      </tr>
      <tr>
          <td>Retrospective（驗證證據）</td>
          <td><code>posts/</code> 或 <code>content/skills/</code> 鏡像</td>
          <td>人類讀者</td>
          <td>文章格式（Hugo frontmatter）</td>
      </tr>
      <tr>
          <td>Debugging case</td>
          <td><code>work-log/</code></td>
          <td>人類讀者</td>
          <td>事件紀錄</td>
      </tr>
      <tr>
          <td>抽象原則</td>
          <td><code>report/</code></td>
          <td>所有讀者</td>
          <td>Report 卡片</td>
      </tr>
  </tbody>
</table>
<p>拆分後的文章只保留 retrospective 段（去掉跟 skill 重複的 SOP 步驟），開頭引用 skill 路徑建立 context。去掉 SOP 後文章若不能獨立成篇（冷讀者讀不懂、或只剩表格沒有判讀），降級成 <code>content/skills/</code> 鏡像。</p>
<p>已有先例：<code>case-first-agent-team-review-workflow</code> 已經走這條路 — 文章是方法論敘事、skill 是操作步驟、兩者共存互連。</p>
<h2 id="沒這樣做的麻煩">沒這樣做的麻煩</h2>
<ul>
<li><strong>機器讀者找不到步驟</strong>：Claude runtime 透過 skill 觸發操作流程；SOP 埋在文章的 retrospective 段落裡，觸發路徑不通</li>
<li><strong>人類讀者跳著讀</strong>：讀者進來看「migration playbook 怎麼寫」，要跳過三輪 batch 驗證表才找到 6 type 結構模板；或者進來看「為什麼三輪 batch collapse 率不同」，要跳過 diff dimension audit 步驟才到驗證段</li>
<li><strong>維護雙份</strong>：SOP 同時存在於 skill 和文章裡（migration-playbook 已發生），改 skill 時文章沒同步更新，兩處內容分歧</li>
<li><strong>新文章不知道放哪</strong>：下一篇方法論文章也會自然累積 SOP + retrospective，如果沒有拆分慣例，就會繼續混寫</li>
</ul>
<h2 id="判讀徵兆">判讀徵兆</h2>
<p>寫方法論文章時，如果文章裡同時出現以下兩類段落，就是功能混合的訊號：</p>
<ol>
<li><strong>步驟型段落</strong>：「Step 1 → Step 2 → Step 3」、結構模板、checklist、「照這個跑」</li>
<li><strong>證據型段落</strong>：「第 N 輪 batch 驗證」、「N/N collapse 率」、「跨兩輪對照」、「self-aware limitation update」</li>
</ol>
<p>另一個徵兆：文章已有對應的 skill（或適合建 skill），但文章裡仍重複 skill 的 SOP 內容。</p>
<p>本徵兆適用 <code>posts/</code> 方法論文章。<code>report/</code> 卡片的修法步驟 + case 證據並存是正常形態（report 卡格式本就含情境 + 原則 + 修法）。</p>
<h2 id="跟其他抽象層原則的關係">跟其他抽象層原則的關係</h2>
<ul>
<li>→ <a href="/blog/report/article-body-must-align-with-title-commitment/" data-link-title="文章主體要對齊標題承諾、WRAP 內部分析不該喧賓奪主" data-link-desc="文章標題對讀者做了承諾、文章主體必須對齊這個承諾。WRAP 內部分析（Widen Options &#43; Reality Test 含 prior 引用 &#43; evidence weight）即使方法論做得好、如果不是標題承諾的內容、就不該佔文章主體—屬於 scope mismatch、跟 process metadata 暴露（#141）的議題分開。附帶議題：當 WRAP 內部分析喧賓奪主、為了支撐 prior 容易引入沒實際出處的 source citation；把 WRAP 內部分析從主體移除、hallucination 風險自然降低。是 #141 的姊妹卡—#141 處理章節標題 surface、本卡處理章節內容 scope。">#142 文章主體要對齊標題承諾</a>：#142 處理「章節內容偏離標題」，本卡處理「整篇文章功能定位混合」— #142 是段落層、本卡是文章層，同屬「內容要對齊承諾」家族</li>
<li>→ <a href="/blog/report/cadence-homogenization-in-batch-writing/" data-link-title="Cadence 同質化是模板的隱形維度" data-link-desc="規範定義「模板」時通常只指內容欄位（規模對照、tripwire、失敗模式），忽略句型骨架 / 段首語 / 段末收尾語 / 表格前導句 / 過渡詞同樣是模板的一種；批量寫作時最易讓 cadence 同質化、單篇看起來都合規、連讀多篇才浮現預期化；51 vendor 都用「四件事 → 任一缺失就是 X 邊界的待補項目」是案例；自檢要 grep 首句 / 段末句 / 表格前導句、不是只看欄位">#122 cadence 同質化</a>：本卡四篇文章中的 retrospective 段大量引用 #122 的 cadence 概念；拆分後 retrospective 段落成為 #122 的 evidence 文件，SOP 進 skill 不再重複</li>
<li>→ <a href="/blog/report/summary-section-signals-scattered-prose/" data-link-title="教材的『重點 / 總結』段是內容發散的訊號、該重組正文不該補丁" data-link-desc="教材尾端的『重點』『一句話總結』段、若功能是重述前面已講過的內容、就是正文組織不佳的補丁。讀者需要回頭被提醒、代表概念在正文裡散掉了 —— 該做的是重拆正文段落、把概念在它該出現的位置一次講清、而不是另開總結段替發散的正文善後。判準：刪掉總結段後正文若仍站得住、證明總結本就冗餘；若站不住、是正文要重組、不是總結要補。處理總結段內容時先分『提醒 vs 概念』—— 純提醒（養成習慣 / 回頭確認）刪、有概念價值的（為何這樣設計）併回它本該所屬的正文位置。">#154 教材的重點/總結段是內容發散訊號</a>：#154 說「刪掉總結段看正文站不站得住」，本卡的對應操作是「刪掉 SOP 段看 retrospective 站不站得住」— 同類「減法測試」判準</li>
<li>→ AGENTS.md 跨 surface 內容處理原則：本卡的拆分動作跨 <code>.claude/skills/</code> 和 <code>content/</code> 兩個 surface，各自獨立、不交叉引用</li>
</ul>
]]></content:encoded></item></channel></rss>