Six principles shape how {{product.name}} is built.
They come from the code and the team's own engineering guidance. Where one is not fully met yet, we say so.
Services stand alone.
Each backend has its own project, Dockerfile and Helm chart, and can be used without the UI.
The model is swappable.
Services name models by gateway alias, so changing a model is a gateway change, not a code change. Two settings still bypass the gateway today.
Only parsing is per jurisdiction.
Fetching and parsing legislation differ by country. The graph model, extraction and storage are shared, so a new country needs a parser and a registry entry, not a fork.
People review the AI.
Every AI step is meant to be explainable and reviewable by a caseworker. Explainability and feedback services, in development, support that.
Inputs are screened.
Most services that call an LLM pass inputs through a prompt-injection check, based on OWASP LLM01, before they reach the model.
Events are logged for audit.
Business events go through bizlog, a structured audit-logging library. Durable storage for the audit trail is in progress.