Set the timeout in seconds for the implicit fact gathering, see the module documentation for specifics. It does not apply to user defined ansible_collections.ansible.builtin.setup_module tasks.
I think there's a historical wart here. When a playbook contains "gather_facts: true", it calls the gather_facts module. This in turn calls the setup module to accomplish the fact gathering. In that case only, and only if DEFAULT_GATHER_TIMEOUT is set, it will invoke the setup module with, effectively, "timeout: '{{ DEFAULT_GATHER_TIMEOUT }}'".
-- Todd