-
Notifications
You must be signed in to change notification settings - Fork 0
Closed
Labels
status:review-pendingReview pendingReview pendingstatus:todoPlanned but not startedPlanned but not started
Description
-
🔍 发现的问题 / 原始需求描述
- 当前仓库已经具备两条可用部署路径:
scripts/deploy.sh(systemd 多实例)与scripts/deploy_light.sh(当前用户轻量托管),但“消费方按需自部署”仍缺少统一、可编排、可验收的交付契约。 - 结合 README/SECURITY 中已经明确的 single-tenant trust boundary,本需求应收敛为:消费方按参数拉起自己的单租户实例对,而不是在单实例内追求多租户共享。
- 当前遗留缺口主要集中在:非交互预检、健康验收、参数/secret 组合校验、systemd 资源基线、身份边界与 shell 治理、初始化链路供应链基线,以及未来可选 Docker 路线的评估。
- 当前仓库已经具备两条可用部署路径:
-
🛠️ 详细实施方案 (必须包含涉及的文件路径和核心逻辑/伪代码)
- 本 issue 作为 umbrella / product-contract issue 保留,不直接承载单一代码提交;后续实施应以子 issue 推进:
#148:补齐scripts/deploy.sh、scripts/deploy_light.sh、scripts/uninstall.sh的非交互预检、ready 判定、参数校验与机器可读返回契约。#147:补齐A2A_ENABLE_SESSION_SHELL、session ownership、身份边界与高风险能力治理规则。#149:收敛scripts/init_system.sh的 bootstrap 供应链安全基线。#150:补齐 systemd 资源治理、请求体限制与抗滥用基线。#146:仅作为未来可选路线评估 Docker 化,不进入当前主路径。
- 需要在以下文件形成统一的“单租户自部署契约”说明:
README.mdSECURITY.mdscripts/deploy_readme.mdscripts/deploy_light_readme.md
- 推荐的最小控制流应统一为:
validate_inputs_and_sudo_mode() prepare_instance_root_and_secret_contract() start_or_update_single_tenant_instance() wait_until_agent_card_and_runtime_ready() emit_machine_readable_result(instance_url, agent_card_url, logs_dir) - 只有当上述子 issue 收敛后,才应考虑是否需要新增更上层的 control-plane / create-status-delete API;当前阶段不引入新的服务控制面。
- 本 issue 作为 umbrella / product-contract issue 保留,不直接承载单一代码提交;后续实施应以子 issue 推进:
-
🧪 回归测试建议
- 部署 smoke:
deploy_light.sh start -> status -> stopdeploy.sh首次部署、重复部署、卸载回归
- 契约回归:
- 缺失 secret / provider 参数组合错误时,返回稳定错误语义
- readiness 成功后能稳定访问 Agent Card 与
message:send
- 安全与治理回归:
A2A_ENABLE_SESSION_SHELL=false/true两种配置的行为边界清晰- systemd 资源限制与请求体限制生效且不影响正常调用
- 文档回归:
- README / deploy 文档中的路径、命令与脚本实际行为一致
- 部署 smoke:
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
status:review-pendingReview pendingReview pendingstatus:todoPlanned but not startedPlanned but not started