The old slug-to-path conversion (replace hyphens with slashes) was lossy and wrong for paths containing hyphens. Now infers project_path from the most-frequent observed cwd across session messages, falling back to slug decoding only when no cwd data exists. Adds refreshSessionProjectPaths() to backfill existing sessions on rebuild.