Lex Browse everything
For developers

Trade-offs

The choices worth challenging and the costs they admit.

An architecture decision is useful only when it names the alternative, the reason and the cost. The complete machine-readable register is rendered at Architecture decisions. This page is the interview path through the choices with the largest product consequences.

ID Choice Rejected alternative Cost admitted
D53 Store repeated wording once and map every dated occurrence to its content hash Duplicate every unchanged provision in every state Readers reconstruct a version through occurrence mappings
D54 Package a pinned local encoder and gate hybrid retrieval by holdout evidence Buy managed search before corpus or traffic requires it Lex owns model packaging, vectors and relevance measurement
D57 Return an explicit publisher gap Synthesize a consolidated text Some states remain metadata-only
D58 Pin trust outside the artifact and sign the complete manifest Trust a public key carried beside the data it authenticates Rotation is an explicit dual-trust release
D75 Admit only source-backed official identity and discovery metadata Manual aliases or model-generated legal identity Publisher vocabularies and collisions become build concerns
D76 Resolve subject first, freeze a typed plan, execute once, compose only on request A ReAct loop with model observation and retries More explicit application contracts
D83 Keep Legilux and EUR-Lex classifications as distinct weak discovery lanes Invent one cross-publisher taxonomy Facets and multilingual alignment remain deferred

Three decisions to challenge

Why no ReAct loop? The measured dangerous failures were identity and evidence failures. Letting a model observe a deterministic refusal and try a different law can convert an honest gap into a plausible answer. One correction before execution fixes contract syntax without changing authority.

Why build semantic retrieval and leave it off? Because architecture is a reversible hypothesis. The vectors and encoder prove the path can run; the frozen holdout decides whether it should serve. The next activation can be category-specific rather than a global switch.

Why not unify taxonomies? EuroVoc and Legilux classifications have different authorities, languages and semantics. Preserving the source scheme makes a match explainable. A unified label would be a new assertion owned by Lex and would need its own governance and evaluation.

Status vocabulary records implementation maturity, not current traffic: shipped means included in the release line, gated means activation still depends on evidence, and planned means no product claim yet. Mounted identities and signed promotion receipts separately establish what a running revision serves.