Skip to content

fix(audit): bootstrap crash, autosave toast, rename validation, tab cleanup, visual polish#42

Merged
srfwb merged 7 commits into
mainfrom
dev
Apr 25, 2026
Merged

fix(audit): bootstrap crash, autosave toast, rename validation, tab cleanup, visual polish#42
srfwb merged 7 commits into
mainfrom
dev

Conversation

@srfwb
Copy link
Copy Markdown
Owner

@srfwb srfwb commented Apr 25, 2026

Summary

Batch of fixes from the ultra-review audit. Addresses 5 bugs and 4 visual issues identified during the April 25 testing session.

What changed

User-facing

  • App no longer crashes on startup if the last-opened project's folder was deleted externally — falls back to the Home view with a console warning.
  • Disk autosave failures now show a red toast ("Impossible de sauvegarder /path sur le disque") instead of silently losing edits.
  • Creating a project when a folder with the same name already exists shows a clean French message instead of leaking a raw path.
  • Renaming a project to a name already used by another project is now rejected with an error.
  • Switching projects clears the previous project's open tabs so ghost tabs don't persist.
  • Project card stagger animation is snappier (25 ms step, 120 ms cap — was 40 ms / 240 ms).
  • Editor tabs show a visible amber underline on keyboard focus.
  • Home rail nav items are now proper <button> elements with hover and focus states instead of inert <div>s.
  • Rail footer links ("Docs et aide", "Nouveautés") show a pointer cursor on hover.

Internal

  • src/projects/bootstrap.ts — try/catch around openProject in bootstrap.
  • src/projects/diskAutoSave.tstoast.error() on write failure.
  • src/projects/actions.ts — friendlier error on duplicate folder, duplicate-name check in renameProject, setState({ openFiles: [], activeFile: null }) before setView("ide") on project switch.
  • src/styles/global.css.tab:focus-visible with amber underline, .home-nav-item hover/focus/disabled states, .home-rail-link cursor pointer, reduced proj-in stagger.
  • src/home/rail/HomeNavItem.tsx<div><button> with optional onClick and disabled.

@srfwb srfwb merged commit fda55b5 into main Apr 25, 2026
2 checks passed
@srfwb srfwb deleted the dev branch April 25, 2026 15:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant