I'm assuming you're thinking that everything would be on the native page, but display of the page would be customized, say by using CSS triggered by user selections to show/hide divs. Display for logged in users, I assume, would use javascript cookies to remember settings. This would not be considered cloaking.
With regard to SEO considerations, the question reminds me of this discussion....
Dynamic Single Product Page - Can this be successful for SEO? http://www.webmasterworld.com/google/4424746.htm [webmasterworld.com]
Some posters in the thread had used such pages and noted that they performed well. Others felt that the pages might get defocused for search.
I posted at length, suggesting that this setup could well mess up SEO, but that it very much depends on what kind of widgets you're dealing with... ie, whether blue, green, gray represent characteristics that might be searched for separately, or whether they're incidental to how the widget would be found.
In the case of, say, shirts, I felt that color and pattern, eg, might be easily merged on one page. On the other hand...
If you start trying to include sets of characteristics that would normally involve specific searches... like brandname, style, fabric-type, catalogue number, then IMO you're muddying the waters considerably, and you'd be messing up SEO quite a bit....
The above thought relates a bit to deadsea's very intriguing point here...
The only time that it would be an issue at all that Google might be concerned about is a case like this: A logged in user does a search for "yellow widgets" and lands on your site but doesn't find yellow widgets because they set a preference to filter them out.
This is another consideration why, I feel, that if "yellow widgets" is very likely to be searched, you probably don't want it to be filterable... you'd want it on a separately targeted page.