FreeRTOS architecture decision

There is nothing wrong with a module providing a hook to let people know its status, like if WiFi is up.

Modules should not be “polling” such a status waiting for the module to be ready if at all possible.

I would probably have the WiFi module include a “EventGroup” that other modules can block on to wait for the status, or include a “subscription” entry, where the subscribing module provides a short function that the scribed module will call o certain events, allowing that function to signal the subscribing module in whatever way it wants.