feat(release): add V2R1C2 portable multi-provider execution plan

This commit is contained in:
ChatGPT Release Governance
2026-07-22 02:00:00 +08:00
parent 00fd375e4c
commit ef074a0c97
@@ -0,0 +1,147 @@
{
"schema_version": "aios.execution-plan.v2",
"plan_id": "AIOS-V2R1C2-UNIFIED-PORTAL-RELEASE-20260721",
"source_branch": "patch/chatgpt/AIOS-V2R1C1-UNIFIED-WEB-ROLE-PORTAL-20260721",
"source_oid": "ENV:AIOS_RELEASE_SOURCE_OID",
"target_version": "V2R1C2",
"release_gate_policy": "all_required_stages",
"metadata": {
"owner": "AIOS-Control-Plane",
"purpose": "Unified role-aware portal and portable executor rollout",
"executor_protocol": "aios.executor.v1",
"owner_notification_channel": "wechat",
"owner_notification_target_ref": "AIOS_OWNER_WECHAT_TARGET_REF",
"production_baseline": "V2R1C1",
"candidate_port": 18921,
"production_port": 18920,
"production_mutation_allowed": false
},
"stages": [
{
"stage_id": "openclaw-candidate-deploy",
"task_id": "AIOS-V2R1C2-OPENCLAW-CANDIDATE-DEPLOY-20260721",
"executor_type": "openclaw",
"role": "candidate_deployment_operator",
"depends_on": [],
"steps": [
"verify_exact_source_oid_and_clean_worktree",
"bootstrap_isolated_candidate_state_and_executor_catalog",
"run_static_compile_and_candidate_unit_tests",
"install_and_start_v2r1c2_candidate_service_on_18921",
"run_health_api_ui_and_role_matrix_smoke",
"run_tenant_isolation_and_protected_action_negative_tests",
"run_restart_recovery_and_rollback_drill",
"publish_candidate_evidence_manifest"
],
"required_evidence": [
"source_oid_attestation",
"bootstrap_log",
"compile_report",
"unit_test_report",
"service_status",
"health_check",
"api_smoke",
"ui_smoke",
"role_matrix",
"tenant_isolation",
"protected_action_negative",
"restart_recovery",
"rollback_drill",
"candidate_evidence_manifest"
],
"notification_events": [
"STARTED",
"SUCCEEDED",
"FAILED"
],
"owner_notification_ref": "AIOS_OWNER_WECHAT_TARGET_REF",
"start_deadline_seconds": 900,
"heartbeat_timeout_seconds": 360,
"required": true,
"metadata": {
"runtime": "openclaw",
"candidate_service": "aios-v2r1c2-portal.service",
"candidate_url": "http://127.0.0.1:18921",
"production_service_must_remain_untouched": true
}
},
{
"stage_id": "hermes-runtime-validation",
"task_id": "AIOS-V2R1C2-HERMES-RUNTIME-VALIDATION-20260721",
"executor_type": "hermes",
"role": "runtime_validation_operator",
"depends_on": [
"openclaw-candidate-deploy"
],
"steps": [
"validate_hermes_health_and_worker_identity",
"validate_queue_claim_and_completion",
"validate_lease_heartbeat_and_timeout_recovery",
"validate_restart_recovery_and_duplicate_delivery_safety",
"reconcile_runtime_evidence_with_candidate_audit"
],
"required_evidence": [
"hermes_health",
"queue_claim_completion",
"lease_heartbeat",
"timeout_recovery",
"restart_recovery",
"duplicate_delivery_safety",
"runtime_evidence_reconciliation"
],
"notification_events": [
"STARTED",
"SUCCEEDED",
"FAILED"
],
"owner_notification_ref": "AIOS_OWNER_WECHAT_TARGET_REF",
"start_deadline_seconds": 900,
"heartbeat_timeout_seconds": 360,
"required": true,
"metadata": {
"runtime": "hermes",
"candidate_url": "http://127.0.0.1:18921"
}
},
{
"stage_id": "codex-release-review",
"task_id": "AIOS-V2R1C2-CODEX-RELEASE-REVIEW-20260721",
"executor_type": "codex",
"role": "release_evidence_reviewer",
"depends_on": [
"openclaw-candidate-deploy",
"hermes-runtime-validation"
],
"steps": [
"review_source_diff_and_architecture_invariants",
"review_test_and_runtime_evidence_hashes",
"review_security_tenant_and_role_boundaries",
"review_documentation_traceability_and_rollback_readiness",
"produce_release_recommendation_without_creating_tag"
],
"required_evidence": [
"source_diff_review",
"test_evidence_review",
"runtime_evidence_review",
"security_boundary_review",
"documentation_traceability_review",
"rollback_readiness_review",
"release_recommendation"
],
"notification_events": [
"STARTED",
"SUCCEEDED",
"FAILED"
],
"owner_notification_ref": "AIOS_OWNER_WECHAT_TARGET_REF",
"start_deadline_seconds": 900,
"heartbeat_timeout_seconds": 360,
"required": true,
"metadata": {
"runtime": "codex",
"tag_creation_allowed": false,
"owner_approval_required": true
}
}
]
}