Skip to main content

aaai_core/
lib.rs

1//! # aaai-core v0.4.0
2//!
3//! Core engine for **aaai** (audit for asset integrity).
4//!
5//! # Module map
6//!
7//! ```text
8//! aaai-core
9//!   ├── config    — AuditDefinition and its YAML I/O
10//!   ├── diff      — parallel folder walker, DiffEntry (binary + stats), ignore patterns
11//!   ├── audit     — match DiffEntries → AuditResult; large-file warnings
12//!   ├── report    — Markdown / JSON report generation (with optional masking)
13//!   ├── history   — append-only audit run log (~/.aaai/history.jsonl)
14//!   ├── masking   — regex-based secret masking engine
15//!   ├── project   — .aaai.yaml project-level config
16//!   ├── templates — built-in rule templates
17//!   └── profile   — named before/after/definition presets
18//! ```
19
20// SPDX-License-Identifier: Apache-2.0
21
22pub mod audit;
23pub mod config;
24pub mod diff;
25pub mod history;
26pub mod masking;
27pub mod profile;
28pub mod project;
29pub mod report;
30pub mod templates;
31
32pub use audit::engine::{AuditEngine, AuditOptions};
33pub use audit::result::{AuditResult, AuditStatus, AuditSummary, FileAuditResult};
34pub use config::definition::{AuditDefinition, AuditEntry, AuditStrategy};
35pub use diff::engine::DiffEngine;
36pub use diff::entry::{DiffEntry, DiffStats, DiffType, LARGE_FILE_THRESHOLD};
37pub use diff::ignore::IgnoreRules;
38pub use diff::progress::{DiffProgress, ProgressSink, ChannelProgress, NullProgress};
39pub use masking::engine::MaskingEngine;
40pub use report::generator::ReportGenerator;