FORENSIAWeb3 forensicsOpen workspace

What counts as later

The rules Forensia uses to decide one record came after another, and what it refuses when the order is unclear.

2 min read · Tracing value

#Plain languageIn plain terms

Tracing depends on order. "B received money, then B sent money" is only meaningful if the sending really came second. Blockchains group transactions into blocks, and a single block can hold hundreds. The order inside a block is recorded, but not every data source reports it.

Forensia is strict here. When it cannot establish that one record came after another, it does not link them.

#How it worksHow it works

The safest signal is the block number. A transaction in block 105 came after one in block 100, without question. Inside one block, order is known only when the source provides each transaction's position. Each technique uses the strongest signal it has and refuses the link otherwise.

#Technical detailThe exact rules

TechniqueOrder comes fromSame block
One-hop continuation findingBlock number onlyRefused
Following ETH onwardBlocks after the start, then position within the located blockThe starting block is never searched
Following a token onwardBlocks after the start, then transaction position and log positionThe starting block is never searched
Linking captured recordsBlock numberNot connected
Rapid forwarding patternBlock number and timestamp, both strictly laterRefused
TimelinesBlock number, then each transaction's index in its block, used only when every entry in that block has an index from the same captured block hashMarked as order not established otherwise

For a native transfer to count as a successor, all of these must hold: it is a top-level transfer of the network's own currency, not failed, not conflicting, sent by the earlier transfer's recipient, in a strictly later block, in a different transaction. If both records carry a timestamp, the later one's must be strictly later. A missing timestamp does not block the link. A contradictory one does.

Where records in the same block must be displayed, they are sorted by transaction hash. That gives a stable list and nothing more.

The one-hop continuation finding

For a wallet, when an indexed provider is available, the lookup picks up to 2 recipients of the largest outgoing native transfers, skipping known routers and token contracts. For each it reads one page of that recipient's newest outgoing transfers and shows up to 3 that qualify as later. The finding is finding:bounded-outflow-continuation, class lead, confidence low.

#LimitsWhat it does not tell you

  • Block order is not causation. A later transaction is not necessarily a response to an earlier one.
  • Refusing same-block links means real same-block sequences are missed. That is the price of not inventing an order.
  • Timestamps are set by block producers and are only roughly accurate.
  • A sequence is not evidence that one party controls both ends. Services pool unrelated funds.