docs: PLAN60 / PLAN61 / PLAN62 を確定仕様へ取り込む (#141, #146, #142, #196, #200, #185) - #210
Conversation
- 位置引数の解決(PLAN61 / #146 #142 #196 #200)を docs/specifications/cli-argument-resolution.md として新設。名前の形、 トップレベル build の解釈の順、build --help、container の除外、 Python 側 3 入口の検証、失敗の形を実装と照合して書いた - 機密の置き場の DEVBASE_ACCOUNT_GROUP(PLAN62 / #185)を docs/specifications/secret-backend.md へ取り込み、「注入の対象から外すかは #185 で扱う」「範囲外として起票した課題」といった実装前の記述を、 runtime.resolve が合成から外して警告すること・env set が拒むことへ書き替えた - CI で pytest を回すこと(PLAN60 / #141)は仕様書にせず、 docs/developer/contributing.md の「テスト」に CI が実行する内容を足した - 取り込んだ plan と設計文書を issues/old/ へ移した Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 1 | kiro | APPROVE
実装との照合レビュー。指摘なし。
cli-argument-resolution.md:bin/devbaseの_SINGLE_SEGMENT_NAME_RE・maybe_cd_project・_PROJECT_NAME_SUBCOMMANDS(up down ps logs scale rebuild open)・_NAME_RESOLVABLE_SHORTCUTS(up down ps scale login build rebuild open)・build_usage、lib/devbase/utils/names.py、cli._named_lifecycle_project、container._resolve_project_name/_build_single_image(エラー文言含む) と一致。buildの衝突通知の文言も実装と一致。secret-backend.md:runtime._without_account_group/_warned_account_group_refs/_account_group_delete_hintと、env.cmd_env_setのDEVBASE_ACCOUNT_GROUP拒否(置き場を開く前・前後空白 strip 後に比較)の挙動・文言と一致。contributing.md:.github/workflows/ci.ymlの compileall(3.10/3.11/3.12)・ruff check --select=E9,F63,F7,F82 lib・bin/+install.shの ShellCheck・uv sync --locked後の pytest(3.10/3.13) と一致。issues/→issues/old/のリネーム: 移動した PLAN60/61/62 への外部参照(コード/CI/docs)なし。相互リンクは相対名で同ディレクトリ内に閉じており破綻なし。editor-open.mdから新規仕様への相対リンクも解決可能。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 2 | codex | REQUEST_CHANGES
修正が必要な記述を1件指摘します。
名前の解決は現在地を見ず、$DEVBASE_ROOT/projects/<値> の実在だけを見る。 「対象プロジェクトのディレクトリの中で実行する」では回避できないため、 名前解決を通らない `devbase project login <index>` と、名前を明示する `devbase project scale <name> <N>` へ置き換える。 docs/user/cli-reference/02-project.md にも同じ誤りがあったため揃える。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
🔧 /ndf:fix サマリ対応件数: critical=0 / major=0 / minor=1 (合計 1 件) 詳細
残る未解決スレッド0 件。 |
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 3 | codex | REQUEST_CHANGES
仕様と実装の不一致について、文書の修正を 1 件指摘します。
`projects/` の外へ cd せず env も読まない、という断定を、位置引数に `..` や `/` を含めて `projects/<name>` の外を指すことを拒む範囲へ限定する。 `projects/<name>` はプラグインの同期が張るシンボリックリンクであることが多く (`ls -l $DEVBASE_ROOT/projects` で確認: adminer → ../repos/github.com--devbasex-- devbase-samples/adminer/projects/adminer など)、`maybe_cd_project` の `cd` と Python の `os.chdir` はリンクを辿って実体へ移動し、そこの `env` を読む。これは 登録済みプロジェクトを扱うための意図した動きで、この計画は変えていない。その旨 を「リンクの先は対象外」として仕様に明記した。 docs/user/cli-reference/02-project.md の同じ断定も合わせて正す。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
🔧 /ndf:fix サマリ(cross-review 最終スイープ)対応件数: critical=0 / major=0 / minor=1 (合計 1 件) 詳細
検証Markdown のみの変更で、リポジトリの検証( 残る未解決スレッド0 件。 |
Summary
マイルストーン v3.6.0 でマージした 3 つの plan を、実装と一致する確定仕様へ書き直す。
docs/specifications/cli-argument-resolution.md(新設):bin/devbaseと Python 側の位置引数の解決(名前の形・buildの衝突・build --help・containerグループ)docs/specifications/secret-backend.md: 機密の置き場のDEVBASE_ACCOUNT_GROUPを注入しない挙動を反映し、機密の置き場に書いた DEVBASE_ACCOUNT_GROUP が注入でプロセスへ載り、ボリュームのグループを変えうる #185 を未決の課題として書いていた箇所を実態へ書き替えるdocs/developer/contributing.md: CI が実行する内容に pytest を足すissues/old/へ移動Test plan
bin/devbase/lib/devbase/utils/names.py/lib/devbase/env/runtime.py/lib/devbase/commands/env.py)と照合した🤖 Generated with Claude Code