Documentação

Reprodutibilidade - LeanCTX

Reprodutibilidade

Como tornar execuções de agentes reprodutíveis: inputs estáveis, políticas explícitas, persistência de sessão e gates de verificação.

O que deve permanecer estável

A reprodutibilidade começa com inputs estáveis - o grafo de ferramentas só é determinístico se o ambiente for.

  • Mesma raiz de projeto + caminhos permitidos
  • Mesma configuração e política de memória
  • Mesmo código + dependências (lockfiles)

Políticas como contrato

Configurações de memória e verificação definem o que é persistido e quais verificações devem ser mantidas.

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

[verification]
enabled = true

Dica: versione e revise mudanças de política.

Artefatos de sessão

Sessões capturam o que aconteceu: chamadas de ferramentas, escritas de memória, relações e saídas.

# 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: "..." })

Gates CI

Trate clippy/tests + verificações como gates de qualidade inegociáveis.

# 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: exemplos end-to-end

Execute integrações reais contra um servidor em execução (sem dados de teste).

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