register / unregister
Intermediateregister / unregister are two calls, in the style of some tools: register makes a property automatically attach to all subsequent events, and unregister stops that attachment.
This pair manages super properties — a property registered once so it need not be sent by hand on each event. Register is useful when you have a stable context across the session, such as the app version or the A/B test group a user is in; instead of repeating it in each call, you register it once. Unregister is needed when that context is no longer valid, for instance the user left the experiment. The common trap is confusing register with setting a user property; a super property attaches to future events, not to the user profile, and does not change past events. Another point is clearing on logout: unless cleared by a reset() call, one user's super property can leak to the next user on the same device.