This is the contents of the gimped features.xml file:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<features xmlns="http://karaf.apache.org/xmlns/features/v1.0.0" name="foo-0.0.1">
<feature resolver="(obr)" version="0.0.1" name="foo">
Again, it was intentionally created to test this issue.
This creates an unresolved constraint violation which results in all of the bundles in this feature being uninstalled.
The issue is in the finally block of the FeaturesServiceImpl.jar's installFeatures() method. The finally block sets the callListeners(new FeatureEvent(f, FeatureEvent.EventType.FeatureInstalled, false)); This results in the featurews being listed as installed on features:list for all features that are installed regardless of the success of that installation.