Skip to content

v0.11.0 — slice-tdd: outside-in が実装の各層に届く「契約先行の設計」に

Choose a tag to compare

@sei-newbear sei-newbear released this 05 Jul 06:11
· 138 commits to main since this release
Immutable release. Only release title and notes can be modified.

slice-tdd の outside-in が、ストーリーだけでなく実装の各層でも効く「契約先行の設計」になった。

ユーザー向け (= xp-harness を使う人)

Changed

  • slice-tdd: outside-in が実装の各層に届くようになった。これまで outside-in はストーリー階層(E2E から外→内)で効く一方、バックエンドの中では「データアクセス → ロジック → 入口」の順に組むボトムアップに流れがちだった。今回 outside-in を 「インタフェースを先に決める設計(各層で再帰する)」 と定義し直したことで、実装エージェントは各層でも "その層が外に見せる契約" を先に決めて内側に必要なものを surface させる方向に進む。=バックエンドの実装が、依存先行の "構築" でなく契約先行の "設計" になる。

開発者向け (= xp-harness を改修する人)

Added

  • harness-verification に compose sandbox モード (--compose): front (Vite) + api (Hono) + PostgreSQL の docker-compose フルスタック構成(api はクリーンアーキ 4 層、ロジック層 domain/usecase は vitest でユニットテスト、gateway/route は E2E で担保)。E2E は compose 起動で重く、slice-tdd の入れ子・契約先行・E2E の重さ規律を、文脈ゼロの別セッションで冷えた検証にかけられる。setup-sandbox.sh <name> --compose で作成(docker 必須)。

Install (新規 consumer 向け)

apm install sei-newbear/xp-harness#v0.11.0 --target claude

Update (既存 consumer 向け、v0.10.0 → v0.11.0)

apm.yml の依存指定を新バージョンに書き換える:

 dependencies:
   apm:
-  - sei-newbear/xp-harness#v0.10.0
+  - sei-newbear/xp-harness#v0.11.0

そのあと:

apm install --target claude
# Content hash mismatch が出たら (= APM のサプライチェーン検出機構、想定挙動)
apm install --update --target claude

詳細は README "Update" セクション参照。

Note

後方互換性あり。slice-tdd の発火条件・目的は変わらず、実装の進め方の質が向上した(特にバックエンド実装で outside-in の設計が各層に効く)。