You know that rule B hasn't fired and won't fire for a given set of facts if you
return from fireAllRules() and there is no indication of it having fired. Now, if
rule A would simply, on its RHS, insertLogical a fact ReadyToFireRuleA, and
you can query this from your Java code, you can execute the "real"
consequence of rule A as Java code. (There are other options.)
insertLogical needs to be called from the context of a rule.
Accessing the agenda isn't in the stable API. You'll have to inspect the code.