A participant-owned system that indexes years of inconsistently-named scans, pathology and treatment documents into a searchable, source-traceable archive — while preserving uncertainty and keeping personal health information private by design.
A decade of medical files had accumulated across desktops, downloads, cloud folders and email exports — as photos, scans, PDFs and screenshots with names like Current CT CAP 2.jpeg and Report 1.png. The files were present, but no one could answer the questions that actually matter: what happened, in what order, from which document, and what still needs attention. The burden of reconstructing the story fell entirely on the patient.
The first phase is deliberately organizational, not clinical. It builds a trustworthy metadata layer before anyone attempts to interpret a single medical finding.
All figures and screenshots on this page come from a synthetic demonstration dataset — invented patient, invented providers, sample filenames. No real person's health information appears anywhere here.
Running the pipeline over the synthetic sample of 34 files produces a manifest-backed dashboard. Crucially, it surfaces its own incompleteness instead of hiding it.
The interesting work was refusing to let a polished dashboard imply more certainty than the data supports.
A scan and its second-opinion copy aren't two clinical events. The headline counts source files, with separate figures for unique content and document families.
A filename that says only "Jun 2019" is shown as Jun 2019 with a month precision tag — never fabricated to the 1st of the month, which could reorder a treatment timeline.
A test request is not proof a test happened. A status field separates requests, reports, discharge summaries and second opinions.
SHA-256 flags only byte-identical files. Everything else — re-scans, re-exports, pages — is grouped as a provisional family with a stated basis and confidence, pending review.
Undated files and missing years are surfaced as "completeness unknown," not quietly dropped or shown as a false timeline event.
Phase one reads filenames and hashes only — never document contents. Confidence is capped until a separate, explicit review phase.
Document families are never asserted silently. Each shows how it was formed and how much to trust it — reconcilable against an exported manifest (synthetic sample shown).
| Family | Files | Basis | Confidence |
|---|---|---|---|
| CT series | 4 | Explicit sequence numbering in filenames | Medium — needs content check |
| Histopathology report | 2 | "Report 1 / 2" numbering | Medium — needs content check |
| Radiation discharge summary | 2 | "Summary 1 / 2", same month | Medium — needs content check |
| Blood results (copy A / B) | 2 | Identical SHA-256 hash | High — byte-identical duplicate |
| Current CT CAP | 2 | Similar filename only | Low — needs content check |
Filter by filename, provider, modality or body site — instantly, across the whole index.
Chips for Dated / Undated / Requests / Duplicates stack with search to narrow to exactly what matters.
Sort by date, status, domain, modality or provider — month-only and undated records order predictably.
A single "Mammogram, Ultrasound, Biopsy" file surfaces all three modalities, not just the first.
The same work serves care and demonstrates capability — without making a private health story the price of being seen. Access is layered, not all-or-nothing.
Designing a trustworthy structure from messy, real-world inputs — and knowing what not to claim.
Access tiers, data minimisation and provenance treated as architecture, not an afterthought.
Every displayed number reconciles to an exported manifest; every grouping states its basis and confidence.
Built from the patient's side of the system — the perspective institutions rarely design for.
Explore the searchable, source-traceable index built on a fully synthetic dataset.
Open the demo →