diff --git a/index.html b/index.html
index cd69775..d4c7c09 100644
--- a/index.html
+++ b/index.html
@@ -1409,6 +1409,7 @@ Notice: Applied catalog in 12.34 seconds
The payoff slide — the "vs" framing was a trap. They stack.
Terraform provisions → Ansible configures → Puppet enforces. Three layers.
+ Ansible also covers one-off ops — push a single patch across the fleet on demand (the push model). Puppet handles the continuous side; Ansible the punctual side.
"Which should I use?" → depends which layer of the problem you have.
@@ -1429,7 +1430,7 @@ Notice: Applied catalog in 12.34 seconds
Ansible
— Configure
- packages, services, app deployment
+ packages, services, deploys, on-demand patching
@@ -1445,14 +1446,15 @@ Notice: Applied catalog in 12.34 seconds
A common production setup:
Terraform provisions the VM
- Ansible configures it and deploys the app
+ Ansible configures it, deploys the app, and pushes one-off patches
Puppet continuously enforces compliance
Concrete recap of how they fit together end to end.
You don't have to use all three — but they layer cleanly when you do.
- Pick by your actual need: just provisioning? Terraform. Ad-hoc ops? Ansible. Drift control? Puppet.
+ Ansible's role isn't only first-time setup — it's also the tool for punctual ops, like pushing a single patch across the fleet on demand (slide on Operations). Puppet then keeps that state from drifting.
+ Pick by your actual need: just provisioning? Terraform. Ad-hoc ops / one-off patch? Ansible. Drift control? Puppet.