Skip to content

docs(PLAN62): 機密の置き場に書いた DEVBASE_ACCOUNT_GROUP を注入しない要求仕様と設計 (#185) - #205

Merged
takemi-ohama merged 2 commits into
mainfrom
design/plan62-inject-account-group
Sep 19, 2026
Merged

takemi-ohama merged 2 commits into
mainfrom
design/plan62-inject-account-group

Conversation

@takemi-ohama

@takemi-ohama takemi-ohama commented Sep 18, 2026 •

Copy link
Copy Markdown
Contributor

Summary

機密の置き場(.env / age / OpenBao)に書いた DEVBASE_ACCOUNT_GROUP が注入でプロセスへ載り、ボリュームのアカウントグループを変えうる件(#185)の設計。version: 1 の挙動も変わる。

決めたこと

issues/PLAN62_inject-account-group-design.md

  • 決定 1: 外す場所は resolve の 4 つの読み取りの直後の 1 か所にする
  • 決定 2: version: 1 でも外す
  • 決定 3: 置き場の値は消さず、警告で知らせる
  • 決定 4: 警告の重複抑止は、置き場の参照を鍵にしたモジュールの集合で、プロセスの寿命だけ持つ
  • 決定 5: 消し方の引数は参照から組み、グループを持つ参照には常に --group を付ける
  • 決定 6: 重ね順 3(_project_env_overrides)は変えない
  • 決定 7: env set は置き場を開く前に拒否する
  • 決定 8: 受け入れ条件 6 は、注入と食い違いの検査を実際の順に呼ぶ単体テストで確かめる

Test plan

  • 設計の前提をコードで確かめた: inject / child_env / コンテナへ列挙する names がすべて runtime.resolve の結果から作られること、重ね順 4・5(プロジェクトの置き場)が重ね順 3(projects/<name>/env)に勝つことを既存テスト tests/env/test_runtime.py が固定していること
  • document-restructuring を通した(平均文長 45.4 → 41.8 字、最長文 199 → 107 字)

🤖 Generated with Claude Code

@takemi-ohama takemi-ohama left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 cross-review | round 1 | kiro | APPROVE

設計・要求とも、実コード(env/runtime.py の resolve/inject/child_env、secret_store.py の SecretRef.label、commands/env.py の cmd_env_set/cmd_env_delete、commands/container.py の _check_group_consistency)および既存ドキュメント(docs/user/environment-variables.md・env-backend.md)と照合し、記述に矛盾・存在しないパス・実装と食い違う主張は確認できませんでした。修正を要する指摘はありません。

@takemi-ohama takemi-ohama left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 cross-review | round 1 | agy | APPROVE

機密置き場からの DEVBASE_ACCOUNT_GROUP 注入除外および env set での拒否に関する要求仕様・設計・テスト計画ともに既存実装・仕様と整合しており、問題ありません。

@takemi-ohama takemi-ohama left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 cross-review | round 2 | codex | REQUEST_CHANGES

修正が必要な指摘は1件です。

Comment thread issues/PLAN62_inject-account-group-design.md Outdated

@takemi-ohama takemi-ohama left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 cross-review | round 2 | kiro | COMMENT(intent)

設計の技術的前提(resolve が inject/child_env/SecretEnv.names の唯一の合流点であること、重ね順 4・5 が 3 に勝つこと、resolve_account_group が DEVBASE_ACCOUNT_GROUP のみを読むこと、参照先パス・テスト名)はコードと照合して正しい。修正提案は 1 点のみ。設計判断そのものは妥当で、承認可能な内容。

Comment thread issues/PLAN62_inject-account-group.md Outdated
@takemi-ohama

Copy link
Copy Markdown
Contributor Author

🔧 /ndf:fix サマリ(最終スイープ)

対応件数: critical=0 / major=0 / minor=1(合計 1 件)
deferred: 0 件 / rejected: 1 件(出典の指摘。ただし出典の書き方は小節名まで明示)
commit: d41ea4d
CI: SUCCESS

詳細

  • issues/PLAN62_inject-account-group-design.md:111 と決定 7: version: 1 では dispatch 前の注入が置き場を読む(env set は _NO_SECRET_INJECTION に無い)。これに合わせ、拒否の処理が起こさないもの(書き込み・ファイル作成・fresh)と起こりうる読み取りを分けて書いた → resolved
  • issues/PLAN62_inject-account-group.md:27: environment-variables.md 277 行に記述がある(rejected)。前提 1 の出典は小節名まで明示した → resolved

@takemi-ohama
takemi-ohama merged commit 18ad195 into main Sep 19, 2026
5 checks passed
@takemi-ohama
takemi-ohama deleted the design/plan62-inject-account-group branch September 22, 2026 20:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant