Files
Alex Hancock 276e4dc06e Add ui/goose3: ACP-only fork of goose2
Creates a new ui/goose3 directory containing:

- A copy of the goose2 frontend code, refactored so that every
  backend interaction goes through the ACP WebSocket via
  @aaif/goose-sdk. The only Tauri commands exposed are
  get_goose_serve_url and get_goose_serve_host_info, both of which
  bootstrap the ACP connection.

- A fresh, minimal Tauri shell under ui/goose3/src-tauri/ with only
  the acp.rs command from goose2 (and its supporting service
  module). All other custom commands (agents, git, doctor, system
  fs, distro, project icons, model/agent setup) and all non-essential
  Tauri plugins (dialog, opener, app-test-driver) are deliberately
  not registered.

- Frontend stubs for every non-ACP backend module. Read-style APIs
  return safe empty defaults; write-style APIs reject with a
  '... is not available in goose3 yet' error so the UI degrades
  gracefully instead of crashing.

- A tauriShims module that replaces @tauri-apps/plugin-dialog,
  @tauri-apps/plugin-opener, @tauri-apps/api/event listen() and
  convertFileSrc with browser-friendly fallbacks (e.g. window.open,
  <input type='file'>) or no-ops with console hints.

- docs/UNSUPPORTED_FEATURES.md cataloguing every stubbed feature
  and the suggested ACP method shape to bring it back online.

Verified:
  cd ui/goose3/src-tauri && cargo check && cargo clippy -- -D warnings && cargo fmt --check
  cd ui/goose3 && pnpm typecheck && pnpm build && pnpm test (747 passed)
  pnpm exec biome check src && pnpm check:i18n
Signed-off-by: Alex Hancock <alexhancock@block.xyz>
2026-05-08 15:34:50 -04:00
..
2026-05-07 14:07:28 -04:00
2026-05-07 14:07:28 -04:00