Projects / AnyTrace
AnyTrace
Research prototype on provenance, lineage and chain of custody
Where did this entity and its evidence come from, what happened to it, and when, even when events arrive late and out of order from different organisations?
Overview
20tests in the repository
AnyTrace models custody as events on a hash-chained timeline. A traceable entity has custody events, evidence sources and typed lineage links, such as one lot derived from another.
Its central discipline is time. A custody event that arrives late is recorded at the moment it actually happened, and it never rewrites who held the entity before.
The six prototypes share one application kernel in the AnyLAI repository: cases, a hash-chained event timeline, evidence with provenance and three timestamps, tasks and authority acts. Each prototype adds only its own vocabulary and rules.
A custody timeline with a late event
Lot 42 · green coffee
- Day 1Harvested· Producer
- Day 3Received· Cooperative
- Day 9Shipped· Exporter
The late report is placed where it happened. Nothing before it is rewritten.
Text description of the diagram
A timeline for lot 42 of green coffee: harvested by the producer on day 1, received by the cooperative on day 3, shipped by the exporter on day 9. On day 12 a report arrives that the cooperative weighed the lot on day 4. It is inserted at day 4 and marked as reported late; the earlier holders stay unchanged. A second entity, blend 42-A, is linked as derived from lot 42.
Building blocks
Traceable entity
The thing being followed: a lot, a batch, a document.
Custody event
Who held it, from when, as reported by whom.
Evidence source
The record that supports an event, kept with its provenance.
Lineage link
A typed relation, such as derived from, between entities.
Timeline
An append-only, hash-chained sequence of events per case.
Bounded graph walk
Reconstructing the history of an entity across its lineage, within explicit limits.
A late report
- 1
The exporter reports shipment of lot 42 on day 9.
- 2
On day 12 the cooperative's weighing record from day 4 finally arrives.
- 3
AnyTrace records it at day 4, marks when it was reported, and chains it into the timeline.
- 4
Reconstructing the lot's history now shows the weighing in its place, and the earlier custody remains untouched.
How it differs
AnyTrace ≠ AnyVerifyResearch prototype · unpublished
AnyVerify asks whether evidence supports a claim. AnyTrace records what parties reported, without deciding whether it is true.
AnyVerifyAnyTrace ≠ AnyAuditResearch demonstrator
AnyAudit records what the software did. AnyTrace records what happened to things in the world.
AnyAudit
Status
Research prototype in the AnyLAI repository, unpublished and not deployed. It has not run on real data, and no partner system sends it events.
Limitations
- Records what parties reported; it does not establish truth.
- The graph walk is bounded and has not been tested at scale.
- No real partner integration.