0.2.5 (2026-07-30)
Bug Fixes
- align android begininteraction 'inherit' history with ios (f980ff2)
Code Refactoring
- rename the shared native driver to drivers.native (f889630)
A second adversarial review of the 0.2.3/0.2.4 handoff stack re-confirmed the
architecture end to end and left two things worth shipping:
-
Android
beginInteraction()no longer resets the'inherit'velocity
history. It now records the frozen presentation as a plain sample —
exactly what iOS has always done insmoothClipFreezePresentation— so a
grab-and-instant-refling inherits bounded recent momentum instead of
launching a dead spring. An unchanged value dedupes to a no-op whose
timestamps keep aging, so a stale pair still inherits zero through the
100 ms staleness guard.resetVelocitySampleshad no remaining production
call site and was removed fromcpp/SmoothClipVelocityTracker.h; this only
affects code that includes that header directly. Pinned by a new
injected-timestamp XCTest covering the grab-record pairing both platforms
execute. -
The shared native driver is now
src/drivers.native.ts. The
implementation Metro resolves on both platforms previously lived in
drivers.ios.ts(with Android re-exporting it), inviting "iOS-only" edits
to land in shared code.drivers.ios.tsanddrivers.android.tsare now
one-line re-exports; resolution, the public API, and behavior are
unchanged.
Does 0.2.5 affect iOS? No — the velocity-history fix is Android-only C++
(iOS already had these semantics), and the rename is resolution-neutral.
iOS pixels are bit-identical to 0.2.4.
Also included: documentation corrections — the publishing checklist reflects
that 0.2.4 is on npm as latest, the driver's rejection-rollback comment now
matches the README contract (reachable 0-return cases deliver no completion),
the from JSDoc scopes its presentation.value claim to the native drivers,
kMaxFrameLeadS is documented as refresh-rate-independent latency slack, and
the README states the multi-host finished semantics and that keyframes
deliberately encode their own curve.
Co-Authored-By: Claude Fable 5 noreply@anthropic.com