cvkg-spatial 0.3.3

CVKG spatial indexing — QuadTree, BVH, and SpatialHash for platform-wide use
Documentation
//! # CVKG Agentic Development Guidelines (v1.2)
//!
//! All AI agents contributing to this crate MUST follow ALL seven rules:
//!
//! ── Karpathy Guidelines (1–4) ────────────────────────────────────────────
//! 1. THINK FIRST     -- State assumptions. Surface ambiguity. Push back on complexity.
//! 2. STAY SIMPLE     -- Minimum code. No speculative features. No unasked-for abstractions.
//! 3. BE SURGICAL     -- Touch only what's required. Own your orphans. Don't improve neighbors.
//! 4. VERIFY GOALS    -- Turn tasks into checkable criteria. Loop until they pass. Never commit broken.
//!
//! ── CVKG Extended Protocols (5–7) ────────────────────────────────────────
//! 5. TRIPLE-PASS     -- Read the target, its surrounding context, and its full call graph
//!                      at least THREE TIMES before making any edit or revision.
//! 6. COMMENT ALL     -- Every major pub fn, unsafe block, and non-trivial algorithm in
//!                      every .rs/.ts/.h/.wgsl file MUST have a descriptive doc comment.
//!                      Comments describe WHY and WHAT CONTRACT, not HOW mechanically.
//! 7. MONITOR LOOPS   -- Check every tool call / command for progress every 30 seconds.
//!                      After 3 consecutive identical failures, stop, write BLOCKED.md,
//!                      and move to unblocked work. Never silently accept a broken state.
//!
//! Sources:
//  Karpathy: https://github.com/multica-ai/andrej-karpathy-skills
//  CVKG Extended: Section 2 of the CVKG Design Specification

//! CVKG Spatial Indexing — shared spatial data structures for all graph layers.
//!
//! # Why this exists
//! Finding #5 from the crosscrate audit: spatial indexing was absent or
//! duplicated across Scene, Physics, Flow, and Layout. This crate provides
//! one canonical implementation of each structure used platform-wide.

pub mod bvh;
pub mod frustum;
pub mod quadtree;
pub mod spatial_hash;

pub use bvh::{Bvh, BvhNode};
pub use frustum::Frustum;
pub use quadtree::Quadtree;
pub use spatial_hash::SpatialHash;