Skip to content

wiki sync sidebar integrity check

Claude Lin & Lay edited this page May 21, 2026 · 1 revision

wiki sync 時の _Sidebar.md 整合性 assertion

判断

skills/operations-on-release/SKILL.md の Post-release wiki sync 内 Pre-sync verification に、_Sidebar.md が wiki 実体 (docs/-owned + wiki-only judgment records) を網羅参照しているかを検証する Sidebar integrity assertion を埋め込む。ドリフト検出時は STOP & escalate、自動修正は採用しない。

背景

build-2026-05-20.1 release sync を実機で観察した時点で、_Sidebar.md に以下が静かに欠落していた:

  • 参考文書 E.-J. の 6 件 (docs/[A-Z].-*.md source of truth)
  • 判断記録 p / r / s / t / u の 5 件 (wiki-only entry)

wiki commit 5e47a90 で手動回収済。Master の観察 (「参考文書カテゴリのサイドメニューが更新されてない」) で初めて表面化したドリフトであり、人為的注意では構造的に閉じない。判断記録は letter prefix が前進するたび、参考文書は docs/ 大文字 prefix が増えるたびに sidebar が遅延する空白期間が必ず発生する。

再発防止は人為的注意ではなく手順埋め込みで閉じるのが Li+ 流。

制約

  • AI 内部 release flow への追加のみ。user / system observable behavior は不変 → patch 相当 (governance structure change with no user/system observable impact)。
  • release sync を blocking しない。整合性違反検出時は STOP & escalate であって sync 全体の block ではない (人間判断に渡す)。
  • 検証対象集合は {tmpdir} ファイルシステム実体から構築する。docs/ ローカルや index 文書ではなく sync 直前の wiki 実体を真とする (cp docs/*.md {tmpdir}/ 後の状態で docs/-owned と wiki-only の両系統が {tmpdir} に揃うため)。

結論

採用案

  • Sidebar integrity assertion を Pre-sync verification の追加 bullet として埋め込む (手順 4 後・手順 5 前のタイミング)
  • 期待 slug 集合 = Home + {tmpdir}/[A-Z]*.md + {tmpdir}/[0-9]*.md + {tmpdir}/[a-z].-*.md
  • 期待集合から除外 = _Sidebar.md, _Footer.md (ナビ基盤であって被参照エントリではない)
  • ](<slug>) リンク抽出による参照集合との差分検出
  • 期待 − 参照 非空で STOP + 欠落 slug を名指しでエスカレート、wiki に push しない
  • 自動修正は採用しない (sidebar 保守責任は entry を追加した PR にあり、sync は隠れて肩代わりしない)

却下案

per-PR sidebar validation (CI lane) → 全 PR を gating すると entry 命名のリファクタや一時的な名前空間操作で繰り返し詰まる。release sync という再帰チェックポイントの方が AI 単独 closure に適合する。invariant の強制点を一箇所に絞ることで、点検箇所と修正タイミングが揃う。

自動修正による sidebar 追記 → 短期的にドリフトは消えるが、責任の所在が不明瞭になる。entry 命名の妥当性 (sidebar 表示テキストの選択) を release 層が自動判定することになり、命名判断は entry author の仕事という層をまたぐ。Li+ の責任分離原則 (docs/H.-Roles-and-Evaluation.md) と衝突する。

関連

  • PR: #1318 — implementation (squash merge afae460)
  • Issue: #1317 — spec deepening
  • 先行手動同期: liplus-language.wiki commit 5e47a90
  • 隣接 spec: skills/operations-on-release/SKILL.md § Post-release wiki sync, docs/4.-Operations.md § リリース後の Wiki 同期
  • 所有境界の根拠: 2026-04-26 確定 (docs/Decision-Log.md § wiki sync との所有境界)

要求仕様書 (1-6)

参考文書 (A-K)

判断構造

Clone this wiki locally