Batch genealogy is two questions that look symmetrical and are not. Backward: what went into this container. Forward: everywhere material from this batch ended up. While material sits still, both are lookups. The moment it is blended, compounded, or repacked, both become graph problems — and the system either recorded the edges of that graph at the time, or it did not.
Blending is many-to-one, repack is one-to-many
A blend consumes several input lots and produces one output batch. The output has a genealogy that is a set, not a value, and the proportions matter — a trace has to know that this batch contains material from four heats of caustic, not merely that it contains caustic.
A repack does the opposite: one bulk lot becomes many containers, each of which can go to a different customer on a different day. The forward trace from the parent lot is now a fan-out, and it is only as good as the link recorded between the parent and each child container.
Real operations chain these. Blend, hold, repack, transfer between sites, blend again with a second component. Each step is either an edge in the record or a gap somebody will have to reconstruct.
The three places it usually breaks
The transformation was not a transaction. If the blend was recorded as a consumption and a separate receipt, with no link between them, the genealogy is broken at exactly the point it matters. The quantities balance; the lineage does not exist.
Containers are not tracked individually. If inventory is held as a quantity of a product rather than as identified totes and drums, the forward trace can say a customer received two hundred gallons but not which containers, which matters when the recall is container-specific — and it makes tare and net reconciliation impossible, so the recorded quantity slowly stops matching what is physically there.
Internal transfers are invisible. Movements between sites or between tanks are often treated as administrative rather than as genealogy events. Then a trace stops at a site boundary and resumes as a phone call.
What keeps it intact
The blend or repack has to be a work order that explicitly consumes input lots and produces output lots. That single decision creates the edges — everything else is reporting over a graph that exists.
Formula versioning with effectivity dates records which formula actually ran, so a variance investigation is not an argument about what the recipe was in March. Yield and variance against theoretical, captured at run close, is what turns a genealogy record into something operationally useful rather than purely regulatory — a batch that closes short is a quality signal before it is a costing one.
Container-level identity with tare and net weight makes the forward trace specific and keeps the physical and system quantities honest. And in-process quality checks that hold an out-of-spec batch before it can reach finished goods mean the genealogy is not just complete but also carries the disposition, which is what an auditor asks about second.
The drill worth running
Take a finished container that shipped last month and was blended rather than resold. Ask for every input lot, the formula version that ran, the yield, and every customer who received material from the same batch. Time it.
If that takes hours, it is not a reporting problem — the edges were never recorded, and the answer is being reconstructed rather than retrieved. What it looks like when blending and distribution share one batch record is on the chemical, ag and plastics page, and the production mechanics are on the manufacturing page.