PHPSpec is not missing any features... it is bashing our head for trying to relaying on a method which is not enforced by the interface. I raised this issue some time ago, I think we should add the getId() methods to all model interface. I initially removed them because of different persistence layers, but even PHPCR is using the ``getId`` method. (in CMF bundles for example) What do you think?

The only valid reason (IMO) for writing a phpspec specification for existing code is when this code is not behaving as expected. (thus it's broken) That's what @Richtermeister did and it simply exposed the issue with our interface, which requires a solution.