generated from nhcarrigan/template
c5feb9b43c
The memory file list now shows human-readable titles instead of raw
filenames wherever possible.
- Rust: adds `MemoryFileInfo { path, heading }` and updates
`MemoryFilesResponse` to use `Vec<MemoryFileInfo>`; adds
`extract_first_heading()` helper that scans the first `# Heading`
from a file's content; both `list_memory_files_native` and
`list_memory_files_via_wsl` now read each file and populate the
heading field; raw filename remains available as a fallback
- Frontend: updates `MemoryBrowserPanel.svelte` to use the richer type;
adds `getDisplayName()` which returns the heading or falls back to the
raw filename; file buttons use the display name with the raw filename
as a tooltip; the viewer header also shows the display name with the
filename shown as a subtitle when a heading is present
- Tests: 8 new Rust unit tests for `extract_first_heading` (happy path,
edge cases, empty content, whitespace); 12 new TypeScript tests for
`getFileName` and `getDisplayName` mirrored from the component