ルールリビジョンの revert
メソッド
この API は REST の方法論に従います。
HTTP メソッド
POST: 既存のデザインルールリビジョンを、プロジェクトの アクティブ なものとしてピン留めします。
リビジョンはイミュータブルであり、ロールバックも削除も行われません。revert は ポインタ を動かします — ワーカーが参照するアクティブリビジョンポインタを設定し、次回の生成が最新ではなく選択したリビジョンをピン留めするようにします。
命名規則
リクエストボディは camelCase です。レスポンスは内部の wf2des-api データプレーンから 逐語でプロキシ されるため、フィールドは snake_case です。
リクエストとレスポンス
ヘッダー
リクエストヘッダー
AuthorizationContent-TypeAcceptAccept-language
レスポンスヘッダー
Content-Type
ルールの revert
URI
パスパラメータ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
| organization_id | integer | 必須 | 組織 ID |
| project_id | integer | 必須 | プロジェクト ID |
リクエストボディ
リクエストボディは JSON です。
リクエストパラメータ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
| designRuleId | string | 必須 | ピン留めするリビジョンの design_rule_id。 |
| version | integer | 必須 | アクティブにするリビジョンのバージョン。正の整数。 |
この組は 既存の リビジョンを指す必要があります — 選択候補の一覧は GET …/wf2des/rules/revisions を参照してください。
レスポンス
レスポンスは JSON です(HTTP ステータス: 200 OK)— アクティブになったリビジョンのサマリで、GET …/wf2des/rules/latest が返すものと同じ形状です。
{
"design_rule_id": "0190f3a1-2c4e-7b8d-9e0f-1a2b3c4d5e6f",
"version": 3,
"content_hash": "b1946ac92492d2347c6235b4d2611184",
"draft_source": "llm_extracted",
"extracted_at": "2026-07-28T11:02:00Z",
"processed_at": "2026-07-28T11:02:06Z"
}
レスポンスフィールド
| 名前 | 型 | 説明 |
|---|---|---|
| design_rule_id | string | null | アクティブになったリビジョンが属する系列。 |
| version | integer | null | 現在アクティブなバージョン。 |
| content_hash | string | null | そのリビジョンのマージ済みルールセットのハッシュ。 |
| draft_source | string | null | リビジョンの生成方法。 |
| extracted_at | string | null | 抽出が実行された時刻。 |
| processed_at | string | null | リビジョンが作成された時刻。 |
新規アップロードとの関係
revert は 恒久的ではありません。POST …/wf2des/rules でガイドラインボードをアップロードするとポインタは解除されます — 新規アップロードは「これが現行である」という意図的な操作だからです。アップロード後は、以前に何がピン留めされていたかにかかわらず、最新リビジョンが再びアクティブになります。
revert は冪等です。既にアクティブなリビジョンをピン留めした場合も、同じサマリとともに 200 を返します。
認証
認証は Amazon Cognito が発行する JSON Web Token(JWT)で行われます。加えて、呼び出し元はプロジェクトへの Write 権限を保持している必要があります。
エラーハンドリング
| 説明 | ステータスコード | ステータス名 |
|---|---|---|
不正なボディ(designRuleId の欠落/空、version の欠落または正の整数でない) |
400 | Bad Request |
| 認証情報の欠落 | 401 | Unauthorized |
| 権限不足(プロジェクトへの Write 権限なし) | 403 | Forbidden |
指定された (designRuleId, version) のリビジョンが存在しない |
404 | Not Found |
| 上流の書き込み失敗(wf2des-api) | 500 | Internal Server Error |
処理フロー
- パスパラメータから組織 ID とプロジェクト ID を、リクエストボディから
designRuleIdとversionを取得する。 - ユーザーがプロジェクトへの Write 権限を持つことを検証する。
- 組織とプロジェクトにスコープした上で、内部 wf2des-api データプレーンへ書き込みをプロキシする(
X-AI-Service-Token)。 - データプレーンは対象の
(design_rule_id, version)リビジョンが存在することを検証する。存在しない場合は 404 を返し、ポインタは書き込まれない。 - ワーカーのルール解決が参照する可変のアクティブポインタ文書を upsert する。
- アクティブになったリビジョンのサマリを返す。
対象リビジョン自体は決して変更されません — 変わるのはポインタのみであり、これによりリビジョン履歴が真正な監査証跡であり続けます。