Professional Systems
Active development

Justitia

A trilingual legal-research workspace for Luxembourg firms that keeps matter access, source passages, generated candidates, claims, citations, and review states inspectable.

Category
Professional Systems
Platform
Web
Status
Active development

What if legal research assistance exposed each claim, source, and review state?

Structured intake, permission-filtered retrieval, immutable candidate versions, claim and citation extraction, durable processing, and explicit unverified states keep assistance traceable without replacing lawyer judgment.

User value

Move from a legal question to an inspectable research candidate.

Work inside a firm and matter, retrieve permitted evidence, generate versioned candidate text, and inspect extracted claims and citations without confusing the result with reviewed legal work.

01

Control the matter scope

Apply firm membership, matter permissions, restricted access, selected documents, jurisdictions, languages, dates, and source scope before research begins.

02

Keep evidence visible

Retain exact passages, source identity, version, language, jurisdiction, dates, provenance, and retrieval limitations with each candidate source.

03

Separate generation from approval

Create immutable work-product candidates with unverified and not-reviewed states, then treat claim extraction, citation identity, support, and human review as separate stages.

Features

A guided legal-research path.

The current implementation connects secure workspace boundaries, documents, research intake, evidence retrieval, candidate generation, and initial claim analysis.

  1. 01

    Trilingual workspace

    Use the application and research contracts in English, French, or German within the initial Luxembourg legal-work setting.

  2. 02

    Firm and matter controls

    Authenticate through OIDC, manage memberships and invitations, restrict matters, and reapply authorization at service boundaries.

  3. 03

    Versioned document evidence

    Upload immutable document versions, extract and index their content, and select which versions may participate in a research session.

  4. 04

    Structured research intake

    Record the question, languages, jurisdictions, temporal scope, facts, uncertainties, assumptions, exclusions, source scope, depth, audience, and review level as versioned revisions.

  5. 05

    Permission-filtered retrieval

    Assemble exact candidate passages from selected matter documents and the configured corpus while preserving provenance and limitations.

  6. 06

    Candidate and claim analysis

    Create an immutable unverified answer candidate where generation is configured, then extract material claims and parse citation-shaped references as separate work.

How it works

Define the question, gather evidence, inspect the candidate.

The implemented flow guides legal research without presenting the generated result as a verified opinion.

  1. 01

    Enter the authorized matter

    Establish the user, firm, membership, permissions, and restricted-matter context before accessing legal material.

  2. 02

    Prepare the document set

    Upload immutable versions, wait for extraction and indexing, and explicitly select the versions permitted for the session.

  3. 03

    Complete the guided intake

    Describe the question, legal context, jurisdictions, date, languages, facts, uncertainties, source scope, and requested review level.

  4. 04

    Retrieve candidate evidence

    Run permission and source-policy filtered retrieval and inspect exact passages, metadata, provenance, and limitations.

  5. 05

    Generate an immutable candidate

    Select evidence and create a new work-product version when a configured generation adapter is available.

  6. 06

    Begin claim-level review

    Extract material claims and parsed citations while support verification, jurisdiction, temporal validity, contradictions, human review, and sign-off remain separate later stages.

Product concept

The material legal claim is the review unit.

One document can mix supported, unsupported, stale, foreign, uncertain, or contradictory propositions, so a single document score cannot represent its legal quality.

01

Fluency is not verification

Generated prose remains a candidate until source identity, evidentiary support, jurisdiction, time, contradictions, and human judgment are addressed.

02

Exact versions matter

Intake revisions, source passages, document versions, generated candidates, claims, citations, and later review decisions require stable identities and history.

03

Responsibility remains human

Automation can organize evidence and guarded work, but it cannot stand in for lawyer approval, supervisor sign-off, client delivery, or legal correctness.

Architecture

A modular monolith with durable, separated stages.

A Next.js web layer, FastAPI application, shared Python domain packages, PostgreSQL, object storage, and background workers keep legal state durable while separating retrieval, generation, verification, and review decisions.

  1. 01Secure browser session and matter context
  2. 02Versioned Research intake
  3. 03Permission-filtered evidence retrieval
  4. 04Immutable candidate work product
  5. 05Claim extraction and citation parsing
  6. 06Later verification and human review

Authorization precedes retrieval

Firm membership, matter permissions, restricted access, selected documents, and source policy are reapplied before candidates can affect rankings or generation.

Accepted work is durable

PostgreSQL remains authoritative for product and task state, while a transactional outbox, scheduler, Celery workers, and checkpoints make background stages recoverable.

Matter and public corpora stay separate

Confidential files, derived artifacts, public-source material, and their object-storage namespaces and indexes retain distinct boundaries.

Fixtures cannot become production claims

Deterministic local and test adapters are rejected in production-like modes. No live official source, production model, notification, or EyeTrustAI Risk Gate integration is configured by the repository.

Technology

A deployable legal-work system with explicit provider boundaries.

Web

  • TypeScript
  • Next.js 16
  • React 19
  • Trilingual localization

Application services

  • Python
  • FastAPI
  • Pydantic 2
  • SQLAlchemy 2
  • Alembic

Data and retrieval

  • PostgreSQL
  • Full-text search
  • pgvector
  • S3-compatible object storage
  • MinIO locally

Identity and jobs

  • OpenID Connect
  • Server-held sessions
  • Celery
  • Redis coordination
  • Transactional outbox

Current boundary

  • Synthetic local and test corpus
  • No approved live providers
  • No active production Risk Contract
  • Private deployment planned

Development

The research path works. Verification and legal review are incomplete.

The repository implements firms, restricted matters, document versions, extraction, indexing, structured Research intake, durable retrieval, candidate generation, claim extraction, and citation parsing. It does not establish verified legal work, official live-source coverage, production provider quality, complete review and supervision, private deployment availability, or public release.

Stage
Active development
Languages
English · French · German
Targeted Python tests
85 passed
Legal verification
Incomplete

Implemented

  • Next.js application, FastAPI API, shared domain packages, worker and scheduler roles, migrations, and generated API client
  • OIDC browser sessions, firm membership and invitations, permissions, matters, restricted access, and authorization regression coverage
  • Immutable document versions, extraction artifacts, isolated object storage, indexing, and permission-filtered retrieval
  • Eight-source Luxembourg and EU registry with synthetic local and test ingestion rather than active official sources
  • Versioned guided Research intake, durable retrieval, evidence assembly, immutable candidate generation, claim extraction, and citation parsing
  • Transactional outbox, durable task stages, observability, OCI images, release tooling, and disposable staging foundations

Next evidence

Complete and commit citation-existence checking, then add citation-support, jurisdiction, temporal, and contradiction checks without conflating source identity with evidence. Build structured lawyer review and supervisor sign-off, approve live legal sources and providers, run the full acceptance suites, and capture a publication-cleared synthetic workflow before expanding availability claims.