@pitaj Something to note is that if the plugin has already been required, subsequent requires will still have module.parent pointing to the first module that required it.
So... when NodeBB starts and it requires plugin-foobar, its module.parent is plugins.js
Later, if plugin-barbaz requires plugin-foobar, its module.parent stays as plugins.js.
So if you only require the module after NodeBB is done with it (e.g. defer requiring until it is actually required), you might be ok.