## 背景・意思決定の経緯
Memanto(X学習 id=511)をきっかけに「dreaming的な記憶再統合を週次cronで回すべきか」を検討。以下の3段で「自動cronは作らず手動スキャン1回」に着地した。再現価値の高い意思決定プロセス。
1. **why-first** で検証 → Q2「実害は出ていない(気持ち悪いレベル)」→ 一旦 DROP判定
2. **grokに敵対的評価を委譲**(`grok -p`、REFUTEを命じる) → grokがDROPを論破:「収集一方通行で再統合が無い=矛盾は設計上必然的に蓄積」「実害判定は計装が無いシステムに証拠を要求する罠」「2件トリガーはsilent degradationで永久に発火しない」→ BUILD-NOW主張
3. **grokを鵜呑みにせず実測** → 49件のinstinctを集約し矛盾/重複を計測
## 実測結果(grokの主張を半分肯定・半分否定)
- ✅ grok正解: 重複は実在した(6グループ・約14件が関与) = 「収集一方通行で汚染進行」は事実
- ❌ grok外れ: **完全な逆向き矛盾は0件** = 「誤判断を誘発する危険な矛盾」は無し。汚染は「冗長」レベルで「有害」レベル未満
- → 結論: **週次cron自動化は過剰(grokのBUILD-NOWは勇み足)・DROPも誤り。正解は中間=「instinct増加時に手動スキャン」**
## 実施した掃除(読み取り→統合・相互リンク)
| 対応 | 内容 |
|------|------|
| 削除2件 | #2→#42統合(PM2 bun fork重複)・#12→#15統合(git/PRコンフリクト確認重複)。情報は統合先に吸収 |
| 相互リンク4クラスタ | Hermes auth(#17/#20/#41)・レート制限(#27/#29/#48)・VNC診断(#33/#35/#46/#49)・git系 |
| 矛盾解消1件 | #8⇔#29「Playwright一意セレクタ vs browser_evaluate(JS)直叩き」を**操作回数**(単発=セレクタ/反復=JS)で双方向明文化 |
| 結果 | instinct 49→47件・MEMORY.md死リンク0・壊れたリンク0(全検証パス) |
## 再現手順(次回スキャン用)
```bash
# 1. 全instinctのname+whyを軽量集約
python3で instinct_*.md から name行と **Why:** を抽出 → /tmp/instinct-titles.txt
# 2. 矛盾/重複判定: Ollama qwen2.5:3bは49件横断でタイムアウト → Claude本体が直接読む(7.9KBなら安い)
# 委譲順: claude > grok > gemini > codex (Ollamaタイムアウトなら即Claude)
# 3. 重複=統合(情報吸収して削除)・近接=相互リンク・矛盾=使い分け明文化
# 4. 削除前に grep で参照箇所確認(MEMORY.md索引含む) → 死リンクを統合先に張り替え
# 5. 検証: ファイル数・死リンク・壊れたリンクを機械チェック
```
## 教訓
- **記憶系の正本はローカル `projects/memory/*.md`(`.gitignore` で projects/ 全体が除外・git追跡外)**。掃除は「ファイル保存=完了」でコミット不要。
- **grokは「自動化の是非」の壁打ち相手として有効**だが、敵対役ゆえBUILD寄りバイアスあり。鵜呑みにせず実測で裏取りする。
- **「計測手段が無いから実害が見えない」を、まず計測することで潰す**のが正攻法。grokの最も鋭い指摘だった。
- 自動cron化の再着手トリガー: 「instinct 30件超増加」または「古い/矛盾instinctで手戻りした実例」。それまでは手動スキャンで十分。
## 関連
- [[Memanto X学習 2026-06-06]](id=511) — 発端。型付き13カテゴリ・矛盾検出は本掃除の設計参考
- vvv-bots #300 AgentMemory評価枠と同じ「エージェント記憶」領域
instinct記憶の手動再統合スキャン実施記録 2026-06-06 — dreaming的掃除を「適量」で実行