//! Build script: compile the single-source-of-truth proto with `prost-build`.
//!
//! This is the real codegen step. It runs every `cargo build`, invokes `protoc`
//! (which must be on PATH; libprotoc 35 is what the rest of `clients/` targets),
//! and emits `$OUT_DIR/llmleaf.v1.rs`. `src/pb.rs` then `include!`s that file so the
//! prost-generated messages are genuinely part of the crate — proof the schema
//! compiles and a typed mirror available to consumers under `llmleaf_client::pb`.
//!
//! The public SDK types and the HTTP transport are hand-written serde structs (see
//! `src/types.rs`): prost's generated types do not serialise to the OpenAI/OpenRouter
//! JSON wire (oneofs, enum casing, snake_case content unions), so prost compiles the
//! proto while serde drives the wire.
use PathBuf;