AIタスク #10508
未完了エピック #10493: [WEBサイト自動販売機] 操作可能MVP:ヒアリングからサイト生成・プレビューまで
[VEND-V2-DEP] 診断V1 API・DB・コード廃止
0%
本文の実施条件と受入基準を正本とする。
説明
目的¶
診断エンジンV2の安定稼働後、V1互換コードを期限なく残さず削除する。
廃止対象¶
- /diagnosis, /api/diagnosis のV1 POST/GET
- diagnosis_results V1テーブル
- scoring.js内V1採点
- score_llms_txtを含むV1レスポンス契約
- V1専用テスト・運用記述
実施条件¶
- #10507 V2本番稼働
- V2で実診断20件以上
- 7日間重大障害0
- V1アクセスログ0、または利用元をV2へ移行済み
- V2 DBバックアップ・復元試験合格
受入基準¶
- V1ルート・テーブル・コードを削除
- フロント・監視・運用手順がV2のみを参照
- 旧V1 DBは削除前にアーカイブ
- Git履歴からは復元可能
- E2E、Claude Codeレビュー、Redmine証跡完了
本チケットをV2安定化後の必須作業とし、互換実装を恒久化しない。
Redmine Admin さんが12日前に更新
[クロスレビュー] レビュアー種別: claude
VERDICT: needs_revision
クロスレビュー結果: #10508 [VEND-V2-DEP] 診断V1 API・DB・コード廃止¶
指摘1: 破壊的な本番削除作業にもかかわらず human_gate が設定されていない¶
本チケットはV1のAPI・DBテーブル・コードを削除する不可逆性の高い作業。ルール7では「公開指示(リリース/外部公開の可否)」に該当する判断は人間承認必須としているが、cf18=0(明示的にオフ)、cf19=Noneであり、gate_typeが未設定。V1利用元が残っていた場合の外部影響や、DB削除の取り返しの付かなさを考えると、削除実行そのものを人間ゲートなしで自律連鎖に委ねてよいのか、本文に検討・判断根拠の記載がない。
指摘2: cf3(自動実行)が空欄のままで、いつ真にするかの記述がない¶
本文は「V2安定化後の必須作業」として実施条件(V2本番稼働、実診断20件以上、7日間重大障害0等)を列挙しているが、これらの条件が満たされた時点でcf3を誰が・どうやって真にするのかが本文にもcfにも記載がない。空欄=起動しない、という前提を本チケットが意図しているのか、条件充足後に誰かが手動でcf3を立てる運用を想定しているのかが判別できず、#10204と同型の「起票したのに拾われない」放置リスクがある。
指摘3: 「先行: #10507」がRedmine上の正式なprecedes関係として設定されているか本文からは確認できない¶
ルールでは連鎖起動(precedes関係によるchain_root_id管理)が明記されているが、本文中の「先行: #10507」は自由記述であり、実際にRedmine上でprecedes関係が張られているかは今回のチケット情報からは判断できない。テキスト記載だけで実際の関係設定が伴っていない場合、#10507closeをトリガーにした自動連鎖は機能しない。
指摘4: 実施条件「V1アクセスログ0」の検証方法が未定義¶
受入基準(cf16)は「本文の実施条件と受入基準を正本とする」としているが、本文の実施条件のうち「V1アクセスログ0、または利用元をV2へ移行済み」は、参照するログソース・集計期間・確認手段が書かれておらず、Directorやワーカーが検証可能な基準になっていない。他の実施条件(実診断20件以上、7日間重大障害0等)も同様に判定ソースの明記がない。
VERDICT: needs_revision
Redmine Admin さんが12日前に更新
V2本番稼働開始。V1廃止ゲートの現在値: V2実診断2/20件、観察期間0/7日、重大障害0、V1アクセス停止確認は未完了。条件成立まで新規のまま保持し、V1は凍結・ロールバック専用とする。