//! kkernel — khive admin/management library.
//!
//! See [ADR-076](../../docs/adr/ADR-076-kkernel-and-mcp-split.md) for the
//! kernel/MCP split rationale. This library exposes the building blocks that
//! the `kkernel` binary composes into subcommands:
//!
//! - [`sync`] — build a queryable SQLite DB from NDJSON sources (issue #174).
//! - [`pack_introspect`] — enumerate registered packs and their handler surface.
//!
//! Migration and other admin operations will land here as separate modules.
// Force the pack crates into the binary so their `inventory::submit!` blocks
// run at startup. Cargo deps alone are not enough — the linker drops crates
// whose symbols aren't referenced, and `inventory` registration is one such
// dropped symbol. The simplest way to keep them is to re-export a marker
// type that the binary sees. We don't expose these in the public API; the
// `#[allow(unused_imports)]` makes the intent explicit.