v2.47.0
追加
- tier-routing 機械適用(フェーズ3): 新規 PreToolUse hook
tier_autoapply.pyが、model:無指定の developer / wt_developer 起動に推奨 Tier をupdatedInputで自動注入します。- 従来のソフト適用(親への指示 honor system)が持っていた「サイレント非遵守」リスクを構造的に解消
- 明示指定は尊重(無指定時のみ注入・fork は対象外)
- 注入の有無に関わらず実適用値を
.claude/state/tier_autoapply.jsonlに機械記録(適用者=記録 SSOT)。学習記録の tier 解決はこの applied-state を優先して読み、LLM の自己申告を排除 - kill-switch:
C3_TIER_AUTOAPPLY_DISABLE=1/ fail-safe: 全例外で素通り
- 学習記録の欠落検知(P3): 新規
tier_gap_check.pyが Stop 時に「起動 N 件 vs outcome 記録 M 件」を突合し、欠落の可能性を stderr 警告(警告のみ・副作用なし・誤検知抑止の減算ルール付き)
修正
select_tier.pyの prompt_prefix マスク順序を是正(pre-existing): 200字境界をまたぐ PEM 等の秘密情報がtier_selection.jsonにすり抜けて保存され得た問題をマスク→切り詰め順で解消
変更
- SKILL.md から developer 起動時の手動
model:指定手順とエスケープハッチを撤去(hook が自動適用・記録)
後方互換
- 全て additive・kill-switch で従来動作へ即時復帰可能・破壊的変更なし
詳細は CHANGELOG.md を参照。