Skip to main content

cortex_reflect/
lib.rs

1//! Reflection pipeline: LLM proposes, Rust validates and records audit-ready candidates only.
2#![warn(missing_docs)]
3
4use cortex_core::CortexResult;
5use cortex_llm::LlmAdapter;
6
7pub mod admission;
8pub mod authority;
9pub mod error;
10pub mod orchestrate;
11pub mod parse;
12pub mod principles;
13pub mod quarantine;
14pub mod schema;
15
16pub use admission::{
17    admission_request_for_memory, axiom_admission_proof_closure_invariant,
18    reflection_memory_proof_state, require_reflection_durable_admission_allowed,
19    validate_reflection_admission, ReflectionAdmissionDisposition, ReflectionAdmissionError,
20    ReflectionDurableAdmissionRefusal, REFLECTION_ADMISSION_PROOF_CLOSURE_INVARIANT,
21};
22pub use authority::{validate_reflection_authority, ReflectionAuthorityError};
23pub use error::ReflectError;
24pub use orchestrate::{
25    reflect, PersistedMemoryCandidate, ReflectOrchestrationError, ReflectionRejection,
26    ReflectionReport, ReflectionReportStatus, DEFAULT_REFLECTION_MODEL,
27};
28pub use parse::{
29    parse_principle_candidates, parse_reflection, principle_candidate_batch_json_schema,
30    session_reflection_json_schema,
31};
32pub use principles::{
33    extract_candidates, extract_deterministic_candidates, AcceptedMemory, PrincipleExtractionError,
34    PrincipleExtractionWindow, DEFAULT_PRINCIPLE_EXTRACTION_MODEL, MIN_SUPPORTING_DOMAINS,
35    MIN_SUPPORTING_MEMORIES,
36};
37pub use quarantine::{quarantine_record, REFLECTION_QUARANTINE_OPERATION};
38pub use schema::{
39    EpisodeCandidate, InitialSalience, MemoryCandidate, MemoryType, PrincipleCandidate,
40    PrincipleCandidateBatch, SessionReflection,
41};
42
43/// Runs the reflection stub against an adapter (no store mutation yet).
44pub fn reflect_stub(adapter: &dyn LlmAdapter) -> CortexResult<()> {
45    tracing::debug!(adapter = adapter.adapter_id(), "reflection stub");
46    Ok(())
47}