ops(PLAN57): この端末の機密をアカウントグループ別の置き場へ移し直した実行の記録 (#182) - #187
Conversation
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 1 | kiro | APPROVE
operation の実行記録として自己完結している。各単位にコマンド・出力・終了コード・取り消し手段がそろい、受け入れ条件 1〜5 が記録の出力(env backend status / env exec の差分表 / 別経路の bao kv get のキー数 22/25/17/17/1×5 / metadata get の終了コード 2)と対応している。機密の値・role_id / secret_id / token の漏れは無く(status の role_id は伏せ、BAO_TOKEN は変数経由)、取り消せない単位 4 は承認取得を明記。差分は当該 1 ファイルのみで backups/plan57/ の生成物は混入していない。修正を要する指摘は無い。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 1 | agy | APPROVE
指摘事項はありません。機密情報の非表示、各実行単位のコマンド・出力・終了コード・取り消し手段、および受け入れ条件の検証記録が整合していることを確認しました。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 2 | kiro | COMMENT
数値(キー数 22/25/17、届かなくなるキーの件数 21/22、17 キー一覧)は相互に整合し、機密の値・role_id・secret_id・token の漏れは無く(受け入れ条件 5 の grep 条件行と role_id [伏せた] のみ)、取り消せない単位 4 は承認取得を記録済みで問題ありません。1 点、GOOGLE_CLOUD_LOCATION の届かなくなるキー表と単位 3 の検証結果の整合について、該当行にインラインで修正提案を残しました。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 2 | codex | REQUEST_CHANGES
仕様適合: 確定仕様の巻き戻しを除き、受け入れ条件 2 の達成判定を実測と整合させてください。
docs/specifications/secret-backend.md:508 [major / 正確性] この変更で確定仕様が「version は 1 だけ」に戻り、実装済みのグループ別パス・設定・運用手順も削除されていますが、backend_config.py は引き続き version 2 を受け付け、本 PR 自身も version 2 への切り替えを記録しています。PLAN56 で確定した仕様を維持するため、このファイルの巻き戻しを差分から除いてください。
issues/PLAN57_secret-group-relocation.md:257 [major / 検証] 受け入れ条件 2 は対象キーの値が env exec の出力に無いことを要求していますが、236〜237 行では対象の GOOGLE_CLOUD_LOCATION がホスト由来で残ったと記録されており、このままでは「満たす」と判定できません。ホストからの継承を除いた再検証結果を記録するか、継承値を許容する条件へ変更した根拠を明記し、受け入れ条件と PR 本文の達成判定を実測に合わせてください。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 2 | codex | REQUEST_CHANGES
受け入れ条件 2 の判定と実行結果の不一致について、修正を 1 件指摘します。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 3 | codex | REQUEST_CHANGES
受け入れ条件 2 の根拠となる再検証記録を、実測の終了コードと整合させてください。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 3 | agy | COMMENT
総評
アカウントグループ別の機密移し直しと古いパスの削除、および受け入れ条件の検証結果が適切に記録されていることを確認しました。再検証コマンドの終了コード表記について 1 点インラインで修正提案を記載しています。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 4 | kiro | APPROVE
キー数(21+1=22 / 26−1=25 / 17 / 17)と単位 3 の行差分(with-ai-dev 106→85=21・project-trygroup-prd 106→84=22・bi-tools 差分 0)が「配る先」「届かなくなるキー」の表と整合。機密の値・token・role_id/secret_id の露出なし(role_id は伏せ字)。単位 4 は取り消し不可として承認記録あり。round 4 で追記された GOOGLE_CLOUD_LOCATION の再検証(env -u でホスト値を外して判定)は child_env が os.environ を基底に機密を重ねる実装と整合し、置き場から届かなくなったことを正しく確かめている。修正を要する点は見当たらない。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 4 | agy | APPROVE
PLAN57 の計画・設計・実行記録・受け入れ条件の検証結果を確認しました。修正を要する問題は見当たらず、承認します。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
a2498e8 to
b03c12e
Compare
Summary
PLAN56(#184)の配布後に、この端末の機密を OpenBao のアカウントグループ別の置き場へ移し直し、古いパスを版の履歴ごと消した
operationの実行の記録。コードは変えない。issues/PLAN57_secret-group-relocation.md(計画・設計の節・単位 0〜4 の記録)identity_policiesとbao token capabilitiesで権限を確かめてから実行したversion: 2(default → nyle)。with / kkg のプロジェクトへ nyle のチーム共通と会社固有の個人のキーが届かなくなった(with 21 件 / kkg 22 件)。nyle のプロジェクトは差分 0 行Test plan
受け入れ条件(記録の「受け入れ条件」):
env backend statusがレイアウト: group (version 2)、$DEVBASE_ROOTでdefault → nyle、projects/with-ai-devでwith (projects/with-ai-dev/env)(exit=0)env exec -- envの比較: with-ai-dev / project-trygroup-prd で「届かなくなるキー」が無く値の変わった変数 0 件、bi-tools は基準と差分 0 行(exit=0)bao kv getで新しい 9 パスのキー数が表と一致(22 / 25 / 17 / 17 / 1×5、exit=0)bao kv metadata getがNo value found(exit=2。対照のteam/nyle/globalは読める)hvs./secret_id=/role_id=が無い(条件の行を除いて grep 0 件)。statusのrole_idは伏せた🤖 Generated with Claude Code