If you've written a PowerShell module you'll be familiar with the FunctionsToExport portion of the .psd1 module manifest that starts out like this:
This array defines what functions should be accessible from outside of the module, being almost everything if not everything. You can put @("*") here but sometimes this will result in auto-complete of function names not working until you've imported the module at least once, and then one day auto-complete may just stop working entirely due to caching bugs.
This demonstrates the problem using a fresh module named AutoFunction which holds a dummy function named Start-AutoFunction:
The "best practice" and proper way of handling this then is to add an entry to the array in this file every time you create a new function. Manually. What a pain in the ass right? But there's a better way!