isLexicallyContained(relativePath: string): boolean
Checks if a relative path is lexically contained within a root.
This is a simple lexical check that rejects paths containing '..' segments.
For symlink-safe containment, use assertRealPathContained.