The local.php file is commonly used to overwrite the default and generic configurations. Generally this file is also .gitignore'd.

The use case is this:
Say I have multiple staging environments, say stage1.example.com and stage2.example.com. Each of those environments have different database connection information. Rather than having a switch/case statement in my stage.php config for each environment, I would have a custom local.php config file in each environment that will set the database settings to what is actually needed for that environment.

This also works well for dev environments as well. A developer can switch his local configuration to point to a different database than the default configured one without worrying about that configuration getting committed back to the repository (because it is generally in the .gitignore)

In addition it seems like it was intended to be included at one point because it is in the [auraphp/system package](https://github.com/auraphp/system/blob/develop/config/local.php).