77a1998e…
Four different businesses have money riding on this one animal at the same time, and each of them needs a different slice of the same truth. The owner wants provenance, the insurer wants the death event, the bank wants to know the collateral still exists and has not moved, the state vet wants the disease status. One record, four legitimate readers.
Read the full disclosure
The gallery holds 12 animals and 168 frames. Twelve animals is a demonstration, not a register. Accuracy on twelve animals says nothing about accuracy on a hundred thousand: the chance of a stranger resembling someone already enrolled grows with the size of the register, and this gallery is far too small to show where that starts to bite.
The imagery is single-session. Every frame of an animal was taken on one occasion. That includes the "second capture" used on the duplicate-check screen — it is a different part of the same session, not a return visit. So this console can show that the duplicate block fires; it cannot show that a muzzle still matches weeks or months later. Whether a muzzle pattern is durable over time is the question that decides whether this product works, and no public dataset we are permitted to use commercially can answer it. It needs a longitudinal capture: the same South African animals photographed twice, weeks apart.
The population is wrong for this market. US Midwest feedyard beef yearlings; Angus, Angus x Hereford, Continental x British cross. No Bonsmara, no Nguni, no Afrikaner, no Cape buffalo. A Cape buffalo muzzle has not been put through this pipeline at all.
What the pipeline underneath does show is real, and it is the part worth watching: capture, quality gate, DINOv2 embedding, vector search, thresholding and the hash-chained audit record all run exactly as they would in production, on real photographs, with the thresholds read from the database at request time.
Where this console cannot determine something it says unknown. It never reports "real" on the strength of a guess.
Identity
Interests
Not a single "owner" column. An animal can be owned by one party, insured by another, pledged to a third and physically held by a fourth, all at once — and this table is what tells you who must be notified when something happens to it.
| Role | Party | Share | From | Detail |
|---|---|---|---|---|
| Owner | Willem Bezuidenhout | 100.0% | 2026-09-08 | — |
Event history
The animal's status is derived from this stream rather than edited in place, so the causal chain an insurer needs — death, claim, carcass verification, policy termination, lien release — is reconstructable rather than overwritten.
| Occurred | Event | Recorded by | Payload |
|---|---|---|---|
| 2026-09-08 11:52 UTC | Enrolled | 33333333-0000-4000-8000-000000000001 | {"assurance": "vet_witnessed", "capture_event_id": "8f94bc09-21d8-4614-988e-d10a6869584d", "dedup_best_score": 0.838602, "gallery_size": 7, "model_version": "1.0", "policy_version": "v3-unl-real-perframe"} |
Biometric templates
| Template | Modality | Model version | Dim | Quality | Enrolled | Status |
|---|---|---|---|---|---|---|
| 2fd7737b… | Muzzle | 1.0 | — | 0.5525 | 2026-09-08 | Active |
| 3a12ecc5… | Muzzle | 1.0 | — | 0.5083 | 2026-09-08 | Active |
| 5b5ae433… | Muzzle | 1.0 | — | 0.4759 | 2026-09-08 | Active |
| 47559247… | Muzzle | 1.0 | — | 0.5524 | 2026-09-08 | Active |
| 4fdf0dc1… | Muzzle | 1.0 | — | 0.5617 | 2026-09-08 | Active |
| 25b16383… | Muzzle | 1.0 | — | 0.7737 | 2026-09-08 | Active |
| 4567abb9… | Muzzle | 1.0 | — | 0.6083 | 2026-09-08 | Active |
| 417691ae… | Muzzle | 1.0 | — | 0.5861 | 2026-09-08 | Active |
Vectors are stored as 768-dimensional half-precision vectors; where the dimension column reads — the API did not return it on the row, not that it is absent from the store. Every template carries a resolvable model version. When the model is retrained, old templates are not silently reinterpreted under the new one — they are re-extracted from the retained source images, which is the reason those images are never deleted.
Capture metadata
Who captured it, where, when, and on what device. This is the evidentiary layer: if an operator's accreditation is revoked next year, every animal they enrolled is one query away.
GET /v1/animals/{id} in this build — screen 2 shows them live.
Stored frames