Summary
zeph-tools depends on zeph-index only for detect_language in search_code.rs. Both are Layer 1 crates — this is a same-layer violation.
Fix: inline language detection and grammar/query setup directly in search_code.rs using the same tree-sitter crates already available in zeph-tools.
Acceptance criteria
zeph-tools/Cargo.toml does not list zeph-index
- All existing structural search tests pass
cargo clippy --workspace --features full -- -D warnings passes
Part of EPIC-01 (issue 01-05)