fabro/apps/fabro-web
Bryan Helmkamp 67ad1f520f
fix(web): debounce dev watcher and ignore non-source events
macOS recursive fs.watch fires multiple events per logical save and emits
spurious "bubble" events for sibling directories. With the previous slow
~10s tailwind step those re-fires were absorbed between rebuilds; with
~60ms rebuilds the watcher entered a continuous-rebuild loop instead.

- Coalesce events with a 75ms debounce window so one save fires one
  rebuild even when the editor produces several FS events.
- Filter to source-relevant extensions (ts/tsx/css/html/images/fonts);
  ignore .DS_Store, .tsbuildinfo, swap files, and the extensionless
  bubble events (e.g. "rename images") that were the dominant source
  of the loop.
- Optional FABRO_BUILD_DEBUG=1 logs which path queued or skipped each
  rebuild for future diagnosis.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 11:01:06 -04:00
..
app fix(web): virtualize run file diffs consistently 2026-05-05 16:41:39 -04:00
public/images chore(web): namespace static images under /images and skip in HTTP logs 2026-04-30 08:57:14 -04:00
scripts fix(web): debounce dev watcher and ignore non-source events 2026-05-06 11:01:06 -04:00
.dockerignore Rename Arc to Fabro in TypeScript/JavaScript 2026-03-12 11:13:18 -04:00
.gitignore Rename Arc to Fabro in TypeScript/JavaScript 2026-03-12 11:13:18 -04:00
index.template.html chore(web): namespace static images under /images and skip in HTTP logs 2026-04-30 08:57:14 -04:00
package.json feat(web): add Trees-based file tree sidebar to Files Changed tab 2026-04-25 08:32:11 -04:00
tsconfig.json Fix login route collision after SPA cutover 2026-04-01 21:55:30 -07:00