401 Not Handled in Data-Fetching Components
Components that fetch data (groups, projects, etc.) do not handle 401 responses
gracefully — they crash when the API returns an error object instead of an array.
Should show an appropriate message or redirect to login.
Code Editor Needs Click to Show Content
The code editor's content is not rendered immediately — it needs a click to show up.
This happens when selecting a fresh new tab or when a file is selected.
Right Panel Has No Default Content
The Right panel is empty by default and relies on manual tab dragging to populate.
Should show a placeholder or hint explaining what to do.
Portrait Mode Section Switcher Not Wired
The secondary section switcher in portrait mode (when a panel has multiple
side-by-side sections) is not yet functional.
Projects Lookup/Editing Broken
Fixed. GET /api/projects now filters to owner-or-member only. All file routes
(tree, read, write, rename, delete) go through checkAccess() in projectAccess.ts.
Delete and member-management routes verify ownership. A single memberMatchesUser()
function centralises the comparison so migrating from email to user ID later
requires changing one line.
Member List Shows Raw UUIDs
Fixed. Members are now stored by email (Option B interim). The member panel
shows the owner's email first, then added members by email with their role badge.
Add-member form takes an email address and role; the member_type select is gone.