This is because Furnace proxies the objects to avoid ClassCastExceptions. This shouldn't present a problem though. Are your addon dependencies correctly configured? I haven't seen your project yet, but if you could reproduce this error in a test that would be great.
I am testing my Forge 2.0 addon for SAP HANA Cloud. One of my commands (the setup command) installs the special facet that I have developer (SapHanaCloudFacet). Another command is annotated with @FacetConstraint(SapHanaCloudFacet.class). Even after I do setup, the other command is not enabled.
I started the debugger. The isInstalled method of my facet returned true. So I went on to see what happens with the isEnabled() method. I dug as deep as the AbstractFaceted::safeGetFacet(Class<F> type) method. What it does is: it searches all the installed facets and it checks whether the expected one is among them by calling type.isInstance(facet).
The problem in my case is that all the facet objects are actually proxies. So I expect the type to be com.sap.cloud.forge.SapHanaCloudFacet, but it is actually something like org.jboss.forge.addon.facets.AbstractFacet_$$_javassist_904cc85e-43dd-404a-846c-ed4709d14dea. Eventually, the isInstance method returns false.
P.S. Did you, guys, bring anything new to the Windows shell? I am still using my Linux VM for Forge development.