pub(crate) mod code;
pub(crate) mod code_controls;
pub(crate) mod code_wire;
pub(crate) mod editor;
pub mod effects;
pub mod session;
pub mod signals;
#[cfg(test)]
mod tests {
#[test]
fn the_chat_module_reaches_nothing_daemon_wide() {
let sources = [
("code.rs", include_str!("code.rs")),
("code_wire.rs", include_str!("code_wire.rs")),
("code_controls.rs", include_str!("code_controls.rs")),
("editor.rs", include_str!("editor.rs")),
("effects.rs", include_str!("effects.rs")),
("session.rs", include_str!("session.rs")),
];
let forbidden = [
"crate::daemon",
"crate::metering",
"crate::policy",
"MeteringStore",
"bitrouter_sdk::config",
"control_socket",
"DaemonRouteControl",
"DaemonSessionCost",
"LocalControllerBinding",
"StatusReport",
"ModelsReport",
"RouteReport",
"SkillsReport",
"CommandsReport",
"for_stdout",
];
for (name, source) in sources {
for reach in forbidden {
assert!(
!source.contains(reach),
"{name} reaches `{reach}`; the chat module draws what ACP \
carries and what the terminal is, and nothing else"
);
}
}
}
}