Lex Browse everything
For developers

Repositories

Five published repositories, and why evidence, dataset, product and release authority are kept apart.

Lex is five published repositories, not one. The split is deliberate: publisher evidence, the derived dataset, the product and the authority that signs releases have different lifetimes, different licences and different people who may write to them.

What is published

Repository Holds Role
lex The applications (Lex.Ingest, Lex.Mcp.Stdio, Lex.Web, Lex.Ask), the legal model, the index reader, the MCP tool core, the site, the golden suite, the spec and this dossier. The product. Everything here is code and documentation; it contains no law and no index.
lex-corpus-lu-legilux Luxembourg publisher evidence and the provisions derived from it, as human-readable JSON under works/, plus a manifest.json. One corpus repository per publisher. The tree carries the legislative history and git log carries the ingest history, deliberately not the same axis.
lex-corpus-eu-eurlex The same structure for EUR-Lex. Keeping publishers apart means a bad ingest from one can never rewrite the other, and each carries its own licence and attribution.
lex-articles The per-article dataset with catalog.json, generation.json, a schema and worked examples. The consumable output, published under CC-BY for retrieval systems that must filter by validity before similarity.
lex-ops Publication workflows, the fleet scripts and the assistant evaluation publisher. Release authority, held apart from the product it releases. The signing key lives here on disk and is never committed.

Why the product repository holds no data

The corpus is evidence and the index is a build output, so neither belongs beside the code that reads them. The index is roughly 947 MB, is gitignored, and is baked into the container image at build time. A container built from this repository alone therefore mounts zero indexes and must answer no_corpus_mounted rather than an empty list, which is the difference between saying nothing is held and saying nothing exists.

Working directories that are not repositories

Several sibling directories look like repositories and are not. Four are git worktrees of lex checked out on feature branches, so their contents are branches of the product, not separate history. Two more are local build outputs with no remote: one holds a built index database, the other holds compressed provision exports. None of the six is published, and none should be cited as a source.

Separation of authority

The evaluation that gates a release is authored in lex and published from lex-ops, by a different identity, against a catalog whose exact bytes the project owner has signed. That is separation from the catalog author, not third-party review or external audit, and the release page states it in those terms. The same boundary is why the signing key sits in the operations repository and the product repository can neither read nor produce a signature.