wiki sync sidebar integrity check - Liplus-Project/liplus-language GitHub Wiki
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].-*.mdsource 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 との所有境界)