eliciter-core 0.1.2

Deterministic, offline kernel for structured discovery interviews modeled as an alignment mechanism: an event-sourced claim ledger where claims are hypotheses, standing is computed, contradictions are detected structurally, and a plan-readiness gate reports whether the spec survived falsification.
Documentation

eliciter-core

crates.io docs.rs License: Apache-2.0

The deterministic, offline kernel behind eliciter — a structured-discovery interview engine modeled as a falsification-based alignment mechanism.

Claims are hypotheses, not facts. Their standing (open → challenged → withstood / disproven) is computed — a pure fold over an append-only event log — never stored. Exact-match detectors flag intra-spec and spec-vs-reality contradictions over caller-supplied canonical identity; a deterministic readiness gate reports whether the spec has survived falsification. No LLM, no network, no fuzzy matching — which is what makes the whole kernel golden-testable.

use std::sync::Arc;
use eliciter_core::{Engine, FilesystemStore};

let store = FilesystemStore::new("/tmp/elicitation")?;
let engine = Engine::new(Arc::new(store));

let state = engine.open_session("design-review", None)?;
// ... append claims/evidence ...
let report = engine.readiness("design-review")?;
println!("ready to plan? {}", report.ready);
# Ok::<(), eliciter_core::EngineError>(())

The MCP server façade lives in the eliciter crate; this crate has no MCP or network dependency. See the root README for the tool surface and docs/spec.md for the full design.

License

Apache-2.0.