Documentation

Reproductibilité - LeanCTX

Reproductibilité

Comment rendre les exécutions d'agents reproductibles : inputs stables, politiques explicites, persistance de session et portes de vérification.

Ce qui doit rester stable

La reproductibilité commence par des inputs stables - le graphe d'outils n'est déterministe que si l'environnement l'est.

  • Même racine de projet + chemins autorisés
  • Même configuration & politique mémoire
  • Même code + dépendances (lockfiles)

Les politiques comme contrat

Les paramètres mémoire et vérification définissent ce qui est persisté et quelles vérifications doivent tenir.

# ~/.lean-ctx/config.toml
[memory]
policy = "balanced"

[verification]
enabled = true

Conseil : versionnez et reviewez les changements de politique.

Artefacts de session

Les sessions capturent ce qui s'est passé : appels d'outils, écritures mémoire, relations et sorties.

# Start a server with a fixed project root
lean-ctx serve --host 127.0.0.1 --port 8080 --project-root /path/to/repo
# Example tool calls that leave an audit trail
ctx_session("load", { id: "..." })
ctx_knowledge("remember", { category: "...", key: "...", value: "..." })

Portes CI

Traitez clippy/tests + les vérifications comme des portes qualité non-négociables.

# CI gates / local checks
cd rust
cargo fmt -- --check
cargo clippy --all-features -- -D warnings

# SSOT drift gate (manifest must be up-to-date)
cargo run -q --bin gen_mcp_manifest
git diff --exit-code ../website/generated/mcp-tools.json

# Core tests (deterministic + bounded)
cargo test --all-features -- --test-threads=1

# Lightweight regression checks (stable thresholds)
cargo test -q --test savings_verification

# Proof artifact (machine-readable attestation, no secrets)
cargo run -q --bin lean-ctx -- proof --summary --no-write

Cookbook : exemples end-to-end

Exécutez de vraies intégrations contre un serveur en cours d'exécution (pas de données factices).

cd cookbook
npm ci
npm run memory-playground
npm run graph-explorer