必須技術の充足状況
Google Cloud アプリケーション実行
Cloud Run(API / Web 分離)
cloudbuild.yaml / .api / .web, scripts/deploy_cloud_run*.sh
Google Cloud AI 技術
Gemini API + ADK (Agent Development Kit)
api/shion_agent.py — LlmAgent + Runner + ツール自律呼び出し
開発 → デプロイ → 検疫 → 昇格
Cloud Run 上で生まれたデータは、無条件に本体DBへ書き戻しません。デモ/本番を分離し、隔離DBでの人間承認を経てから初めて昇格します。
Step 1
企画・開発
ローカルで run_next_stable.sh を使い、Next.js + FastAPI を起動して開発する
Step 2
ビルド
Cloud Build(cloudbuild.yaml / .api / .web)でコンテナイメージを作成する
Step 3
デプロイ
Cloud Run へ API / Web を分離してデプロイする
Step 4
デモ/本番分離
CLOUDRUN_DATA_MODE=demo で demo.db のみを使い、本体DBには接続しない
Step 5
事前チェック
check_cloudrun_demo_readiness.py でデプロイ直前の状態を確認する
Step 6
検疫
Cloud Run上の入力はGCSイベント経由で隔離DB(cloudrun_experience_return.db)へ帰還させる
Step 7
人間承認
/cloudrun-return-review で隔離DB内のデータを人が確認・承認する
Step 8
昇格 → 次サイクルへ
承認済みデータだけを promote_cloudrun_return_data.py --apply で demo.db へ昇格し、次回開発の改善材料にする
本体 data/lease_data.db を昇格先にする場合は、別途明示指定と安全確認が必要です。 この分離のおかげで、ハッカソン期間中の入力で審査データベースが壊れる事故を防いでいます。
