'tis but a workaround. We've hit this problem elsewhere in v6, and got the same workaround suggestion from GCS.
Obviously, what's happening here is that the gDirtyOverride is being set to true somewhere. If it's set in a single place by a single method (e.g., setDirty?) we could put a breakpoint in the JS, and see the stacktrace to see what's setting it.
Alternatively, it would be handy to have this function make a UI change to let the user know that the page has been updated (e.g., display a pencil icon somewhere).
Let me amend my response. I looked into the SR we had filed. spoke with a colleague, and remembered the actual implementation.
It's not that something is setting gDirtyOverride at all -- that's just the magic override property.
Instead, what's happening is that when doExplorerFormIsDirty is called prior to leaving the form, it's comparing the current values with the initial ones, as set in the defaultValue (defaultChecked, defaultSelected) property. Wher we've run into this is in setting a prompt value ("Select item here") after page loads. So we're looking at ways of addressing this.