"""teaching — correction capture, review, and proposal-only pack mutation. The teaching loop allows CORE to learn from corrections in a controlled, auditable way. Corrections flow through three stages: 1. Capture — extract a CorrectionCandidate from a correction intent 2. Review — validate the candidate (identity-safe, bounded, deterministic) 3. Store — persist reviewed examples; propose pack mutations without applying Identity overrides are rejected at the review stage. Pack mutations are emitted as proposals (PackMutationProposal) that require explicit external approval before they touch the vocabulary manifold. """ from teaching.correction import CorrectionCandidate, extract_correction from teaching.epistemic import ADMISSIBLE_AS_EVIDENCE, EpistemicStatus, parse_status from teaching.metric_set import MetricSet from teaching.review import ReviewedTeachingExample, ReviewOutcome, review_correction from teaching.store import TeachingStore, PackMutationProposal __all__ = [ "ADMISSIBLE_AS_EVIDENCE", "CorrectionCandidate", "EpistemicStatus", "MetricSet", "PackMutationProposal", "ReviewedTeachingExample", "ReviewOutcome", "TeachingStore", "extract_correction", "parse_status", "review_correction", ]