<?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>Chapter-Structure on Tarragon</title><link>https://tarrragon.github.io/blog/tags/chapter-structure/</link><description>Recent content in Chapter-Structure on Tarragon</description><generator>Hugo -- gohugo.io</generator><language>zh-TW</language><copyright>Tarragon (CC BY 4.0)</copyright><lastBuildDate>Wed, 13 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://tarrragon.github.io/blog/tags/chapter-structure/index.xml" rel="self" type="application/rss+xml"/><item><title>章節已有 routing skeleton 走補強段、不空白擴章</title><link>https://tarrragon.github.io/blog/report/routing-layer-chapter-recognition/</link><pubDate>Wed, 13 May 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/report/routing-layer-chapter-recognition/</guid><description>&lt;h2 id="結論">結論&lt;/h2>
&lt;p>Routing layer 章節辨識是擴章策略選擇的前置紀律。章節分三類、各對應不同擴章策略：&lt;/p>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>章節類型&lt;/th>
 &lt;th>訊號&lt;/th>
 &lt;th>擴章策略&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>空白章節&lt;/td>
 &lt;td>缺 threat scope / 問題節點表 / 風險邊界、structure 待建&lt;/td>
 &lt;td>走 case-driven 大幅擴章、建完整結構&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>Routing layer 章節&lt;/td>
 &lt;td>已有 threat scope + 問題節點表 + 風險邊界 + 案例觸發段&lt;/td>
 &lt;td>走 &lt;em>補強段&lt;/em> 策略（在現有結構內補 mechanism 深化）&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>導讀 / 標準引用章節&lt;/td>
 &lt;td>用 framework（OWASP / NIST）為主、案例為輔&lt;/td>
 &lt;td>走 standard-driven、加 Last reviewed cadence、不擴章&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;p>擴章策略要對應章節結構 — 在 routing layer 章節空白擴章會引發 frame 重複展開或章節失衡。誤判章節類型是 backend/07 batch 1 三個 H issue 的共同根因。&lt;/p>
&lt;hr>
&lt;h2 id="跟-standard-driven-領域判讀的差別">跟 standard-driven 領域判讀的差別&lt;/h2>
&lt;p>&lt;a href="../standard-driven-vs-case-driven-domain-judgment/">#118 standard-driven vs case-driven 領域判讀&lt;/a> 看 &lt;em>領域整體&lt;/em> 該用哪種策略。本卡看 &lt;em>單一章節&lt;/em> 的結構類型決定擴章策略。&lt;/p>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>維度&lt;/th>
 &lt;th>#118 領域判讀（領域級別）&lt;/th>
 &lt;th>#119 章節辨識（章節級別、本卡）&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;tr>
 &lt;td>看什麼&lt;/td>
 &lt;td>領域整體性質（議題穩定度 / standard 成熟度）&lt;/td>
 &lt;td>單一章節的結構（routing layer / 空白 / 標準引用）&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>影響範圍&lt;/td>
 &lt;td>整個模組的寫作策略&lt;/td>
 &lt;td>單章的擴章方式&lt;/td>
 &lt;/tr>
 &lt;tr>
 &lt;td>互動關係&lt;/td>
 &lt;td>領域判讀為 standard-driven 時、所有章節走 standard-driven&lt;/td>
 &lt;td>領域判讀為 case-driven 時、章節仍可能是 routing layer（走補強段）&lt;/td>
 &lt;/tr>
 &lt;/tbody>
&lt;/table>
&lt;p>兩者互補：&lt;/p>
&lt;ul>
&lt;li>領域 + 章節同 case-driven：走完整 case-first workflow（空白擴章）&lt;/li>
&lt;li>領域 case-driven + 章節 routing layer：走補強段（在現有結構內補深化）&lt;/li>
&lt;li>領域 standard-driven：所有章節用 standard 引用 + Last reviewed cadence&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="為什麼章節結構決定擴章策略">為什麼章節結構決定擴章策略&lt;/h2>
&lt;p>case-first workflow 之前預設「章節空白、case 庫驅動擴章」— 但實務中常遇到 &lt;em>章節已有 routing layer skeleton&lt;/em> 的情境（如 backend/07 batch 1 紅隊核心安全 7 章）：&lt;/p>
&lt;ul>
&lt;li>章節已有 &lt;em>threat scope&lt;/em>（In-scope / Out-of-scope 路由）&lt;/li>
&lt;li>已有 &lt;em>問題節點表&lt;/em>（4-6 個問題節點 + 判讀訊號 + 風險後果 + 前置控制面）&lt;/li>
&lt;li>已有 &lt;em>風險邊界&lt;/em>（4-6 條升級條件）&lt;/li>
&lt;li>已有 &lt;em>案例觸發參考&lt;/em>（已 link 3-5 個 case）&lt;/li>
&lt;/ul>
&lt;p>這種章節屬 &lt;em>routing layer&lt;/em> 結構 — 完整 skeleton 已存在、case 引用段已 link 既有 case。空白擴章會：&lt;/p>
&lt;ul>
&lt;li>跟既有問題節點表結構衝突&lt;/li>
&lt;li>把章節擴成厚重 case-driven 章節、失衡 routing 性質&lt;/li>
&lt;li>引發 frame 重複展開（既有節點 + 新擴章節點都寫一遍）&lt;/li>
&lt;/ul>
&lt;p>正確策略：&lt;em>補強段&lt;/em> — 在現有結構內補 mechanism 深化段、不重建結構。&lt;/p>
&lt;hr>
&lt;h2 id="routing-layer-章節的判讀訊號">Routing layer 章節的判讀訊號&lt;/h2>
&lt;p>掃描章節時、看以下訊號判斷是否為 routing layer：&lt;/p></description><content:encoded><![CDATA[<h2 id="結論">結論</h2>
<p>Routing layer 章節辨識是擴章策略選擇的前置紀律。章節分三類、各對應不同擴章策略：</p>
<table>
  <thead>
      <tr>
          <th>章節類型</th>
          <th>訊號</th>
          <th>擴章策略</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>空白章節</td>
          <td>缺 threat scope / 問題節點表 / 風險邊界、structure 待建</td>
          <td>走 case-driven 大幅擴章、建完整結構</td>
      </tr>
      <tr>
          <td>Routing layer 章節</td>
          <td>已有 threat scope + 問題節點表 + 風險邊界 + 案例觸發段</td>
          <td>走 <em>補強段</em> 策略（在現有結構內補 mechanism 深化）</td>
      </tr>
      <tr>
          <td>導讀 / 標準引用章節</td>
          <td>用 framework（OWASP / NIST）為主、案例為輔</td>
          <td>走 standard-driven、加 Last reviewed cadence、不擴章</td>
      </tr>
  </tbody>
</table>
<p>擴章策略要對應章節結構 — 在 routing layer 章節空白擴章會引發 frame 重複展開或章節失衡。誤判章節類型是 backend/07 batch 1 三個 H issue 的共同根因。</p>
<hr>
<h2 id="跟-standard-driven-領域判讀的差別">跟 standard-driven 領域判讀的差別</h2>
<p><a href="../standard-driven-vs-case-driven-domain-judgment/">#118 standard-driven vs case-driven 領域判讀</a> 看 <em>領域整體</em> 該用哪種策略。本卡看 <em>單一章節</em> 的結構類型決定擴章策略。</p>
<table>
  <thead>
      <tr>
          <th>維度</th>
          <th>#118 領域判讀（領域級別）</th>
          <th>#119 章節辨識（章節級別、本卡）</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>看什麼</td>
          <td>領域整體性質（議題穩定度 / standard 成熟度）</td>
          <td>單一章節的結構（routing layer / 空白 / 標準引用）</td>
      </tr>
      <tr>
          <td>影響範圍</td>
          <td>整個模組的寫作策略</td>
          <td>單章的擴章方式</td>
      </tr>
      <tr>
          <td>互動關係</td>
          <td>領域判讀為 standard-driven 時、所有章節走 standard-driven</td>
          <td>領域判讀為 case-driven 時、章節仍可能是 routing layer（走補強段）</td>
      </tr>
  </tbody>
</table>
<p>兩者互補：</p>
<ul>
<li>領域 + 章節同 case-driven：走完整 case-first workflow（空白擴章）</li>
<li>領域 case-driven + 章節 routing layer：走補強段（在現有結構內補深化）</li>
<li>領域 standard-driven：所有章節用 standard 引用 + Last reviewed cadence</li>
</ul>
<hr>
<h2 id="為什麼章節結構決定擴章策略">為什麼章節結構決定擴章策略</h2>
<p>case-first workflow 之前預設「章節空白、case 庫驅動擴章」— 但實務中常遇到 <em>章節已有 routing layer skeleton</em> 的情境（如 backend/07 batch 1 紅隊核心安全 7 章）：</p>
<ul>
<li>章節已有 <em>threat scope</em>（In-scope / Out-of-scope 路由）</li>
<li>已有 <em>問題節點表</em>（4-6 個問題節點 + 判讀訊號 + 風險後果 + 前置控制面）</li>
<li>已有 <em>風險邊界</em>（4-6 條升級條件）</li>
<li>已有 <em>案例觸發參考</em>（已 link 3-5 個 case）</li>
</ul>
<p>這種章節屬 <em>routing layer</em> 結構 — 完整 skeleton 已存在、case 引用段已 link 既有 case。空白擴章會：</p>
<ul>
<li>跟既有問題節點表結構衝突</li>
<li>把章節擴成厚重 case-driven 章節、失衡 routing 性質</li>
<li>引發 frame 重複展開（既有節點 + 新擴章節點都寫一遍）</li>
</ul>
<p>正確策略：<em>補強段</em> — 在現有結構內補 mechanism 深化段、不重建結構。</p>
<hr>
<h2 id="routing-layer-章節的判讀訊號">Routing layer 章節的判讀訊號</h2>
<p>掃描章節時、看以下訊號判斷是否為 routing layer：</p>
<table>
  <thead>
      <tr>
          <th>訊號</th>
          <th>屬 routing layer 章節</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>含「## 本章寫作邊界」段</td>
          <td>是</td>
      </tr>
      <tr>
          <td>含「## 本章 threat scope」段（In-scope / Out-of-scope）</td>
          <td>是</td>
      </tr>
      <tr>
          <td>含「## 從本章到實作」段（Mechanism + Delivery chain）</td>
          <td>是</td>
      </tr>
      <tr>
          <td>含「## 問題節點（案例觸發式）」表格</td>
          <td>是</td>
      </tr>
      <tr>
          <td>含「## 跨章議題交叉引用」段</td>
          <td>是</td>
      </tr>
      <tr>
          <td>含「## 常見風險邊界」段</td>
          <td>是</td>
      </tr>
      <tr>
          <td>含「## 案例觸發參考」段</td>
          <td>是</td>
      </tr>
      <tr>
          <td>含「## 下一步路由」段</td>
          <td>是</td>
      </tr>
      <tr>
          <td>章節行數 80-120 行（已有完整結構但不厚重）</td>
          <td>是</td>
      </tr>
  </tbody>
</table>
<p>含 4+ 個訊號 → 屬 routing layer 章節、走補強段策略。</p>
<hr>
<h2 id="補強段策略">補強段策略</h2>
<p>在 routing layer 章節內補 case-driven 深化段、遵守以下紀律：</p>
<h3 id="1-補強段位置">1. 補強段位置</h3>
<p>通常放在「問題節點表」後、「常見風險邊界」前：</p>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-markdown" data-lang="markdown"><span class="line"><span class="ln">1</span><span class="cl"><span class="gu">## 問題節點（案例觸發式）
</span></span></span><span class="line"><span class="ln">2</span><span class="cl"><span class="gu"></span>
</span></span><span class="line"><span class="ln">3</span><span class="cl">| 問題節點 | ... | ... |
</span></span><span class="line"><span class="ln">4</span><span class="cl">
</span></span><span class="line"><span class="ln">5</span><span class="cl"><span class="gu">## [新增補強段：對應某問題節點的 mechanism 深化]
</span></span></span><span class="line"><span class="ln">6</span><span class="cl"><span class="gu"></span>
</span></span><span class="line"><span class="ln">7</span><span class="cl">[補強內容、case 引用三段式]
</span></span><span class="line"><span class="ln">8</span><span class="cl">
</span></span><span class="line"><span class="ln">9</span><span class="cl">## 常見風險邊界</span></span></code></pre></div><h3 id="2-補強段的範圍紀律">2. 補強段的範圍紀律</h3>
<ul>
<li>每個補強段對應 1-2 個既有問題節點、不擴新議題</li>
<li>不重建 threat scope / 問題節點表（保留 routing 性質）</li>
<li>補的 mechanism 深化要明示「本節聚焦 X 視角、canonical 在 Y 章」（避免 frame 重複）</li>
</ul>
<h3 id="3-cross-link-密度上升">3. Cross-link 密度上升</h3>
<p>補強段要明示「跟其他章節的視角分工」、否則 reviewer C 會抓 frame 重複展開：</p>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-markdown" data-lang="markdown"><span class="line"><span class="ln">1</span><span class="cl"><span class="gu">## 高權限工具的會話收斂節奏
</span></span></span><span class="line"><span class="ln">2</span><span class="cl"><span class="gu"></span>
</span></span><span class="line"><span class="ln">3</span><span class="cl">身分被取得後、token 撤銷跟 session kill 的時間窗口直接決定攻擊者可觸及的
</span></span><span class="line"><span class="ln">4</span><span class="cl">資產面積、是初始落點橫向擴散的關鍵節流點。會話收斂節奏的 canonical 在
</span></span><span class="line"><span class="ln">5</span><span class="cl">[<span class="nt">7.5 § 會話重放跟全域失效</span>](<span class="na">../transport-trust-and-certificate-lifecycle/#會話重放跟全域失效canonical</span>)、
</span></span><span class="line"><span class="ln">6</span><span class="cl">本節從身分層補 token 撤銷窗口的 specific 訊號。
</span></span><span class="line"><span class="ln">7</span><span class="cl">
</span></span><span class="line"><span class="ln">8</span><span class="cl">對應 [Slack 2022 case]：...</span></span></code></pre></div><hr>
<h2 id="07-batch-1-實證">07 batch 1 實證</h2>
<p>backend/07 batch 1 七章節（identity-access / secrets / entrypoint / transport / credential-rotation / audit / workload-identity）走補強段策略：</p>
<ul>
<li>章節原本 80-100 行、補強後 100-140 行（+20-40 行 / 章）</li>
<li>每章補 2-3 個 mechanism 深化段、對應既有問題節點</li>
<li>三個 H issue（C-H1/H2/H3）都是 frame 重複展開、補強段紀律失效引起</li>
<li>修正後加 cross-link 明示「canonical 在 X 章、本節補 Y 視角」、frame 重複收斂</li>
</ul>
<p>對照 backend/06 reliability 模組（章節空白擴章）：</p>
<ul>
<li>章節原本 30-50 行、擴章後 80-90 行</li>
<li>每章建 mechanism + 訊號 + 反模式完整結構</li>
<li>沒有 routing skeleton 衝突問題</li>
</ul>
<p>兩種策略對應不同章節初始狀態、不互斥。</p>
<hr>
<h2 id="反模式">反模式</h2>
<table>
  <thead>
      <tr>
          <th>反模式</th>
          <th>後果</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>在 routing layer 章節空白擴章、忽略既有問題節點表</td>
          <td>Frame 重複展開、章節失衡</td>
      </tr>
      <tr>
          <td>補強段沒明示「canonical 在 X 章、本節補 Y 視角」</td>
          <td>Reviewer C 抓 H issue、SSoT 不清</td>
      </tr>
      <tr>
          <td>補強段重建 threat scope / 問題節點表</td>
          <td>章節結構衝突、原 routing 性質被破壞</td>
      </tr>
      <tr>
          <td>沒先判章節類型、直接套 stage 2 寫作</td>
          <td>走錯策略、擴章失敗</td>
      </tr>
      <tr>
          <td>Routing layer 章節擴成厚重 case-driven 章節</td>
          <td>失衡 routing 性質、跨章導讀路徑斷掉</td>
      </tr>
  </tbody>
</table>
<hr>
<h2 id="跟其他抽象層原則的關係">跟其他抽象層原則的關係</h2>
<table>
  <thead>
      <tr>
          <th>原則</th>
          <th>關係</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><a href="../standard-driven-vs-case-driven-domain-judgment/">#118 Standard-driven vs Case-driven 領域判讀</a></td>
          <td>本卡的上游 — 先判讀領域為 case-driven、本卡才適用（standard-driven 領域走 standard 引用、不需章節結構判讀）</td>
      </tr>
      <tr>
          <td><a href="../single-source-of-truth/">#44 Single Source of Truth</a></td>
          <td>同骨 pattern 在不同 surface 的展現 — #44 處理 engineering value 的住址、本卡處理 narrative frame 的章節住址（補強段要明示「canonical 在 X 章」）</td>
      </tr>
      <tr>
          <td><a href="../ease-of-writing-vs-intent-alignment/">#67 寫作便利度跟意圖對齊反相關</a></td>
          <td>空白擴章比補強段便利、但便利會偏離意圖（routing 性質）</td>
      </tr>
      <tr>
          <td><a href="../case-type-graded-citation-depth/">#115 案例引用深度跟著 case 類型走</a></td>
          <td>補強段內 case 引用紀律的 prerequisite</td>
      </tr>
      <tr>
          <td><a href="../writing-multi-pass-review/">#83 Writing multi-pass review</a></td>
          <td>輪 2（對意圖）的具體實作 — 寫補強段時要對齊章節原有 routing 意圖</td>
      </tr>
  </tbody>
</table>
<hr>
<h2 id="判讀徵兆">判讀徵兆</h2>
<table>
  <thead>
      <tr>
          <th>訊號</th>
          <th>該做的事</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>章節已有完整 threat scope / 問題節點表 / 風險邊界</td>
          <td>走補強段、不空白擴章</td>
      </tr>
      <tr>
          <td>章節 80-120 行、結構完整但內容不厚重</td>
          <td>Routing layer 章節、補強段策略</td>
      </tr>
      <tr>
          <td>章節 30-50 行、缺結構</td>
          <td>空白章節、走 case-driven 大幅擴章</td>
      </tr>
      <tr>
          <td>Reviewer C 抓 frame 重複展開 H issue</td>
          <td>補強段紀律失效、補「canonical 在 X 章」cross-link</td>
      </tr>
      <tr>
          <td>章節擴章後失衡 routing 性質</td>
          <td>退回原章節、補強段重寫、保留 routing layer 結構</td>
      </tr>
      <tr>
          <td>想在 routing layer 章節重建 threat scope</td>
          <td>紀律失效訊號、改用補強段策略</td>
      </tr>
  </tbody>
</table>
<p><strong>核心</strong>：擴章策略對應章節結構 — 空白章節走 case-driven 擴章、routing layer 章節走補強段、導讀章節走 standard-driven。三類策略各自有適用情境、選錯會引發 frame 重複展開或章節失衡。</p>
]]></content:encoded></item></channel></rss>