A CSV. A SQLite dump. A deck. A webhook pointing at the system that was supposed to replace all of it. Havilo reads the lot of it, into one living record.
CSVs, SQLite dumps, pitch decks, signed webhooks. Each read in its native grammar. Each written to the same record.
Columns the schema knows become structure. The ones it doesn't become narrative — written into the entity's notes, searchable with the rest.
Pitch decks, proposals, investor updates. Read into the context the rest of the platform reasons against.
Signed webhooks for the instant a source changes. Scheduled pulls for systems that can't emit. Most bridges run both at once.
An import from last quarter and an enrichment from this morning share the same record, without contradiction. Quantitative fields reconcile. Qualitative ones version. Narrative arrives as new pages, not replacements. Every value carries the source that wrote it — and the judgment that let it stay.
Quantitative — latest wins, prior kept for audit. A qualitative field would version instead; a narrative field would append.
The system knows check_size is quantitative, thesis is qualitative, Q4 notes is narrative. Each is stored — and reconciled — the way its kind deserves.
Messy headers — Ckzize, avg ticket, fund range — resolve to the same field. The taxonomy grows with the data, so yesterday's export still fits tomorrow's schema.
Re-drop the same export tomorrow. Havilo recognizes it, diffs what moved, writes only the changes. A quiet no-op when nothing changed.
A single row names a founder, a fund, a last employer. Havilo reads the row as the seed it is — creating a stub for each entity, typing the relationship, leaving a slot for the real record to arrive. By the time someone logs in, the network is already there.
The types are read from the column headers and from the prose of your notes. The system doesn't guess — it reads, and it asks when it can't.
A mentioned entity waits. When its real record arrives — by import, by enrichment, by a meeting transcript — the stub becomes substance. No duplicates.
One partner's export. A network already knit together before the first login — because every row named people the row itself never explicitly listed.
Bring the CSVs, the SQLite dumps, the decade of decks. Havilo reads them into a network that already knows itself — reconciled by Tuesday, relational by the time anyone logs in.