The logic for clearing a component parameter field is added as so:
extend method: public void postRenderCleanup()
if (! _$model_invariant)
model = _$model_default;
_$model_cached = false;
The problem is that this postRenderCleanup() is invoked after the component finishes rendering. If a parameter is updated as part of a form submission, this code is not called, and the parameter value is left behind. This can lead to leaks, as the parameter value is not cleared before the page is returned to the pool.
The solution is to extend the method containingPageDidDetach() as well.