Scope: Claude Code agent in the p24-infra session (role: System Admin / DevOps / Security Officer / MongoDB Admin)
Last updated: 2026-06-29
EU AI Act relevance: This document supports Annex III transparency obligations for the p24-infra AI system.
This matrix defines what the AI sys-admin may do autonomously (no human approval needed) vs. what requires explicit human authorization before proceeding.
Decision rule
The AI sys-admin acts autonomously when all of the following are true:
The action is reversible or covered by a rollback playbook in docs/playbooks/
The action does not affect production user data directly (schema migrations are OK if RLS is intact)
The action is within the scope of a known playbook or a routine operation
The action does not cause downtime longer than a rolling restart would
If any condition fails → stop, explain, ask.
Services & Systems
SSH / Server Access
Operation
Autonomous
Requires approval
SSH read-only inspection (ps, df, journalctl)
✓
Restart a service / Docker container
✓
Deploy new Docker image (known service)
✓
Edit config file on server (with backup)
✓
Add new service / port to UFW
✓
rm -rf on production data directory
✓
Reboot server
✓
Add/remove SSH authorized_keys
✓ (claude-runner only)
✓ (root/other users)
Open port 27017 on bms-2/bms-3 (MongoDB)
✓
Any action on vps-h1 beyond WAHA restart
✓
Docker
Operation
Autonomous
Requires approval
docker compose up/down/restart
✓
docker pull + rolling update
✓
docker logs
✓
docker inspect with --format scope only (bare inspect dumps full Env)
✓
docker exec into running container
✓ (read/diagnose)
✓ (writes to prod data)
Remove stopped containers / volumes (docker system prune)
✓
Delete named volume with production data
✓
Add new container to production compose
✓
Expose new port publicly
✓
Cloudflare (DNS / Workers / WAF)
Operation
Autonomous
Requires approval
Add / update DNS A, CNAME, TXT record
✓
Delete DNS record
✓ (with documented reason)
Deploy CF Worker (wrangler deploy)
✓
Set wrangler secret put
✓
Create / update WAF rule
✓
Change zone-level SSL mode
✓
Delete zone or domain
✓
Rotate CF scoped API token
✓ (via rotation playbook)
Rotate CF Global API Key
✓
MongoDB (rs0 — bms-2/bms-3/bms-4)
Operation
Autonomous
Requires approval
rs.status(), rs.conf() — monitoring
✓
rs.add() — add voting/non-voting member
✓
rs.remove() — remove failed member
✓
rs.addArb() — add arbiter
✓
Create / update MongoDB user
✓
Rotate MongoDB user password
✓ (via rotation playbook)
db.dropDatabase()
✓
Change keyFile / replica set name
✓
Step down PRIMARY during business hours
✓
rs.reconfig() with force: true
✓
Supabase
Operation
Autonomous
Requires approval
Run schema migration (supabase db push)
✓
Add / update RLS policy
✓
Create / update database function
✓
Add index
✓
Inspect tables, run SELECT queries
✓
UPDATE / DELETE on production rows
✓
Drop table or column
✓
Disable RLS on a table
✓
Rotate SUPABASE_SERVICE_ROLE_KEY
✓ (via rotation playbook)
Create new Supabase project
✓
Pause / restore project
✓
Vercel
Operation
Autonomous
Requires approval
vercel deploy --prod
✓
Create new Vercel project
✓
Set / update environment variables
✓
Link project to GitHub repo
✓
Add custom domain
✓
Roll back deployment
✓
Delete project
✓
Remove env var (may break production)
✓
Change team billing or plan
✓
Token:VERCEL_ADMIN_TOKEN in secrets/monitoring.env.sops (key: p24-infra-automation, never expires).