> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tappify.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# How review mode works

> The pairing and comment model behind the Tappify overlay, for anyone reviewing a build.

Review mode is built around one idea: **pair a device once, then it just works natively**
from then on. There's no separate reviewer app to install and no login screen to see every
time — after the first pairing, the overlay is simply part of the app on that device.

## Pair once per device

A teammate pairs their device to an app from the Tappify dashboard. Pairing is a single,
explicit act — scanning a QR code or tapping an activation link — and it only has to happen
once per device, per app (or once ever, if [team-wide pairing](/sdk/team-wide-pairing) is
set up). See [Activating devices](/sdk/activating-devices) for the walkthrough.

## The overlay lives natively afterwards

Once paired, a small pill appears anchored to a screen edge whenever the app is open on that
device — no relaunching a separate tool, no browser tab. Tapping it starts a new comment;
long-pressing it opens the thread list for the current screen. See
[Commenting](/sdk/commenting) for how reviewers use it day to day.

The overlay is **inert unless a paired org member is present** — it doesn't exist on a
device until that device has been through pairing, and it disappears again the moment a
device is revoked or an app's [gating mode](/sdk/gating-modes) no longer allows it.

## Comments are anchored to a screenshot, a screen, and a build

Every comment starts the same way: the current screen freezes to a screenshot, you drop a
pin, and you write a comment. That thread permanently records the screen it was taken on
and the exact app version and build number the app was running — so a thread from build 140
stays anchored to what build 140 looked like, even after build 142 changes that screen. See
[How review mode works](#comments-are-anchored-to-a-screenshot-a-screen-and-a-build) above
and [Screen names](/sdk/screen-names) for how screens get identified.

## Activation flow

```mermaid theme={null}
flowchart LR
    A["Reviewer taps<br/>Review on this device<br/>on the dashboard"] --> B["Dashboard mints a<br/>one-time activation link"]
    B --> C["Reviewer opens the link<br/>on their device<br/>(QR scan or tap)"]
    C --> D["App opens and<br/>exchanges the link<br/>for a paired session"]
    D --> E["Pill appears —<br/>overlay is live<br/>on that device"]
```

Everything after that first pairing — cold launches, backgrounding, foregrounding — is
handled silently by the SDK. The reviewer never sees it happen.
