Issue 34 Orca-like 検討 + Orca/SSH 連携の削除#87
Conversation
- issues/i34-orcalike.md: devbase 独自 Orca-like 構成の検討(CLI + 単一 window VS Code Extension 二層)。レビュー反映として削除順序の後置、Windows 移行、 LSP trade-off、metadata 分割を追記。 - issues/i34.md: 元 issue。 - issues/PLAN32_multi-repo-project.md / i32.md: multi-repo project 検討メモ。 Orca relay 焼き込み(containers/base/Dockerfile の Node 24 固定 + COPY、 README-orca-relay.md、.gitignore の orca-remote-prebuilt/ 除外)と orca-windows-handoff.md は本 PR から除外(revert / 削除)。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
afd0390 to
b9e6958
Compare
Issue 34 の方針(issues/i34-orcalike.md §3.1)に従い、コンテナへ入るための SSH server を削除する。docker exec 経路へ一本化する準備。 - Dockerfile: openssh-server の install と Orca 向け sshd_config 生成を削除。 - entrypoint.sh: ENABLE_SSH ブロック(host key 永続化・authorized_keys 展開・ sshd 起動)を削除。 Git host 接続用の SSH client (~/.ssh symlink / /persistent/ai/.ssh) は別機能の ため残す。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Issue 34 の方針(issues/i34-orcalike.md §3.1)に従い、コンテナへ入るための SSH server とその Orca 専用連携を docker exec 経路へ一本化するため一括削除する。 先行コミットで base image の sshd install/起動は削除済み。本コミットで残りを除去。 削除: - lib/devbase/commands/orca.py(devbase orca sync/prune/status) - lib/devbase/env/collectors/orca.py(SSH 公開鍵 collector・自動検出登録) - lib/devbase/volume/ports.py(SSH publish ポートの決定的算出) - compose.py: :22 publish・SSH ポート衝突回避・専用ラベル(dev.devbase.ssh/index/user) - container.py: up/down/scale の Orca 同期/剪定フック - cli.py / bin/devbase: orca コマンドの parser・dispatch・補完 - keys.py: ENABLE_SSH / DEVBASE_SSH_BIND / DEVBASE_SSH_PORT_BASE / SSH_AUTHORIZED_KEYS / DEVBASE_ORCA_HOSTNAME / DEVBASE_ORCA_USER - docs/user/orca.md と README/docs の Orca 参照 - 関連テスト(test_orca / test_compose_ssh_ports / test_collector_orca / test_container_orca_sync) 残す: Git host 接続用 SSH client(~/.ssh symlink・HOST_SSH_USER/HOST_SSH_HOST)。 全 846 テスト green。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 1 | codex | REQUEST_CHANGES
Phase 0 の Go 判定と既存 Windows Orca 利用者の移行確認を完了してから、破壊的な SSH/Orca 経路の削除を実施してください。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 1 | gemini | COMMENT
[minor / リファクタリング]
Orca連携機能の削除に伴い、lib/devbase/volume/compose.py の generate_scaled_compose(および内部の _build_scaled_services、_build_dev_instance)で project_name 引数が全く使用されなくなっています。呼び出し元を含め、不要な引数の削除をご検討ください。
[minor / 正確性]
issues/i34-orcalike.md には containers/base/Dockerfile に「tmux 追加」と記載がありますが、本PRの変更には含まれていません。意図的な別PRへの先送りであれば問題ありませんが、漏れであれば追加をご検討ください。
- issues/i34-orcalike.md: sshd/Orca 削除を「Go 判定後の別 PR」とする記述を、 先行削除を実施済みとする実態に整合させる(§3/§3.1/§8/§11/§12/§13/ヘッダ改訂メモ)。 設計上の教訓(本来は Go 判定後が理想)と Windows 利用者の Remote-SSH 移行案内は残す。 - §9 変更ファイル表: Dockerfile の tmux 追加は Phase 0/1 の別作業で本削除 PR に含まない旨を明記。 - compose.py: Orca 削除後に未使用となった project_name 引数を generate_scaled_compose/_build_scaled_services/_build_dev_instance から削除。 呼び出し元 container.py の up/scale 2 箇所と tests/volume/test_compose.py を更新。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Round1 レビュー対応(663bf88)全 846 テスト green を確認済み。 [codex major] doc と実装の矛盾(issues/i34-orcalike.md:91)sshd/Orca 削除はユーザーの明示指示に基づき本 PR で先行実施する判断。ご指摘は矛盾解消として対応し、doc を「先行削除を実施済み」とする実態へ整合させました(ヘッダ改訂メモ・§3・§3.1・§8 Phase 0・§11 リスク表・§12 受け入れ条件・§13)。設計上の教訓と Windows 利用者向け Remote-SSH 移行案内は維持。→ インラインスレッド resolve 済み。 [gemini minor / リファクタリング] 未使用 project_name 引数
[gemini minor / 正確性] doc の「tmux 追加」記述§9 変更ファイル表の Co-Authored-By: Claude Opus 4.8 (1M context) |
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 2 | codex | REQUEST_CHANGES
破壊的削除に必要な利用者向け移行手順を同じ変更で提供し、独立した Issue 32 の設計文書は別 PR に分離してください。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 2 | gemini | APPROVE
不要になった Orca 関連のコード・ドキュメント・未使用引数 (project_name) の削除が過不足なく行われていることを確認しました。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 3 | codex | REQUEST_CHANGES
移行ガイドの CLI 呼び出しを現行仕様に合わせる必要があります。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 3 | gemini | APPROVE
Orca連携および関連コード・設定の削除が過不足なく行われていることを確認しました。修正提案はありません。
devbase login は単一 positional index のみで project 名は取らない。 cwd (projects/<project>) で対象を決める正しい手順へ修正。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 4 | codex | REQUEST_CHANGES
SSH server 廃止後も Git host 接続用 SSH client を保持するため、base image の依存を修正してください。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 4 | gemini | APPROVE
PR の目的(Orca 対応の削除と利用者の移行案内)に沿って、関連する設定・コード・テスト・ドキュメントが漏れなく的確に削除されています。
特に、generate_scaled_compose の不要になった引数(project_name、external_ports_provider)のクリーンアップや、自動収集コレクター(orca.py)の削除が動的ロードと競合せずに実施できている点も確認しました。不要な機能の削除によってコードベースの保守性が向上しています。
openssh-server を削除したことで、その依存で暗黙導入されていた openssh-client も fresh build (--no-cache) では入らなくなり、ssh バイナリが消えて git の SSH URL / SSH ベースの Docker context が 使えなくなる回帰があった。apt install に openssh-client を明示追加。 fresh build 後に `ssh -V` が通ることを要確認。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 5 | codex | APPROVE
前ラウンドの指摘は解消されており、追加の修正提案はありません。
takemi-ohama
left a comment
There was a problem hiding this comment.
🤖 cross-review | round 5 | gemini | COMMENT
Orca 連携の削除と関連ファイル・テストの撤去が過不足なく行われていることを確認しました。既存機能への影響もないと見込まれます。
1点のみ、移行ガイドへの導線が不足しているためインラインで提案しています。
Round2 で追加した docs/user/orca-removal-migration.md が docs/README.md / README.md のドキュメント索引から未リンクだったため、 利用者向けドキュメント一覧表とクイックリンクに追記。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Pull Request
概要
Issue 34(devbase 独自の Orca-like オーケストレーション)の検討ドキュメントを追加し、
その方針(§3.1)に従って コンテナへ入るための SSH server と Orca 専用連携を削除して
docker exec経路へ一本化する。あわせて multi-repo project 検討メモを同梱する。関連 Issue
issues/i34.md(本 PR で追加)変更点
Issue 34 検討ドキュメント
issues/i34-orcalike.md: CLI + 単一 window VS Code Extension の二層構成を提案(レビュー反映済み: 削除順序の後置、Windows 移行、LSP trade-off、metadata 分割)。
issues/i34.md: 元 issue。コンテナ sshd の廃止
containers/base/Dockerfile:openssh-serverinstall と Orca 向け sshd_config を削除。containers/base/entrypoint.sh:ENABLE_SSHブロック(host key 永続化・authorized_keys展開・sshd 起動)を削除。
Orca/SSH publish 連携の削除
lib/devbase/commands/orca.py(devbase orca sync/prune/status)を削除。lib/devbase/env/collectors/orca.py(SSH 公開鍵 collector)を削除。lib/devbase/volume/ports.py(SSH publish ポートの決定的算出)を削除。compose.py::22publish・ポート衝突回避・専用ラベル(dev.devbase.ssh/index/user)を削除。container.py: up/down/scale の Orca 同期・剪定フックを削除。cli.py/bin/devbase:orcaコマンドの parser・dispatch・補完を削除。keys.py:ENABLE_SSH/DEVBASE_SSH_BIND/DEVBASE_SSH_PORT_BASE/SSH_AUTHORIZED_KEYS/DEVBASE_ORCA_HOSTNAME/DEVBASE_ORCA_USERを削除。docs/user/orca.mdと README/docs の Orca 参照、関連テスト4ファイルを削除。残したもの: Git host 接続用の SSH client(
~/.sshsymlink /HOST_SSH_USER/HOST_SSH_HOST)は別機能のため保持。別トピック(同梱)
issues/PLAN32_multi-repo-project.md/issues/i32.md: multi-repo project 検討メモ。影響・注意
反映には base image の再ビルド(
devbase container build --no-cache)が必要。ENABLE_SSH等は無視される(コンテナ側 sshd が無いため)。生成済みの
~/.config/devbase/orca/ssh_config//persistent/ai/sshは自動削除しない。動作確認
uv run pytest tests/が全て green(846 passed)devbase helpからorcaが消え、devbase orcaが unknown command になるdevbaseの import / 主要モジュールの py_compile OKdevbase container build --no-cacheで base image がビルドできるdevbase up/login/list/scaleに回帰がない(実機確認)