Engine
Operational substrate for a regulatory-tech law practice.
Origin
A law firm at the intersection of compliance, entity structuring, and tokenization runs into a documents-versus-data problem on day one. Most legal tech treats matters as folders of documents and then sells search on top. That works at scale for litigation; it fails at the scale where the same opinion needs to inform a different transaction six months later.
Problem
What a regulatory practice actually wants is a graph: matters connect to entities, entities to opinions, opinions to compliance findings, findings to filings, filings back to matters. A folder hierarchy can't represent that. A vector store can search for it but can't enforce structure on it. The substrate has to know the difference between a matter and an entity, and between an opinion and an artifact.
Approach
Postgres-first. Matters, entities, opinions, and compliance findings are first-class rows with explicit relationships. The graph is the model; documents hang off it. AI assistance is a thin layer on top via MCP — assistants navigate the graph, never the raw filesystem; humans stay in the loop on every legal artifact.
Methodology
Versioning is structural, not file-based. An opinion has a row; the row has a history; the history is queryable. A compliance finding has explicit linkage to the regulation it cites and the matter it informed. AI calls into the graph through scoped MCP tools — generate-summary, find-related-opinions, surface-conflicting-findings — and never returns a legal conclusion as its own.
Selected milestones
- In production for a regulated client
Open questions
- Where the line is between AI-assisted drafting and unauthorized practice of law
- How to version an opinion across regulatory regime changes
- What 'queryable as a single graph' looks like once the firm scales beyond a single client
Ask me about
- How AI assists without crossing the line into unauthorized practice
- What 'queryable as a single graph' looks like for legal opinions
- How matters and entities are kept distinct in the schema
- What the AI is allowed to draft and what it is not