diff --git a/Cargo.lock b/Cargo.lock index a5c245b..0467faf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -628,6 +628,12 @@ dependencies = [ "rand_core 0.10.1", ] +[[package]] +name = "glob" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4eba85ea1d0a966a983acd07deee566e67395d2d96b6fb39e62b5a833f1eb0b" + [[package]] name = "hashbrown" version = "0.17.1" @@ -753,6 +759,26 @@ dependencies = [ "cc", ] +[[package]] +name = "include_dir" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "923d117408f1e49d914f1a379a309cffe4f18c05cf4e3d12e613a15fc81bd0dd" +dependencies = [ + "glob", + "include_dir_macros", +] + +[[package]] +name = "include_dir_macros" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cab85a7ed0bd5f0e76d93846e0147172bed2e2d3f859bcc33a8d9699cad1a75" +dependencies = [ + "proc-macro2", + "quote", +] + [[package]] name = "indexmap" version = "2.14.0" @@ -873,6 +899,21 @@ dependencies = [ "serde_json", ] +[[package]] +name = "mt-protocol" +version = "0.1.0" +source = "git+https://github.com/nitra/mt?branch=claude%2Fmt-protocol-crate#498b7e24c7e2f72af94f47e26008527d97cbdc71" +dependencies = [ + "include_dir", +] + +[[package]] +name = "mt-protocol-check" +version = "0.1.0" +dependencies = [ + "mt-protocol", +] + [[package]] name = "napi" version = "3.11.0" diff --git a/Cargo.toml b/Cargo.toml index 73ab80a..7e5a78b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -7,6 +7,7 @@ members = [ "crates/mt-core", "crates/mt-cli", "crates/mt-napi", + "crates/mt-protocol-check", ] resolver = "2" diff --git a/crates/mt-protocol-check/Cargo.toml b/crates/mt-protocol-check/Cargo.toml new file mode 100644 index 0000000..f307feb --- /dev/null +++ b/crates/mt-protocol-check/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "mt-protocol-check" +description = "Smoke-тест wiring: підтверджує, що git-залежність mt-protocol (nitra/mt) резолвиться, компілюється і контент docs/ доступний" +version.workspace = true +edition.workspace = true +license.workspace = true +repository.workspace = true +publish = false + +[dependencies] +# TODO: перевести на main/тег після мерджу nitra/mt#62 +mt-protocol = { git = "https://github.com/nitra/mt", branch = "claude/mt-protocol-crate" } diff --git a/crates/mt-protocol-check/src/lib.rs b/crates/mt-protocol-check/src/lib.rs new file mode 100644 index 0000000..139fe54 --- /dev/null +++ b/crates/mt-protocol-check/src/lib.rs @@ -0,0 +1,12 @@ +//! Порожній крейт-заглушка: єдине призначення — smoke-тест нижче, що +//! доводить резолвинг git-залежності `mt-protocol` (`nitra/mt`). + +#[cfg(test)] +mod tests { + #[test] + fn mt_protocol_git_dependency_resolves_and_docs_are_reachable() { + let content = mt_protocol::get("index.md") + .expect("mt-protocol::get(\"index.md\") має повернути вміст із вшитого docs/ корпусу"); + assert!(!content.is_empty(), "index.md не має бути порожнім"); + } +}