claudex 0.12.0

Reusable library for indexing and querying Claude Code, Codex, Copilot, Pi, and OpenClaw coding sessions
Documentation
1
2
3
4
5
6
7
8
9
10
11
use chrono::{Local, LocalResult, NaiveDate, NaiveDateTime, NaiveTime, TimeZone};

pub fn local_day_start_ms(date: NaiveDate) -> i64 {
    let midnight = NaiveTime::from_hms_opt(0, 0, 0).expect("valid time");
    let local_midnight = NaiveDateTime::new(date, midnight);
    match Local.from_local_datetime(&local_midnight) {
        LocalResult::Single(dt) => dt.timestamp_millis(),
        LocalResult::Ambiguous(a, b) => a.min(b).timestamp_millis(),
        LocalResult::None => local_midnight.and_utc().timestamp_millis(),
    }
}