Hi Emil - not really. The references are recorded in the DB in a series of tables with names like BPA...Dependency, but as your observations have shown, the BPAProcessCredentialsDependency table is only updated when the process is saved with a literal credential name input value. I suspect the reason is that the 'save dependencies' logic doesn't attempt to calculate the result of any expressions, and technically [My Credential Name] is an expression. That said, the logic should attempt to resolve simple Data Item references like this.
Although I have so solution to your problem, I suggest you raise a 'public' enhancement request
here and I will do the same on our internal ideas board.