Skip to main content

mockforge_contracts/
lib.rs

1// Pedantic/nursery lints inherited from workspace; allow the most common stylistic ones
2// since this code was extracted from mockforge-core which has the same lints.
3#![allow(
4    clippy::uninlined_format_args,
5    clippy::must_use_candidate,
6    clippy::missing_const_for_fn,
7    clippy::doc_markdown,
8    clippy::return_self_not_must_use,
9    clippy::cast_precision_loss,
10    clippy::cast_possible_truncation,
11    clippy::cast_lossless,
12    clippy::cast_sign_loss,
13    clippy::use_self,
14    clippy::unused_self,
15    clippy::unused_async,
16    clippy::map_unwrap_or,
17    clippy::format_push_string,
18    clippy::module_name_repetitions,
19    clippy::redundant_closure_for_method_calls,
20    clippy::option_if_let_else,
21    clippy::items_after_statements,
22    clippy::significant_drop_tightening,
23    clippy::future_not_send,
24    clippy::cognitive_complexity,
25    clippy::too_many_lines,
26    clippy::missing_errors_doc,
27    clippy::missing_panics_doc,
28    clippy::similar_names,
29    clippy::needless_pass_by_value,
30    clippy::implicit_hasher,
31    clippy::struct_excessive_bools,
32    clippy::if_not_else,
33    clippy::match_wildcard_for_single_variants,
34    clippy::float_cmp
35)]
36
37//! Contract testing, drift detection, and incident management for MockForge
38//!
39//! This crate contains the independently extractable contract-related modules
40//! from `mockforge-core`, including:
41//!
42//! - **consumer_contracts**: Consumer-driven contract tracking and violation detection
43//! - **contract_validation**: Contract validation types and CI/CD pipeline integration
44//! - **incidents**: Incident management with Jira/Slack integrations
45//! - **contract_drift**: Drift detection types, consumer mapping, fitness functions, and forecasting
46//! - **diff_types**: Core diff analysis types shared across contract modules
47//! - **protocol**: Protocol type enumeration
48
49pub mod consumer_contracts;
50pub mod contract_drift;
51pub mod contract_validation;
52pub mod diff_types;
53pub mod error;
54pub mod incidents;
55pub mod protocol;
56pub mod schema_diff;
57
58pub use error::{ContractError, Result};