153 lines
5.7 KiB
YAML
153 lines
5.7 KiB
YAML
apiVersion: aios.gitops/v1
|
|
kind: ExecutionOrder
|
|
metadata:
|
|
name: openclaw-v1r4c6-merge-tests-deploy
|
|
date: 2026-07-11
|
|
owner_approval:
|
|
branch: request/openclaw-v1r4c6-merge-deploy-20260711
|
|
file: approvals/openclaw-v1r4c6-merge-deploy-owner-approval.yaml
|
|
commit: 4653f92
|
|
spec:
|
|
objective: >-
|
|
Integrate the approved V1R4C6 Admin Workbench, Search Gateway, and Agent Platform
|
|
changes into a clean candidate based on the latest main, execute all mandatory gates,
|
|
merge to main only after success, then deploy and verify production.
|
|
confirmation_policy: no_additional_confirmation_required
|
|
source:
|
|
primary_branch: release/v1r4c6-admin-search-agent-integration-20260711
|
|
supporting_domains:
|
|
- admin-workbench-portal-aios
|
|
- search-gateway-governance
|
|
- agent-platform-integration
|
|
target:
|
|
integration_branch: integration/v1r4c6-merge-deploy-20260711-01
|
|
final_branch: main
|
|
release_version: V1R4C6
|
|
execution:
|
|
- id: preflight
|
|
actions:
|
|
- fetch_all_refs_and_tags
|
|
- verify_workspace_clean
|
|
- reset_integration_candidate_to_latest_main
|
|
- verify_baseline_is_V1R4C5
|
|
- verify_memory_search_enabled_is_false
|
|
- verify_V1R4C5_tag_unchanged
|
|
- record_main_head_and_source_head
|
|
stop_conditions:
|
|
- dirty_workspace
|
|
- missing_source_branch
|
|
- baseline_not_V1R4C5
|
|
- protected_setting_changed
|
|
- id: semantic-diff-review
|
|
actions:
|
|
- compute_three_dot_diff_from_main_to_primary_branch
|
|
- classify_changes_by_admin_search_agent_domains
|
|
- detect_duplicate_control_artifacts_already_merged_by_PR_6
|
|
- preserve_PR_7_NOT_RUN_status_until_tests_execute
|
|
- reject_reversion_of_V1R4C5_baseline_metadata
|
|
- reject_enablement_of_memory_search
|
|
output:
|
|
- execution/evidence/v1r4c6-semantic-diff-report.md
|
|
- id: merge-candidate
|
|
actions:
|
|
- merge_primary_branch_into_integration_candidate_without_fast_forward
|
|
- resolve_text_conflicts_by_preserving_latest_main_control_metadata
|
|
- preserve_source_business_functionality_when_not_conflicting_with_safety_controls
|
|
- commit_resolved_candidate
|
|
forbidden:
|
|
- force_push
|
|
- direct_commit_to_main
|
|
- bypass_branch_protection
|
|
- bypass_owner_gate
|
|
- weaken_rbac_or_scope_isolation
|
|
- mark_unexecuted_tests_as_passed
|
|
- id: gate-a-admin
|
|
required_checks:
|
|
- admin_workbench_routes_and_assets_load
|
|
- portal_aios_manifest_dashboard_health_endpoints
|
|
- server_side_and_frontend_rbac
|
|
- empty_error_and_loading_states
|
|
- tenant_user_project_session_isolation
|
|
- id: gate-b-search
|
|
required_checks:
|
|
- real_provider_binding_or_explicit_safe_fallback
|
|
- timeout_limited_retry_and_safe_fallback
|
|
- scope_filter_before_ranking
|
|
- provenance_in_results
|
|
- provider_and_fallback_audit
|
|
- unauthorized_results_never_enter_ranking_or_summary
|
|
- memory_search_remains_disabled
|
|
- id: gate-c-agent
|
|
required_checks:
|
|
- unified_agent_event_bus
|
|
- scoped_agent_gpt_message_plane
|
|
- autonomous_controller_dispatch
|
|
- safe_mode_stops_dispatch_and_change
|
|
- high_risk_actions_remain_owner_gated
|
|
- duplicate_dispatch_is_idempotent_or_rejected
|
|
- queue_failure_retry_observability
|
|
- id: runtime-and-regression
|
|
actions:
|
|
- run_getRuntimeStatus
|
|
- run_getBaseline
|
|
- run_createBranch_smoke_test
|
|
- run_createPatch_smoke_test
|
|
- run_full_regression_suite
|
|
- run_deployment_preflight_health_checks
|
|
expected:
|
|
reads: "200 OK with service, status, workspace_branch"
|
|
writes: "200 OK with branch, commit, rev, sync_status"
|
|
- id: promote-main
|
|
conditions:
|
|
- gate_a_passed
|
|
- gate_b_passed
|
|
- gate_c_passed
|
|
- runtime_acceptance_passed
|
|
- regression_passed
|
|
- deployment_preflight_passed
|
|
actions:
|
|
- open_or_update_merge_request_from_integration_candidate_to_main
|
|
- merge_without_rewriting_history
|
|
- record_new_main_head
|
|
- update_versions_V1R4C6_json_to_release_ready_or_active_baseline_as_policy_requires
|
|
- update_baseline_current_json_only_after_successful_promotion
|
|
- create_V1R4C6_tag_according_to_repository_tag_semantics
|
|
- id: deploy-and-verify
|
|
actions:
|
|
- trigger_direct_deployment_from_new_main
|
|
- verify_service_health
|
|
- verify_admin_search_agent_smoke_paths
|
|
- verify_runtime_status_and_baseline_after_deploy
|
|
- verify_rollback_artifact_and_previous_baseline_are_available
|
|
- publish_production_verification_report
|
|
failure_policy:
|
|
mode: fail_closed
|
|
on_any_failure:
|
|
- stop_pipeline
|
|
- do_not_update_main
|
|
- do_not_create_or_move_release_tag
|
|
- do_not_deploy
|
|
- preserve_integration_branch_for_forensics
|
|
- commit_failure_evidence_and_exact_blocker
|
|
reporting:
|
|
required_files:
|
|
- execution/evidence/v1r4c6-semantic-diff-report.md
|
|
- execution/evidence/gate-a-admin-result.md
|
|
- execution/evidence/gate-b-search-result.md
|
|
- execution/evidence/gate-c-agent-result.md
|
|
- execution/evidence/runtime-acceptance-result.md
|
|
- execution/evidence/regression-result.md
|
|
- execution/evidence/deployment-result.md
|
|
- execution/evidence/production-verification-result.md
|
|
final_summary_fields:
|
|
- source_head
|
|
- integration_head
|
|
- main_head_before
|
|
- main_head_after
|
|
- merge_commit
|
|
- release_tag
|
|
- deployment_id
|
|
- gate_results
|
|
- production_health
|
|
- rollback_ready
|