100 lines
2.8 KiB
JSON
100 lines
2.8 KiB
JSON
{
|
|
"name": "aios-self-governing-devops-policy",
|
|
"version": "1.0.0",
|
|
"mode": "bounded-self-governing",
|
|
"description": "Self-governing DevOps policy for AIOS GitOps with dynamic agent weights, drift detection, guarded rollback requests, policy runtime and skill evolution.",
|
|
"non_negotiable_controls": {
|
|
"direct_main_push": false,
|
|
"all_writes_require_git_commit": true,
|
|
"real_credentials_in_git": false,
|
|
"disable_auth_protection": false,
|
|
"delete_audit_or_version_history": false,
|
|
"production_execution_without_policy": false
|
|
},
|
|
"governance_loop": [
|
|
"observe_events",
|
|
"evaluate_policy",
|
|
"score_agents",
|
|
"detect_consensus_drift",
|
|
"render_decision_graph",
|
|
"run_validation_or_repair",
|
|
"generate_candidate_or_request",
|
|
"notify_owner",
|
|
"persist_audit",
|
|
"learn_from_outcome",
|
|
"propose_skill_update"
|
|
],
|
|
"agent_learning": {
|
|
"enabled": true,
|
|
"weight_bounds": {
|
|
"openclaw": [1, 4],
|
|
"codex": [1, 4],
|
|
"chatgpt": [1, 3]
|
|
},
|
|
"initial_weights": {
|
|
"openclaw": 2,
|
|
"codex": 2,
|
|
"chatgpt": 1
|
|
},
|
|
"signals": {
|
|
"validation_accuracy": 0.35,
|
|
"repair_success": 0.25,
|
|
"false_positive_rate": -0.15,
|
|
"owner_override": -0.2,
|
|
"post_merge_stability": 0.25
|
|
},
|
|
"update_policy": "bounded_exponential_smoothing",
|
|
"write_target": "runtime/governance/agent-weights.json"
|
|
},
|
|
"drift_detection": {
|
|
"enabled": true,
|
|
"thresholds": {
|
|
"consensus_score_drop": 2,
|
|
"agent_disagreement_ratio": 0.5,
|
|
"repeated_failure_count": 3,
|
|
"owner_override_count": 2
|
|
},
|
|
"on_drift": "block_production_and_request_owner_review"
|
|
},
|
|
"policy_runtime": {
|
|
"required_checks": [
|
|
"no_direct_main_write",
|
|
"no_real_credentials",
|
|
"no_destructive_history_change",
|
|
"acceptance_tests_pass",
|
|
"owner_notice_for_main_change",
|
|
"rollback_target_defined",
|
|
"baseline_proposal_exists"
|
|
],
|
|
"decision_outputs": [
|
|
"allow_candidate",
|
|
"conditional_candidate",
|
|
"request_owner_review",
|
|
"block"
|
|
]
|
|
},
|
|
"guarded_rollback": {
|
|
"mode": "request_first",
|
|
"automatic_action": "create_rollback_request_and_notify_owner",
|
|
"execution": "requires_preapproved_runbook_or_owner_action",
|
|
"default_target": "V1R1C4"
|
|
},
|
|
"skill_evolution": {
|
|
"enabled": true,
|
|
"mode": "propose_only",
|
|
"sources": [
|
|
"validation_failures",
|
|
"owner_feedback",
|
|
"post_merge_incidents",
|
|
"repeated_manual_repairs"
|
|
],
|
|
"output_dir": "skills/proposals",
|
|
"activation": "merge_after_acceptance"
|
|
},
|
|
"owner_control": {
|
|
"channels": ["web_ui", "wechat_or_wecom"],
|
|
"actions": ["audit", "approve", "reject", "request_change", "request_rollback"],
|
|
"main_version_change_notice": "mandatory"
|
|
}
|
|
}
|