feat: runtime-split-container-smoke runtime smoke#53
Merged
takemi-ohama merged 2 commits intoJul 7, 2026
Merged
Conversation
15 tasks
33d6a76 to
51b83bf
Compare
takemi-ohama
commented
Jul 7, 2026
takemi-ohama
left a comment
Contributor
Author
There was a problem hiding this comment.
🤖 cross-review | round 1 | codex | REQUEST_CHANGES(intent)
サマリー
scripts/runtime-smoke-test.shで runtime ごとの Docker smoke を構築し、ホスト汚染と secret の扱いを厳密に抑えている点が良いです。- CI workflow も PR セーフな
--with-secrets=offと protected な認証付きに分かれており、docs / issues のチェックリストも最新化されています。
検証
bash scripts/runtime-smoke-test.sh --with-secrets=off
指摘事項
- Major:
.github/workflows/runtime-plugin-authenticated-smoke.ymlの BigQuery 処理が仕様未達です。BIGQUERY_KEY_FILE_JSONをテンポラリに書き出していますが、BIGQUERY_KEY_FILE環境変数を設定していないためコンテナ内inject_secretsがパス再設定を行えず、assert-authenticated-smoke.shのrun_bigquery_secret_check()が早期 return して BigQuery credential の検証がスキップされます。ANTHROPIC_API_KEY等が存在するとauth_ranが true になりテスト自体は pass しますが、BigQuery secret の有無を確認できず、--with-secrets=requiredで BigQuery のみを期待した場合に失敗します。JSON 展開後のパスをBIGQUERY_KEY_FILEとして export した上で smoke スクリプトを実行するよう修正をお願いします。
51b83bf to
60ae7ac
Compare
takemi-ohama
commented
Jul 7, 2026
takemi-ohama
left a comment
Contributor
Author
There was a problem hiding this comment.
🤖 cross-review | round 2 | codex | APPROVE(intent)
.github/workflows/runtime-plugin-authenticated-smoke.ymlで BIGQUERY_KEY_FILE_JSON を一時ファイルに書き出してからBIGQUERY_KEY_FILEを export するようになり、ラッパースクリプトに正しいパスが渡ることを確認しました。scripts/runtime-smoke-test.shの file secret 処理がキーを正規化しつつ/tmp/runtime-secrets/以下にコピーした後にraw-envへexport BIGQUERY_KEY_FILE=...を追記するようになったので、コンテナ内のassert-authenticated-smoke.shで検証している要件を満たしています。- ローカルでは
bash scripts/runtime-smoke-test.sh --runtime codex --with-secrets=offを実行し、ベースのスモークが通ることを確認しました。ダミーの認証情報を渡した--with-secrets=autoは Codex CLI の実 API キーが無い環境のため停止しましたが、今回の修正には影響していません。
前ラウンドの Codex 指摘は解消済みと判断します。
takemi-ohama
commented
Jul 7, 2026
takemi-ohama
left a comment
Contributor
Author
There was a problem hiding this comment.
🤖 cross-review | round 2 | gemini | APPROVE(intent)
サマリー
PR #53 の cross-review round 2 を実施しました。
runtime container smoke test の実装、Docker によるホスト汚染防止とシークレット分離の仕組み、Claude / Codex / Kiro 各ランタイムの実 install 検証、Kiro の --project インストーラーサポート、CI ワークフローの安全性、および Issue (issues/runtime-plugin-container-test-plan.md) の完了条件との整合性を確認しました。
また、Codex の round 1 指摘事項であった .github/workflows/runtime-plugin-authenticated-smoke.yml での BIGQUERY_KEY_FILE_JSON 展開後の BIGQUERY_KEY_FILE 環境変数の export 漏れについても、正しく修正されていることを確認しました。
検証
ローカルで以下のコマンドを実行し、すべてのテストがパスすることを確認しました。
bash scripts/runtime-smoke-test.sh --with-secrets=off出力:
==> runtime smoke: claude
==> runtime smoke: codex
==> runtime smoke: kiro
runtime smoke tests passed: claude codex kiro
評価
- Task 8 runtime container smoke test: 共通 harness と各アダプタにより適切に実装されています。
- Docker isolation: tmpfs を用いたシークレット管理、read-only mount によるリポジトリ保護など、厳密な隔離が実現されています。
- CI workflow 安全性: PR 用 workflow はシークレットなし (
--with-secrets=off)、認証用は workflow_dispatch / protected environment と適切に分かれています。 - Codex round 1 指摘対応:
BIGQUERY_KEY_FILEが正しく export され、コンテナ内に注入されるよう修正されています。
変更は要件を完全に満たしており、問題ありません。マージ可能です。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
scripts/runtime-smoke-test.shを追加し、Claude / Codex / Kiro を Docker コンテナ内で実 install smoke できるようにしましたndfとmcp-bigquery相当の install、Skill / MCP / hook / agents / Kiro agent config を検証します--with-secrets=off|auto|required、allowlist file secret、--keep-container併用拒否、protected authenticated smoke workflow を追加しました--projectを追加し、空 project へ install できるようにしましたTest plan
bash -n scripts/runtime-smoke-test.sh tests/runtime-smoke/adapters/*.sh tests/runtime-smoke/assertions/*.sh tests/runtime-smoke/lib/common.sh plugins/ndf-kiro/install.sh scripts/build-runtime-plugins.sh scripts/validate-runtime-plugins.shbash scripts/build-runtime-plugins.sh --checkbash scripts/validate-runtime-plugins.shbash scripts/runtime-smoke-test.sh --runtime claude --with-secrets=offbash scripts/runtime-smoke-test.sh --runtime codex --with-secrets=offbash scripts/runtime-smoke-test.sh --runtime kiro --with-secrets=offbash scripts/runtime-smoke-test.sh --with-secrets=off--with-secrets=requiredが secret 不足時に失敗することを確認--with-secrets=requiredが成功することを確認--with-secrets=auto --keep-containerが拒否されることを確認rg "plugins/ndf($|[^-])|plugins/ndf/" README.md AGENTS.md CLAUDE.md KIRO.md docs plugins scripts .claude-plugin .agentsが0件rg "plugins/mcp-[a-z]" README.md AGENTS.md CLAUDE.md KIRO.md docs plugins scripts .claude-plugin .agentsが0件git diff --checkvalidate-runtime-plugins.shが成功