veredicto について
veredictoは、開発成果が契約を満たすかを証拠とテストで確認するリード向けワークフローです。コード・テスト・契約のどこに不一致があるかを分類し、曖昧さは独断せず人に確認します。
主な機能
- 01パスの所有権と契約版の確認
- 02テスターのテストで開発コードを検証
- 03失敗をコード・テスト・契約に分類
- 04受け入れ基準のトレーサビリティ表作成
- 05疑わしいテストと未検証項目の報告
活用シーン
- 01作業契約に照らした納品物のレビュー
- 02テストと実装の不一致の整理
- 03Sprint 0の完了定義の検証
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ adminoryslabs/ armory --skill veredictoインストール後、Claude Code で/veredictoを入力して読み込まれたか確認します。
詳細
判定(v2)
目標
証拠に基づいて**「この作業単位は契約を満たしているか?」**に答え、満たしていない場合は
誰が逸脱したかを明らかにします。各結果には証拠、コマンド、またはファイル:行を添えます。それがない場合は
未検証とします。
v2 の新機能: 3つの判定結果とトレーサビリティマトリクス。
Sprint 0 では、
SPRINT0.mdを仕様として同じワークフローを適用します。Definition of Done の各項目は契約のケースに相当し、「契約に記載がなかった」という判定は「SPRINT0.mdに記載がなかった」と読み替えます。トレーサビリティマトリクスはDoDの表(項目 → 証拠 → 結果)に置き換え、レポートはinformes/VEREDICTO-SPRINT0.mdに記載します。TESTERが未実行としたテストは、ランナーが利用できるようになった今、実行します。
入力
- 仕様:
contratos/CONTRATO-<HU>.md(現行バージョン)またはSPRINT0.md。 - HU(マトリクス用:受け入れ基準)。
ENTREGA TESTERとENTREGA DEVのレポート。AGENTS.mdに記載されたパスの所有権マップ。- 作業ブランチとその開始点。
2つの提出物のどちらかが欠けている場合、判定は行いません。提出を待ちます。
ワークフロー
-
パスの所有権を確認する。
git log <base>..HEAD --name-only --format="%s"を実行し、コミットを プレフィックス([TESTER]/[DEV])ごとに分類して、AGENTS.mdのマップと照合します。担当者の パス外にあるファイルや、プレフィックスのないコミットは、すべて問題として記録します。すべてのテストに合格していても同様です。 -
両者が同じバージョンの契約に基づいて作業したことを確認する。 そうでなければ、判定は 無効です。作業が遅れている担当者に知らせます。
-
DEVのコードに対してTESTERのテストを実行する。 出力を保存します。
-
契約の各ケースについて結果を記録する: 🟢 / 🔴 /
未検証。該当ケースをカバーするテストを示します。 テストのない契約ケースは、緑ではなく未検証です。 -
契約を参照して🔴ごとに裁定する。 そのケースについて契約に何が書かれているか、テストが何を期待しているか、 コードが何をしているかを確認します。
- コードが逸脱した — テストは契約に一致しているが、コードが一致していない → ケース、契約からの引用、 証拠を添えてDEVに差し戻します。
- テストが逸脱した — コードは契約に一致しているが、テストが一致していない(名前、形式、契約が求めていないケース)→ 同じ情報を添えてTESTERに差し戻します。
- 契約に記載がなかった — 不完全または曖昧な契約を両者が妥当に解釈している → どのエージェントにも修正を求めません。 人間への質問を準備し、その回答を受けてLEADが契約 v2を発行し、両者に知らせます。 契約から逸脱した側が修正します。
-
落とし穴を監視し、すべて緑でも問題として報告します。
- 何も検証せずに合格するテスト(契約の記述に対するアサーションがない)。
- 特定のテストにだけ合格するための特別ケースを含むコード。
- 正当化する契約 v2 がないまま、合格させるために途中で変更されたテスト。
-
差し戻し回数を数える。 同じ不一致を3回目に差し戻すことはせず、人間にエスカレーションします。
-
トレーサビリティマトリクスを作成する:
受け入れ基準(HU) 契約のケース テスト 結果 - ケースまたはテストのない基準 → 未検証の項目として指摘します。
- HUの基準に対応しない契約ケース → その要件を必要としているか、事業側に確認する項目として指摘します。
-
判定を
informes/VEREDICTO-<HU>.mdに記載します。マトリクス、パスに関する問題、 裁定(判定結果 + 宛先 + 差し戻し回数N)、検出した落とし穴、未検証の項目、使用した契約のバージョンを含めます。 -
すべて緑の場合(または
未検証が人間によって了承された場合)、LEADはマトリクスと契約の最終バージョンを説明に記載してPRを作成します。
制約
- 判定に「合格」させるために、コードやテストを変更してはいけません。
- レポートの記述を鵜呑みにせず、検証します。
- 契約に書かれていないことをLEADが判断してはいけません。エスカレーションします。
- 何も公開してはいけません(mainへのpushも、mergeも不可)。