tl;dr yes, see this doc for what variables are created https://udhcp.busybox.net/README.udhcpc
full info post:
Next time you are doing some detective work I suggest you do a github (or openwrt source text content) search for udhcpc.user to look around on what interacts with it in the source.
You find that such file is called at the end of /usr/share/udhcpc/default.script, and also the /lib/netifd/dhcp.script as added in that ticket you saw.
https://github.com/openwrt/openwrt/blob/master/package/network/config/netifd/files/usr/share/udhcpc/default.script
https://github.com/openwrt/openwrt/blob/master/package/network/config/netifd/files/lib/netifd/dhcp.script
If you look at the top of both scripts, the very first line is
[ -z "$1" ] && echo "Error: should be run by udhcpc" && exit 1
So yeah they are run by "udhcpc", and that is a busybox tool (embedded device light version of core commandline tools), the dhcp client used by OpenWrt.
The documentation is in its old project page https://udhcp.busybox.net/ that has now been moved to busybox project infrastructure since the application was merged into busybox, and you can find the full client documentation about what variables it generates for use in scripts if you scroll down and click on Client README https://udhcp.busybox.net/README.udhcpc
It says:
When an event occurs, udhcpc calls the action script. The script by default is /usr/share/udhcpc/default.script
(for "events" it means something related to DHCP changes)
And then it says
The paramaters for enviromental variables are as follows:
$HOME - The set $HOME env or "/"
$PATH - the set $PATH env or "/bin:/usr/bin:/sbin:/usr/sbin"
$1 - What action the script should perform
interface - The interface this was obtained on
ip - The obtained IP
siaddr - The bootp next server option
sname - The bootp server name option
boot_file - The bootp boot file option
subnet - The assigend subnet mask
timezone - Offset in seconds from UTC
router - A list of routers
timesvr - A list of time servers
namesvr - A list of IEN 116 name servers
dns - A list of DNS server
logsvr - A list of MIT-LCS UDP log servers
cookiesvr - A list of RFC 865 cookie servers
lprsvr - A list of LPR servers
hostname - The assigned hostname
bootsize - The length in 512 octect blocks of the bootfile
domain - The domain name of the network
swapsvr - The IP address of the client's swap server
rootpath - The path name of the client's root disk
ipttl - The TTL to use for this network
mtu - The MTU to use for this network
broadcast - The broadcast address for this network
ntpsrv - A list of NTP servers
wins - A list of WINS servers
lease - The lease time, in seconds
dhcptype - DHCP message type (safely ignored)
serverid - The IP of the server
message - Reason for a DHCPNAK
tftp - The TFTP server name
bootfile - The bootfile name
I think this interface is not going to change anytime soon, that's a core tool, the dhcp client application used in OpenWrt.
I also think that it should be fairly trivial to add a line that calls network hotplug scripts when DHCP events happen by adding a line in the two linked scripts above, so packages can rely on DHCP events too without having to make a custom user config script like you did.