ablative docs
↑↓ move↵ openesc close
Stack Notebook ablative.com.au

Haematite

A versioned record store with branches, checked queries, relations, vectors and configurable history retention.

Open .md

Haematite keeps records in named collections. Every write adds a new version. Nothing is edited in place. A record can be read as it was while that version is retained.

History retention decides how long old versions stay readable. Reclaim returns space after no retained root reaches it. A branch is a line of versions you can fork, write on and merge back. A query is a short pipeline, checked word by word before anything is read.

What you get

One command. The same haematite binary runs the store, serves the Studio for people, and serves MCP for agents.

Versions you can trust. A record’s history is kept. A reader can ask for any retained version a branch has seen.

Branches. Fork a branch, let a person or an agent work on it, review the difference, merge it. The merge checks the supplied source version and refuses a changed target.

Reclaim. The vacuum plans from every known pin and refuses policy blockers before deleting.

Checked queries. A wrong stage is refused with its name and the span of text that caused it. Nothing is guessed.

Search by meaning. Records can carry vectors. Two stages read them by cosine, Euclidean or dot distance.

One query, end to end

match (c:patients)-[:admitted_to]->(w:wards)<-[:staffed_by]-(n:nurses)

That reads patients, the wards they were admitted to, and the nurses staffing those wards. Two edge hops across three records, in one line.