We've upgraded to GXT 2.3.0 and have a problem with some Field<D> validation messages that get shown. Specifically message strings that contain characters that will be HTML encoded (e.g. & > <). Looking at the markInvalid method I can see that the string is first encoded when it arrives in the method. Then, we're using the default option of showing the error icon when validation fails, and when the error icon's setTooltip method is called, it is passed the encoded string, which then gets encoded a second time, because it uses setText which was a change in 2.3.0.
For example, if the string passed in is "Do not include <", the first encoding gives you "Do not include <", and the second will turn that to "Do not include &lt;", so the visual result is:
"Do not include <".
We only have one such message, so I have a workaround in place on the particular field that is used.