// Rust guideline compliant 2025-10-17
//! Digest and freshness helpers for `tokensave_read` and the edit tools.
//!
//! This module used to back a server-side, cross-session response cache that
//! answered a repeated `tokensave_read` with an "unchanged" stub. The server
//! cannot know what the client still holds (compaction, rewinds, new
//! sessions, subagents), so that decision moved to the client: every body is
//! sent with its digest, and the client passes it back as `if_digest` to get
//! the stub (#650). The `read_cache` table created by the v9 migration is no
//! longer read or written; it stays in the schema so no migration (and no
//! reindex) is needed.
use ;
/// SHA-256 of arbitrary bytes, hex-encoded. Used as the `tokensave_read` body
/// digest a client echoes back as `if_digest`, and by the edit tools.
/// Reads a file's modification time, normalised to nanoseconds since the
/// UNIX epoch. Reported as `mtime_ns` in `tokensave_read` JSON responses.