v0.17.0 — レビュアーへの渡しもれと対話原則の呼び忘れを塞ぐ
·
21 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
レビュアーへの渡しもれと対話原則の呼び忘れを、interface と動線の両方で塞いだ
ユーザー向け (= xp-harness を使う人)
Added
- 要件定義・基本設計が、対話モードに入った時点で
dialogue-principlesを呼ぶようになった。これまでは対話原則の発火が「skill 自身の説明文が状況にマッチするか」だけに頼っており、要件対話の入口で呼ばれないことがあった (実測: 同一条件で発火 0/3)。対話モードに入る 3 つの経路 (モードを対話で合意したとき / 依頼者がいきなり議論を始めたとき / 基本設計フェーズを開始したとき) それぞれで呼ぶようになり、1 問ずつ・段階的に開示する・迎合しないといった対話の規律が、対話の最初から効く - レビュアー / 検証エージェント (
code-reviewer/e2e-reviewer/pre-implementation-reviewer/done-verifier) を呼ぶとき、要件定義・基本設計のパスを渡すことが呼び出し規約として明示された。呼ぶ側はエージェントの説明文だけを見て委譲を判断するため、渡す前提が書かれていないとパスなしで呼んでエージェントが手探りで探すことになる。今後はレビュー・検証が対象文書に確実に接地する
Changed
- 主要 skill の説明文が短くなった (
git-workflow/define-requirements/dialogue-principles/story-slicing/slice-tdd/propose-options)。エージェントに読み込まれる skill 一覧には文字数の上限があり、skill が増えるほど末尾から削られる。責務と発火タイミング、発火しない条件を保ったまま各説明文を圧縮したので、skill が増えても発火判断に効く情報が残りやすくなる git-workflowの説明文から特定コマンド名の言及がなくなった。Git 一般の概念 (branch / commit / push / rebase 等) での表現に統一。運用ルール自体は skill 本文に残っているので振る舞いは変わらない- skill の設定ブロックが厳密な YAML として読める形になった (
define-requirements/slice-tdd)。説明文に含まれるコロンで解析が失敗する状態だったため、Claude Code 以外の配布先で読み込めない可能性があった
開発者向け (= xp-harness を改修する人)
Added
harness-verification: 検証セッションのモデルを指定できるようになった (claude-launcher.sh launch --model)。発火はモデル依存で、上位モデルは弱い説明文を推論で補ってしまうため、検証条件としてモデルを固定できる必要がある- 検証記録にモデル ID が必須項目になった (
references/README.md+validate-verifications.sh)。記録にモデルがないと後から比較・再現ができない。既存 2 記録は「未記録」で backfill - description 純化の検証記録 (
references/2026-07-20_description純化.md) — 新旧の前後比較・2 モデル・計 18 有効ランの条件と結果、および検証手順上の失敗 (実行中スクリプトの編集、質問ウィジェットの自動回答による無効化など) を再現レシピ付きで記録
Changed
- かんばんに「対話の型の重複と矛盾の整理」を追加 (backlog)。
dialogue-principlesと要件定義・基本設計の「対話の型」で、クローズな選択肢の既定値が逆向きに矛盾している。今回の動線追加で両者が毎回同居するようになり顕在化した
Install (新規 consumer 向け)
apm install sei-newbear/xp-harness#v0.17.0 --target claudeUpdate (既存 consumer 向け、v0.16.0 → v0.17.0)
apm.yml の依存指定を新バージョンに書き換える:
dependencies:
apm:
- - sei-newbear/xp-harness#v0.16.0
+ - sei-newbear/xp-harness#v0.17.0そのあと:
apm install --target claude
# Content hash mismatch が出たら (= APM のサプライチェーン検出機構、想定挙動)
apm install --update --target claude詳細は README "Update" セクション参照。
Note
後方互換あり。skill / エージェントの責務・発火条件は変わっておらず、説明文の圧縮と呼び出し動線の追加のみ。振る舞いに回帰がないことは、新旧の前後比較検証 (実装フェーズの自走・要件定義から実装までの通し・ゴール渡し自走を含む計 18 ラン、claude-opus-4-8 / claude-sonnet-5) で確認している。