Using Project's Default Tag Provider in Gateway Timer Script

According to the manual, using empty brackets as the provider in a tag path will generally result in an invalid path in a Gateway script. However, the below line works for me in a Gateway Timer script and uses my project's default tag provider.

system.tag.writeAsync(["[]TestTag"], [False])

I'm curious as to why this works? If using empty brackets isn't a good idea, then what is the best way to construct Gateway scripts to utilize a project's default tag provider (i.e. for reusability across other projects)?

It works when called from with a project. Projects have a default tag provider (usually).

Gateway scope also includes script call stacks that are not inside a project (tag events in particular). and that syntax doesn't work.

That makes sense. Thanks