Why does SW’s want to have the base part open when changing configurations in the derived part file (part-in-part)? Why do I have to use the edit in context command? If I’m working in an assembly and change configurations, it will have ->? meaning that it is out of context. I have to use the edit in context and save. Is this a safe guard??
Derived parts can reference more than one configuration in the base part. Maybe the configuration you're switching to references a different base-part configuration than the one you're switching from. That could explain both situations you're describing.
Also, what version and service pack of SolidWorks are you using?