Repository navigation
Tags: mightyC1/exo
Tags
Improve build CI (exo-explore#1920) ## Motivation <!-- Why is this change needed? What problem does it solve? --> <!-- If it fixes an open issue, please link to the issue here --> ## Changes <!-- Describe what you changed in detail --> ## Why It Works <!-- Explain why your approach solves the problem --> ## Test Plan ### Manual Testing <!-- Hardware: (e.g., MacBook Pro M1 Max 32GB, Mac Mini M2 16GB, connected via Thunderbolt 4) --> <!-- What you did: --> <!-- - --> ### Automated Testing <!-- Describe changes to automated tests, or how existing tests cover this change --> <!-- - -->
Fix custom model add requiring two attempts + enlarge sidebar buttons (… …exo-explore#1805) ## Motivation Adding a custom model from the Hub tab shows "Added" toast but the model doesn't appear in the All tab. You have to add it a second time for it to work. Also, the "All" button in the model picker sidebar is too small to read comfortably. ## Changes **Race condition fix (`src/exo/api/main.py`):** - Call `add_to_card_cache(card)` directly in `add_custom_model()` after sending the `ForwarderCommand`, before the API response returns **Sidebar sizing (`dashboard/src/lib/components/FamilySidebar.svelte`):** - Increased sidebar min-width from 72/64px to 80/72px - Increased "All" icon from `w-5 h-5` to `w-6 h-6` - Increased all sidebar labels from 9px to 11px ## Why It Works `POST /models/add` sends a `ForwarderCommand(AddCustomModelCard)` and returns immediately. The frontend then calls `GET /models` which reads from `_card_cache`. But the cache was only updated by the worker event handler after the event round-trips through the master — a race the frontend almost always loses. By updating the cache directly in the API handler, `GET /models` immediately reflects the new model. The worker's later `add_to_card_cache` call is idempotent (dict key assignment). ## Test Plan ### Manual Testing <!-- Hardware: any Mac --> - Open model picker → Hub tab → add a custom model → verify it appears in All tab on the first attempt - Verify sidebar "All" button and other labels are visually larger and readable ### Automated Testing - `uv run basedpyright` passes with 0 errors - `uv run ruff check` passes --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Revert "report macmon failures more aggressively (exo-explore#1618)" (e… …xo-explore#1625) this pr broke macmon - revert it
bench: restore --danger-delete-downloads planning phase (exo-explore#… …1542) c2f2111 extracted shared utilities from exo_bench.py into harness.py but accidentally dropped the run_planning_phase function and --danger-delete-downloads CLI argument in the process. Restored run_planning_phase in harness.py (where its dependencies now live) and re-added the --danger-delete-downloads argument to add_common_instance_args. Re-wired the planning phase call in exo_bench.py's main() before the benchmark loop.
PreviousNext