Classify session memory text into a semantic type using zero-cost regex patterns.
Returns one of: “decision”, “problem”, “milestone”, “preference”, or “” (unclassified).
Derive a subsystem room label from a file path.
Uses path segments, filenames, and repo-role hints to map files into
stable subsystem rooms. Falls back to the first directory component or
“root” when no stronger signal exists.