Rule::isResultValid ()

I am experimenting with something akin to the SimpleRule in the llbuild examples.

But am struggling with
bool isResultValid(BuildEngine &engine, const ValueType& value) override
and how it's intending to be used.

I have a simple tree of rules/tasks that evaluates as I expect.

I think mark (via isResultValid) one of the leaf-nodes in-valid - expecting the rest of the down-stream nodes to re-run.

but they don't. Only the one that corresponds to the leaf-node does.

is isResultValid() supposed to check inputs as well ? (that feels wrong, but maybe ?)

thanks.
-doug