Conversation
1c34e8e to
7d5990e
Compare
|
|
||
| const setupExtensions = async () => { | ||
| // First quickly check if we have model and provider to set chat view | ||
| const checkRequiredConfig = async () => { |
There was a problem hiding this comment.
rearranged code into this otherwise we were stuck on onboarding page until extensions finished loading
| @@ -78,21 +78,51 @@ export async function activateExtension({ | |||
| // AddToAgent | |||
There was a problem hiding this comment.
had to explicitly throw all errors to get the intended behavior..
| // Setup extensions in parallel | ||
| const setupExtensions = async () => { | ||
| // Set the ref immediately to prevent duplicate runs | ||
| initAttemptedRef.current = true; |
There was a problem hiding this comment.
Does anything read from this? It doesn't appear so. We can probably remove it.
| if (refreshedExtensions.length === 0) { | ||
| // If we still have no extensions, this is truly a first-time setup | ||
| console.log('First-time setup: Adding all built-in extensions...'); | ||
| await initializeBuiltInExtensions(addExtension); |
There was a problem hiding this comment.
Conceptual question.
If refreshedExtensions comes back the first time you ever boot the app as empty, is it any different/required to have a separate initializeBuiltInExtensions function? Could we just use a single syncBuiltInExtensions that behaves the same was as initialize if there were no extensions to begin with?
(No need to address this in this PR if it distracts - just trying to find opportunities to reduce complexity)
* main: ui: turn on extensions at startup (#1861) ui: models dropdown (#1860) fix: cli empty line (#1856) feat: Allow setting OpenAI timeout from config (#1819) feat: add retry for google (#1854) feat(extensions): add Java/JDK support for MCP servers (#1816) feat: extract `StdioProcessError(msg)` to try to display (#1855) fix: show window bugfix (#1840) fix: append the attachment path to the existing text in the input prompt (#1842) docs: updated docs for smart approval mode (#1853) styles: chat scroll interaction (#1837) ui: add description field to modal (#1846) feat: use temp dir for extracting goose binary (#1838) ui: remove and update extensions (#1847) fix: disappearing user text when stopped (#1839)
Turns on extensions at start up -- should toggle extensions that fail to start up to off but we get too many toasts so should fix that in follow-up: