Following suggersion is slighly related to this discussion: http://www.codeplex.com/MEF/Thread/View.aspx?ThreadId=35409
I think there should be some back door for developers superseding the default parts/contracts with external (let's say fixed/hotfixed parts).
Imagine a situation when the product is shipped and some default service i.e. IClipboardService or IUndoRedoService is malfunctioning. The best option could be providing a hotfix in the separate assembly that will replace the exiting [Export(typeof(IClipboardService))]
or [Export("SomeInternalContract")] without recompilation and deployment of the whole product.
It is quite obvious that there will be a set of default extensibility entry points reserved by the company itself, even non-ducumented I guess.
As for me it would be nice having a mechanism to supersede the existing single part with external one. Speaking about security... the could be a way explicitly defining whether a single part could be recomposed from the catalog or something like that...
Does it make sense?
Thanks in advance