Skip to main content

recon_cli/
lib.rs

1//! Library surface for integration tests and downstream crates.
2//!
3//! The `recon-cli` crate is primarily a binary; this `lib.rs` exposes the
4//! minimal internal paths required by `tests/script_ai_it.rs`. Nothing
5//! here is part of a public API guarantee.
6//!
7//! We deliberately do NOT re-export the full `script` module tree because
8//! that tree depends on `cli::Args` and hundreds of other internal modules.
9//! Instead we mirror only the `script::bindings::ai` path the tests need,
10//! using `#[path]` so Rust finds the source files in their real location
11//! under `src/script/bindings/ai/`.
12
13pub mod config;
14
15// The real `ai/` module tree, pointed at the actual source files via
16// `#[path]`. Compiled independently of the binary's module tree.
17#[path = "script/bindings/ai/mod.rs"]
18pub(crate) mod ai_impl;
19
20/// Mirrors the `script::bindings::ai` import path used by integration tests.
21pub mod script {
22    pub mod bindings {
23        pub mod ai {
24            pub mod backend {
25                pub use crate::ai_impl::backend::*;
26            }
27            pub mod request {
28                pub use crate::ai_impl::request::*;
29            }
30            pub use crate::ai_impl::register_with_registry;
31        }
32    }
33}