Fusebox.appinit.cfm
fusebox.appinit.cfm is called immediately when the framework is first loaded, before the request is compiled and processed and is again within a lock. It is also locked with a different named lock from <appinit>
Fusebox.appinit.cfm executes as part of the framework load even before fusebox.init.cfm is loaded.
With <globalfuseactions><appinit>, the information contained within (normally a call to a fuseaction), is only called on the first request after the framework is loaded and the execution is locked to ensure thread safety.
<appinit> executes conditionally as part of each request.
The fuseaction called within this is not part of the normal lifecycle execution. There are no plugins and items in this fuseaction cannot depend on any plugin behaviors.
How to use
The fusebox.init.cfm file was a new in fusebox 4.1. and fusebox.appinit.cfm is new in Fusebox 5.0. Both are "globals" files which can be used to initialise variables required at the start of a page execution.
The first (fusebox.init.cfm) is included on every request, if it exists. It runs after the attributes are loaded, but before any fuseactions are run so you can do neat things with it like run security and change attributes.fuseaction for login. It's also a handy place to put your db settings. It's not "required" to run fusebox, but it is an "official core file." Note that the fusebox.init.cfm file replaces the need for using the old Globals plugin (although you can still use that w/ fusebox 4.1 if you care to).
The second (fusebox.appinit.cfm) is included on the first request for a particular application, if it exists. It's also a handy place to initialise and application variables or instantiate CFCs.