Basically the title, return value of export_text() in example.py is an empty string.
I think replacing line 429 with report = print_tree_recurse(self.root, report) fixes this, but I'm not sure.
Moreover, printing the decision tree before and after updating the rules by calling tcdt.update() for the given example yields the same tree.