In StateTransitions.java, a couple of the transition assertions that are made in the "detachCopy with active tx" scenario are not documented:
Element 4 (0-based) asserts that HOLLOW will remain UNCHANGED when detachCopy() is called on them. However, this doesn't seem to be anywhere in the spec, and also doesn't seem right, since a hollow instance would need to instantiate its fields in order to cascade the detach operation (subject to the setting of the DETACH_LOAD_FIELDS setting).
Element 9 asserts that a PERSISTENT_NONTRANSACTIONAL instance will remain unchanged. However, for the same reason as above, it might transition to persistent-clean due to reading a field.