weavatrix-refactor-plan 0.1.1

Evidence metadata, validation profiles, and canonical fingerprints for Weavatrix refactor plans
Documentation
#![forbid(unsafe_code)]
#![doc = include_str!("../README.md")]

mod canonical;
mod code;
mod conversion;
mod error;
mod evidence;
mod evidence_validation;
mod extension;
mod fingerprint;
mod limits;
mod metadata;
mod operation;
mod parser;
mod path;
mod structure;
mod validation;

pub use code::{ScopeKind, StatusCode, SubjectKind, UncertaintyCode, WarningCode};
pub use conversion::{
    attach_annotations, detach_annotations, extract_annotations, replace_annotations,
};
pub use error::{PlanError, PlanErrorCode};
pub use evidence::{
    CompletenessProof, EvidenceScope, GraphRevision, NotModified, PlanAnnotations, PlanEvidence,
    PlannerIdentity, TypedSubject, UncertainReference,
};
pub(crate) use fingerprint::fingerprint_validated;
pub use fingerprint::{
    FINGERPRINT_ALGORITHM, FingerprintParseError, PlanFingerprint, canonical_plan_bytes,
    canonical_plan_bytes_with_limits, fingerprint_plan, fingerprint_plan_with_limits,
};
pub use limits::{PlanStats, RefactorPlanLimits};
pub use operation::{
    CreateFile, CreatePermissions, DeleteFile, REFACTOR_PLAN_SCHEMA, RefactorOperation,
    RefactorPlan, RenameFile,
};
pub use parser::parse_refactor_plan;
pub use path::{portable_path_key, validate_plan_path};
pub use validation::{
    ValidatedConsumerPlan, ValidatedExecutorPlan, ValidatedPlannerPlan, ValidatedRefactorPlan,
    validate_consumer_plan, validate_executor_plan, validate_planner_plan,
};

/// Direct access to the lower-level edit crate for advanced consumers.
pub use weavatrix_edit;
pub use weavatrix_edit::{
    ApplyLimits, BatchLimits, BorrowedFileEdit, Completeness, EDIT_PLAN_SCHEMA, EditError,
    EditPlan, EditValidationStats, ErrorCode, FILE_EDIT_RESERVED_EXTENSION_KEYS, FileEdit,
    LineIndexLimits, MAX_PLAN_OPERATION_BYTES, PlanLimits, Position, PositionEncoding, Provenance,
    TextEdit, TextRange, ValidatedEditPlan, WriteSummary, apply_edits_with_limits,
    prepare_edits_with_limits, validate_edit_plan, validate_file_edits,
};

/// This crate's package version.
pub const VERSION: &str = env!("CARGO_PKG_VERSION");