pub fn resolve_transcript_path(
requested: &str,
roots: &IngestRoots,
) -> Result<String, MemoryError>Expand description
Resolve a compile_transcript transcript’s path field (V2b-2): the same
ordered security pipeline as resolve_fragments’s path handling
(steps 4 through 8 below), but with MAX_TRANSCRIPT_BYTES in place of
MAX_INGEST_FILE_BYTES — a transcript is the one caller-facing shape
allowed to read past the ordinary 1 MiB fragment ceiling, because
super::segment::segment_transcript segments it into sub-1-MiB pieces
immediately after this read, never compiling it as one oversized
fragment. roots must already be checked enabled by the caller (the MCP
adapter mirrors resolve_fragments’s step 2 before calling this).
§Errors
MemoryError::IngestPath for a relative path, an unreadable path, a
non-plain-file, or non-UTF-8 content; MemoryError::IngestOutsideRoots
when the canonicalized path escapes every root; MemoryError::ContextOverLimit
when the file exceeds MAX_TRANSCRIPT_BYTES.
pub, not pub(crate) — like resolve_fragments, part of the public
context::ingest surface (the mcp adapter is its first caller, but the
module itself only requires context; a build with context and no
mcp would otherwise flag this crate-internal-only function dead code).