frames_equal_or_skip ==================== .. py:function:: t3toolbox.safety.frames_equal_or_skip(data1, data2) .. code-block:: python def frames_equal_or_skip(data1, data2): The convenience guard for "same frame": ``True`` when checks are inactive (unsafe / under a trace) or when the frames are numerically equal (jax-aware tolerance) -- so a call site reads:: if not (b1 is b2 or safety.frames_equal_or_skip(b1.data, b2.data)): raise ValueError('tangents are in different tangent spaces') The ``b1 is b2`` identity is the O(1) fast path; this only runs (and only matters) when the objects differ but may still represent the same frame (the jit round-trip).