Wildcard expansion in cmd shell

Hello All -

I am trying to decipher some magic that happens on Github Actions jobs but I can’t seem to be able to reproduce it locally. Wondering if someone can share any insight into what/how to mimic the behavior.

I am using windows-latest image. I have a simple script (tcl, if it matters) and an executable (C++ program). The script runs the executable. The command line args to the executable contains wildcard (something like .pkg). I expect this parameter to be passed down to the executable as is i.e. as ".pkg" but incidentally it gets expanded i.e. what I receive among the arguments is “a.pkg b.pkg …”. This is bash shell behavior and I can’t seem to find any documentation on Windows supporting such a feature. So, who is expanding wildcard and is there a way to reproduce this locally? Is the ‘cmd’ some special flavor? Are the launch commands being intercepted somehow (and modified in the process) before being passed down to the launching executable?

The closest documentation discussing this topic I could find - Expanding wildcard arguments | Microsoft Docs. But I am NOT linking this in my application.

Appreciate any insight into the internal workings.