Extraction Invocation Id
The stable identity of one model call within a run: which call, and which try at it.
invocationIndex is the call's ordinal in the run's call plan, and it is allocated when the plan is laid out — before any call goes out. Two runs that chunk the same material the same way give the same piece of work the same index, whichever finishes first. attempt counts tries at that same call, starting at 1.
Nothing derives an identity from completion order. There is no factory that takes a position in a result list, and parallel execution writes into identities that already exist rather than minting them as answers arrive. That is what makes (runId, index, attempt) a deterministic child key: a retried write lands on its own row and a replayed write upserts in place.
EXPERIMENTAL. The shape may still change while extraction runs (DICE #67) land.