FYI, a subtle JCR point that I discovered while pounding out bugs: there's no easy way to figure out whether a Node exists on disk.You'd think Node.isNew() would work, but if you create a node then add a mixin (as we do with createPage()), its status changes to UPDATED, even before calling save().
This is correct and you just stumbled upon a Priha bug which is not caught by the TCK :-). isNew() works as you thought it should work.
/Janne
