codebase-graph 1.1.5

Native codebaseGraph CLI and MCP server for local code knowledge graphs.
use super::timing::elapsed_seconds;
use crate::error::NativeError;
use crate::protocol::{NativeSyntaxMaterializationRequest, NativeSyntaxMaterializationResponse};
use crate::scan;
use std::collections::BTreeMap;
use std::time::Instant;

pub fn plan_syntax_materialization(
    request: &NativeSyntaxMaterializationRequest,
) -> Result<NativeSyntaxMaterializationResponse, NativeError> {
    let mut phase_timings = BTreeMap::new();
    let scan_started = Instant::now();
    let scan = scan::scan_source_state(request)?;
    phase_timings.insert("scan_seconds".to_string(), elapsed_seconds(scan_started));
    Ok(NativeSyntaxMaterializationResponse::skipped(
        scan.snapshots,
        scan.diff,
        scan.diagnostics,
        Vec::new(),
        phase_timings,
    ))
}