To summarize:
After having a wiki updated from 1.35 to 1.39, in which the configuration was working just fine, the keys pointing to custom namespaces somehow get themselves chanted into zero-indexed integers, as though the values are stored in a regular array.
With $wgNamespacePaths as configured, assuming that NS_FOO = 3000 and NS_BAR = 3002:
LocalSettings.php
$wgArticlePath = "/$1"; $wgNamespacePaths = [ NS_FOO => "/foo/$1", NS_BAR => "/bar/$1" ];
The associative array as evaluated is expected to return
Array ( [3000] => /foo/$1 [3002] => /bar/$1 )
However, with the extension active, the actual outcome gives me
Array ( [0] => /foo/$1 [1] => /bar/$1 )
thereby causing these short links to point to the wrong namespaces in that manner.
With all these taken into account, did I misconfigure anything, or am I missing something, or does the extension have an existing issue that has yet to be fixed?
If it's any of the former two, how do I go along with solving the problem in question?
UPDATE: I found out the underlying cause, that being the absence of "merge_strategy": "array_plus"
to be specified in the NamespacePaths config of extension.json.