Hi,
I see you already use facts cache:
fact_caching = jsonfile
fact_caching_connection = cache
Note that fact_caching_connection
defines path of the json file you’re storing your facts in, so be sure this path is accessible to the user running you playbook.
Now, you’re showing output for a single run; subsequent ones should update cache and show you updated content in your debug task as well. Is that not the case ?
If not, first ensure your are indeed using your ansible.cfg file, as there might be precedence at play here.
Here is an example playbook for a similar usecase; perhaps you’ll spot something missing, but your config is looking fine to me.