Linking records you already have
How Forensia builds a short trail out of the records in one result, without making a single new request.
#Plain languageIn plain terms
A single lookup often already contains the pieces of a short story: A paid B, and later B paid C. Forensia can lay those out as a trail using only what is on the page.
It asks no source anything new, so it costs nothing and cannot disagree with the result. The trade-off is that it only sees what the lookup happened to capture.
#How it worksHow it works
- Collect the transfers in the result that are unambiguous: one asset, a positive amount, clear parties, a known block.
- Throw out anything doubtful rather than risk a wrong link.
- Start from the transfers the subject sent. For a transaction lookup, start from the transfers inside that transaction.
- For each recipient, look for a later transfer of the same asset sent by them.
- Go at most two steps out.
#Technical detailThe exact rules
| Limit | Value |
|---|---|
| Records considered | 512 |
| Starting transfers | 32 |
| Steps shown | 16 |
| Depth | 2 hops |
If the result holds more than 512 records, no trail is built at all. Using the first 512 could miss a conflicting record further down. The count includes the transfers listed by the one-hop continuation finding, which can also appear in a trail.
A transfer is identified by where it occurred, not by its amount. A native transfer is identified by its transaction hash. A token transfer is identified by transaction hash and log position. A transfer is dropped when any copy of it failed, has conflicting sources, has a zero or invalid address, or disagrees with another copy on asset, amount, parties, block or time. It is also dropped when it sends to its own sender, sits beyond the lookup's latest block, or has no captured source record for its transaction. Internal transfers and token events without a known log position are left out.
One transfer may follow another only when all of these hold:
- the sender is the earlier transfer's recipient;
- the asset is identical: same network, and for a token, same contract;
- it is in a strictly later block;
- it is a different transaction;
- where both have timestamps, its timestamp is strictly later.
#LimitsWhat it does not tell you
- Amounts are never compared between one step and the next. No share of an incoming amount is assigned to an outgoing one.
- "No outbound record from this recipient" is a gap in what was captured. It does not mean the trail ended.
- Two transfers in the same block are not connected, because their order is not established.
- Other assets are not connected. A swap breaks the trail.