PluginInspectionInterface is the way instanciated plugin objects (or code manipulating them) can access their own plugin_id and plugin_definition.
Method names are getPluginId() and getDefinition().
Underlying properties, defined by PluginBase, are $pluginId and $pluginDefinition.
Thus, getDefinition() method is inconsistent in that it lacks a "Plugin" prefix for context.
That's an actual issue with TypedData objects, which are plugins, and have an (unrelated) getDefinition() method of their own in TypedDatainterface. Thus, they currently don't extend PluginBase or implement PluginInspectionInterface - butneeds it.
More generally, I think the term "definition" is of too common use to be "stolen" by Plugin API, which , when looking a the API of given plugin-based system, is merely an implementation detail. That's the very reason why getPluginId() was not named getId(), it would not be reasonable to steal the notion of "id".
Opinions, before I try to roll a patch ?
PASSED: [[SimpleTest]]: [MySQL] 57,224 pass(es).
FAILED: [[SimpleTest]]: [MySQL] Unable to apply patch PluginInspectionInterface-getPluginDefinition-1986802-12.patch. Unable to apply patch. See the log in the details link for more information.
PASSED: [[SimpleTest]]: [MySQL] 56,489 pass(es).
FAILED: [[SimpleTest]]: [MySQL] Unable to apply patch PluginInspectionInterface-getPluginDefinition-1986802-6bis.patch. Unable to apply patch. See the log in the details link for more information.