| name | eld-record-maintenance |
| description | PCE (Process Context Engine) のメンテナンススキル。現存する Claim の品質を維持し、 間違い・不要・古い・重複した Claim を整理する。pce_memory_feedback を使用して 更新・削除・評価を行う。メモリの健全性を保ちたい場合、Claim の品質問題を発見した場合、 定期的なメモリ整理を行いたい場合に使用する。 Observation 収集、AC の構築、タスクごとのメモリ最適化は行わない。 |
PCE Maintenance Skill
概要
PCE Maintenance は、pce-memory に保存された Claim の品質を維持・改善するためのスキルである。
このスキルの責任範囲
行うこと:
- Claim の品質評価(正確性、関連性、鮮度)
- 問題のある Claim の特定と修正
- 重複 Claim の検出と統合
- 古い/無効な Claim の削除
- feedback を通じた Claim の評価記録
行わないこと:
- Observation 収集(Collection Skill に委譲)
- AC の構築(Activation Skill に委譲)
- タスクごとのメモリ最適化
メンテナンス対象の問題タイプ
1. 不正確な Claim(Incorrect)
事実と異なる、または誤った情報を含む Claim。
例:
# 不正確な Claim
text: "認証には Firebase を使用している"
# 実際は AWS Cognito を使用
対応: 修正または削除
2. 古い Claim(Outdated)
以前は正しかったが、現在は適用されない情報。
例:
# 古い Claim
text: "状態管理には Redux を使用する"
# ADR-0009 で XState に移行済み
対応: 削除または SUPERSEDES 関係で置換
3. 重複 Claim(Duplicate)
同じ内容を異なる表現で記述した複数の Claim。
例:
# Claim A
text: "pnpm のみ使用する"
# Claim B(重複)
text: "パッケージマネージャーは pnpm を使用"
対応: 統合して1つに
4. 不要な Claim(Unnecessary)
価値が低い、または他の Claim に包含される情報。
例:
# 不要な Claim(より具体的な Claim が存在)
text: "TypeScript を使用している"
# 既に "TypeScript 厳密モード、any 禁止" が存在
対応: 削除
5. 矛盾する Claim(Contradictory)
互いに矛盾する複数の Claim。
例:
# Claim A
text: "console.log を使用する"
# Claim B(矛盾)
text: "console.* は禁止、logger.* を使用"
対応: 正しい方を残し、他を削除
メンテナンスワークフロー
Step 1: Claim の一覧取得
pce-memory から現在の Claim を取得する:
pce_memory_activate({
goal: "現在のすべての Claim を確認"
})
Step 2: 問題の検出
各 Claim について以下を確認する:
問題検出チェックリスト:
├─ 正確性: 現在の事実と一致するか?
├─ 鮮度: 情報は最新か?
├─ 重複: 同様の Claim が他にないか?
├─ 価値: この Claim は必要か?
└─ 一貫性: 他の Claim と矛盾しないか?
Step 3: 問題の分類
検出した問題を分類する:
| 問題タイプ | 緊急度 | 推奨アクション |
|---|---|---|
| 不正確 | 高 | 即時修正または削除 |
| 矛盾 | 高 | 解決して片方を削除 |
| 古い | 中 | SUPERSEDES で置換または削除 |
| 重複 | 中 | 統合 |
| 不要 | 低 | 削除検討 |
Step 4: feedback の送信
pce_memory_feedback を使用して評価・修正を行う:
4.1 肯定的評価(Claim が有用な場合)
pce_memory_feedback({
claim_hash: "sha256:abc123...",
signal: "positive",
note: "この Claim は現在も正確で有用"
})
4.2 否定的評価(問題がある場合)
pce_memory_feedback({
claim_hash: "sha256:def456...",
signal: "negative",
note: "ADR-0009 により XState に移行済み。この Claim は古い"
})
4.3 削除要求
pce_memory_feedback({
claim_hash: "sha256:ghi789...",
signal: "delete",
note: "重複: sha256:xyz... と同一内容"
})
Step 5: 修正 Claim の作成(必要な場合)
古い Claim を置き換える新しい Claim を作成:
pce_memory_upsert({
text: "状態管理には XState を使用する(ADR-0009)",
kind: "policy_hint",
scope: "project",
boundary_class: "internal",
content_hash: "sha256:...",
provenance: {
at: "2025-01-15T16:00:00Z",
actor: "claude-code",
note: "旧 Redux 方針を置換"
}
})
# 置換関係を登録
pce_memory_upsert_relation({
id: "rel-xstate-supersedes-redux",
src_id: "claim-xstate-policy",
dst_id: "claim-redux-policy",
type: "SUPERSEDES"
})
メンテナンスパターン
パターン A: 単純削除
明らかに不要または不正確な Claim を削除する。
手順:
- 問題の Claim を特定
- 削除理由を記録
- feedback で削除要求
例:
# 不正確な Claim を削除
pce_memory_feedback({
claim_hash: "sha256:...",
signal: "delete",
note: "事実と異なる: Firebase ではなく Cognito を使用"
})
パターン B: 置換(Supersede)
古い Claim を新しい Claim で置き換える。
手順:
- 新しい Claim を作成
- SUPERSEDES 関係を登録
- 古い Claim に negative feedback
例:
# 1. 新しい Claim を作成
pce_memory_upsert({
text: "認証には AWS Cognito を使用(Cognito sub を ID として使用)",
...
})
# 2. 置換関係を登録
pce_memory_upsert_relation({
src_id: "claim-cognito",
dst_id: "claim-firebase",
type: "SUPERSEDES"
})
# 3. 古い Claim に negative feedback
pce_memory_feedback({
claim_hash: "sha256:...",
signal: "negative",
note: "SUPERSEDED by claim-cognito"
})
パターン C: 統合(Merge)
重複する複数の Claim を1つに統合する。
手順:
- 統合した新しい Claim を作成
- 元の Claim すべてに SUPERSEDES 関係
- 元の Claim に negative feedback
例:
# 重複 Claim A
text: "pnpm を使用する"
# 重複 Claim B
text: "npm は禁止"
# 統合後
text: "パッケージ管理は pnpm のみ使用(npm 禁止)"
パターン D: 矛盾解決
矛盾する Claim を調査し、正しい方を残す。
手順:
- 矛盾の原因を調査(どちらが正しいか)
- 正しい Claim に positive feedback
- 誤った Claim に delete feedback
- CONTRADICTS 関係があれば削除
例:
# 正しい Claim を確認
pce_memory_feedback({
claim_hash: "sha256:correct...",
signal: "positive",
note: "CLAUDE.md で確認: logger.* 使用が正しい"
})
# 誤った Claim を削除
pce_memory_feedback({
claim_hash: "sha256:wrong...",
signal: "delete",
note: "矛盾解決: console.log 使用は誤り"
})
パターン E: 品質向上
正確だが不完全な Claim を改善する。
手順:
- 既存 Claim の問題点を特定
- 改善した新 Claim を作成
- SUPERSEDES 関係で置換
例:
# 既存(不完全)
text: "Cognito を使用"
# 改善版
text: "認証には AWS Cognito を使用。Cognito sub (UUID) を安定識別子として使用、username は使わない"
定期メンテナンスガイド
日次チェック(推奨)
- 新規追加された Claim の品質確認
- session スコープ Claim の有効性確認
週次チェック
- 重複 Claim の検出と統合
- 低評価 Claim のレビュー
月次チェック
- 全 Claim の鮮度確認
- 未使用 Claim の特定と削除検討
- Entity/Relation の整合性確認
feedback シグナルの使い分け
| シグナル | 用途 | 効果 |
|---|---|---|
positive |
Claim が有用・正確 | 優先度向上 |
negative |
Claim に問題あり | 優先度低下、レビュー対象 |
delete |
Claim を削除すべき | 削除候補としてマーク |
品質指標
Claim の健全性指標
| 指標 | 良好 | 要注意 | 問題 |
|---|---|---|---|
| 正確性 | 100% | 95-99% | <95% |
| 重複率 | 0% | 1-5% | >5% |
| 鮮度(30日以内更新) | >80% | 50-80% | <50% |
| 矛盾 | 0件 | 1-2件 | >2件 |
メンテナンス完了基準
- すべての矛盾が解決済み
- 重複 Claim なし
- 明らかに不正確な Claim なし
- 古い Claim に適切な対応済み
注意事項
- 慎重な削除: 削除前に必ず影響を確認。他の Claim や Relation が参照していないか
- 証跡の保持: feedback の note に必ず理由を記録
- 段階的対応: 大量の問題がある場合は優先度順に対応
- 可逆性の確保: 可能な限り SUPERSEDES を使用し、削除は最終手段
関連リソース
references/feedback_guide.md- feedback の詳細ガイドreferences/quality_criteria.md- 品質評価基準の詳細