fabro/lib/crates
Bryan Helmkamp f4cfa50bc4
fix(server): make --watch-web honest and fast
In --watch-web dev mode the server silently fell back to the embedded SPA
snapshot whenever the disk dist/ was missing or partial, so edits to the
web app appeared not to take effect with no error anywhere. This change
makes the dev loop visible and quick:

- static_files plumbs a dev_disk_only flag from RouterOptions.watch_web
  into the fallback handler. When set, embedded fallback is skipped and
  a miss returns 503 with a "build in progress" auto-refresh page.
- The web build script writes each rebuild into apps/fabro-web/.dist-builds/<id>/
  and atomically replaces the dist symlink via rename(2), so requests
  never observe a partially-populated dist tree.
- Tailwind is invoked through node_modules/.bin/tailwindcss directly
  instead of bunx, removing a per-rebuild bun add @latest --force round-
  trip and dropping rebuild time from ~10s to ~250ms.
- load_asset no longer falls through to the workspace dist/ when an
  explicit asset_root is provided, restoring test isolation when a
  real dev build is sitting next door.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 10:36:01 -04:00
..
fabro-agent refactor: simplify token plumbing and parallelize read_many_files 2026-05-06 07:15:18 -04:00
fabro-api Wire end-to-end steering for running agents (#209) 2026-05-05 15:34:16 -04:00
fabro-auth refactor(api): unify secret metadata types 2026-04-29 20:26:13 -04:00
fabro-checkpoint Make git metadata sandbox-native 2026-04-27 21:43:15 -07:00
fabro-cli test(cli): refresh help-text snapshots for backtick-wrapped placeholders 2026-05-06 08:29:53 -04:00
fabro-client fix(system): expose unreadable run repair flow 2026-05-06 07:15:18 -04:00
fabro-config Move GitHub token permissions to [run.integrations.github.permissions] (#215) 2026-05-05 15:33:31 -04:00
fabro-core Cancel in-flight agent stages with CancellationToken (#211) 2026-05-05 09:54:22 -04:00
fabro-dev fix(docs): use MDX comment syntax for generated fences 2026-04-29 01:27:43 -04:00
fabro-devcontainer refactor(static): centralize env var names 2026-04-24 12:29:51 -04:00
fabro-dump Encode stage visits in run stage URLs (#206) 2026-05-05 08:27:11 -04:00
fabro-github fix(github): refresh installation tokens during workflows 2026-05-06 07:15:18 -04:00
fabro-graphviz refactor: simplify Rust review cleanup 2026-05-02 15:41:17 -04:00
fabro-hooks fix(github): refresh installation tokens during workflows 2026-05-06 07:15:18 -04:00
fabro-http refactor(static): centralize env var names 2026-04-24 12:29:51 -04:00
fabro-install feat(install): add sandbox provider step to web install wizard 2026-04-27 14:59:17 -07:00
fabro-interview Wire end-to-end steering for running agents (#209) 2026-05-05 15:34:16 -04:00
fabro-llm fix(llm): omit Anthropic thinking for forced tools 2026-05-05 13:02:29 -04:00
fabro-macros refactor(dev): simplify generated docs tooling 2026-04-24 18:41:00 -04:00
fabro-mcp fix(error): preserve source chains across workspace 2026-05-01 17:30:20 -04:00
fabro-model refactor(server): simplify model availability probes 2026-05-04 11:47:37 -04:00
fabro-oauth fix(error): preserve remaining error context 2026-05-02 10:51:15 -04:00
fabro-options-metadata refactor(dev): simplify generated docs tooling 2026-04-24 18:41:00 -04:00
fabro-proc refactor(static): centralize env var names 2026-04-24 12:29:51 -04:00
fabro-redact fix(redact): skip name fields to preserve sandbox identifiers 2026-05-03 19:57:55 -04:00
fabro-retro Cancel in-flight agent stages with CancellationToken (#211) 2026-05-05 09:54:22 -04:00
fabro-sandbox Cancel in-flight agent stages with CancellationToken (#211) 2026-05-05 09:54:22 -04:00
fabro-server fix(server): make --watch-web honest and fast 2026-05-06 10:36:01 -04:00
fabro-slack refactor: simplify auth and actor handling 2026-05-02 11:44:17 -04:00
fabro-spa feat(dev): gitignore embedded spa assets 2026-04-26 21:31:11 -04:00
fabro-static feat(server): validate Daytona API key scopes 2026-05-03 17:09:01 -04:00
fabro-store fix(system): expose unreadable run repair flow 2026-05-06 07:15:18 -04:00
fabro-telemetry refactor(static): centralize env var names 2026-04-24 12:29:51 -04:00
fabro-template refactor(async): lint std::process::Command across all targets 2026-04-12 13:35:57 -04:00
fabro-test fix(cli): bound server readiness probes 2026-05-02 20:13:18 -04:00
fabro-tracker fix(github): refresh installation tokens during workflows 2026-05-06 07:15:18 -04:00
fabro-types fix(github): refresh installation tokens during workflows 2026-05-06 07:15:18 -04:00
fabro-util refactor(error): drop String error shims and DisplayContains test traits 2026-05-01 19:35:22 -04:00
fabro-validate refactor: simplify Rust review cleanup 2026-05-02 15:41:17 -04:00
fabro-vault refactor(api): unify secret metadata types 2026-04-29 20:26:13 -04:00
fabro-workflow refactor: simplify token plumbing and parallelize read_many_files 2026-05-06 07:15:18 -04:00