Skip to main content

manta_shared/
lib.rs

1//! Shared library used by both `manta-cli` and `manta-server`.
2//!
3//! Top-level modules:
4//!
5//! - [`shared`] — wire-shaped data (request `*Params`, response DTOs,
6//!   cluster-status helpers). Genuinely used by both binaries.
7//! - [`common`] — behavioural helpers. Mixed audience: the
8//!   `config` loader and `error` types are bi-binary by use;
9//!   `app_context`, `log_ops`, and `sat_file` are CLI-only;
10//!   `audit`, `kafka`, and `jwt_ops` are server-only after the CLI
11//!   lost its audit emission. The single-binary entries live here
12//!   until a per-binary split happens.
13//!
14//! The backend bridge (`StaticBackendDispatcher`, the CSM/OCHAMI trait
15//! impls, and `authorization` helpers that take a `&StaticBackendDispatcher`)
16//! lives in `manta-server`; the CLI never reaches it.
17
18// Every public item in this crate must carry a `///` doc comment.
19// We're a publishable crate (`publish = true`); the docs.rs page is
20// the primary external interface and stale-or-missing docs there are
21// user-facing. CI's `cargo doc` step keeps this honest.
22#![deny(missing_docs)]
23
24pub mod common;
25pub mod shared;