Migrated from open-experiments/Telco-AIX#20.
Goal: Take 301's remediation from selecting predefined actions to generating Ansible playbooks dynamically, without ever letting generated actuation run ungoverned.
Blueprint-aligned design (per the open blueprint article):
generate_playbook as an MCP tool in 301's execute agent — input: the diagnosed issue + validated plan; output: a playbook artifact (never executed directly by the generator).
- Playbook passes the existing co-decision: remediation-risk scorer scores the concrete playbook (module allowlist, blast-radius features: hosts touched, service restarts, config scope); judge evaluates plan/playbook consistency.
- Kuadrant gateway policy gates the
run_playbook tool separately from generate_playbook — generation is cheap, execution is governed.
- Human-approval gate shows the rendered playbook diff before execution; approve/override decisions are logged (feeds the preference-tuning issue).
- Simulate-before-act:
ansible-playbook --check --diff as a mandatory pre-step, output attached to the approval request.
- QA evidence pack per repo conventions: offline scripted episode with a golden generated playbook, live run capture with auth redacted.
Non-goals: free-form shell actuation; skipping the gate for "low-risk" playbooks (risk is the scorer's call, gating is policy's call).
Migrated from open-experiments/Telco-AIX#20.
Goal: Take 301's remediation from selecting predefined actions to generating Ansible playbooks dynamically, without ever letting generated actuation run ungoverned.
Blueprint-aligned design (per the open blueprint article):
generate_playbookas an MCP tool in 301's execute agent — input: the diagnosed issue + validated plan; output: a playbook artifact (never executed directly by the generator).run_playbooktool separately fromgenerate_playbook— generation is cheap, execution is governed.ansible-playbook --check --diffas a mandatory pre-step, output attached to the approval request.Non-goals: free-form shell actuation; skipping the gate for "low-risk" playbooks (risk is the scorer's call, gating is policy's call).