I like this idea! But I'm not sure about the need for a UI to do it, more like interface nodes to facilitate it.
My entrance to node based programming was through NI Reaktor. There they have a "Snapshot" system for storing and recalling represented by a master control node, a snap value node that lets you specify single values (outside the UI elements) to store in a snapshot, and a snap value array to store arrays in.
The control node is interesting. While it is absolutely massive both in inputs and outputs, the core part of it is basically an A setting and a B setting and a morph control between the two. Standard UI elements are stored automatically, other modifiers need a snap value connected.
I'm then thinking that if there was a way to have a master control node of states/a snapshot, and a way to morph between the values in the different sets it could be a good place to start. Instead of UI elements, it could store the value of unpopulated ports with number/vector inputs as you then wouldn't need any extra UI stuff to manage it. If you publish a port, it could have a state node connected to store the value coming from the host, and you could also publish the master nodes controls to manage states and morph between them from within a host.
Alastair not sure how this would relate to a state management feature? See reply below.
Jean Marie Kind of, but maybe not quite :) I'm thinking very basic [event time out] - [event time in] = output. I could maybe have made it myself, but I frankly don't trust my skills enough to make something accurate enough for this purpose.
While a tooltip would be nice for checking custom nodes, it would mean having to calculate the sum of multiple nodes when comparing different approaches which I don't find as useful. I can also see the port popover management become tiresome really fast in larger compositions.
For single nodes it would also just be a matter of connecting this parallel to the node to get the execution time for a single/custom node.