* Add quickPickItemResource API proposal
* Transfer resourceUri from extension host to main thread.
* Make proposed API checks consistent.
* Process resourceUri
* Fix up resourceUri mapping logic
* API proposal
* Transfer toggles from extension host to main thread
* Support Folder icon, refactor label/description derivation.
* Update
* Update API proposal per API review
* Update transfer logic per API changes
* Move toggles to the base input interface
* Handle toggle button type
* Fix up
* Updates
* Propagate checked state, dispose removed toggles.
* Nit
* Expand icons
* Feedback/updates
* Added comments, PR feedback
* Updates
* Revert some change, add typings and unit-tests to converters.
* Add a quick pick test for resourceUri
* Test updates
For #271167
This makes it so our built-in extensions can mostly be built using `tsc` on the command line. Previously the extensions were picking up a lot of typing info from the root `node_modules` that meant they weren't truly independent
* add `workbench.action.chat.open::waitForComplete`
* s/waitForCompletion/blockOnResponse
* cleanup tests
* remove unused comment
* Apply suggestion from @connor4312
Co-authored-by: Connor Peet <connor@peet.io>
* fixup tests
* don't block test loop on invokeTool
* Revert "don't block test loop on invokeTool"
This reverts commit d8d16dbe79.
* fix tool confirmation test
* attempt to account for the flip of isPendingConfirmation
* [DEBUG] debug CI flake
* register tool so it exists in all test envs
* finish configuring custom tool
* run test in seperate chat windows
* revert debug changes
* remove timeout dep
* fix assertion
* cleaup tests by examining output of command directly
---------
Co-authored-by: Connor Peet <connor@peet.io>
* Add proposed API for trusted domains and for web page extraction
I don't love the shape of this API but I'm going with this for now to play with it.
This will help Chat provide contents of web pages as context but also allow it full control of the tool.
ref https://github.com/microsoft/vscode/issues/243615
* use a different url
* delete the test until we have a good way to mock
Fixes#30066
This finalizes the documentPaste api. This api allows extensions to attach metadata on text copy and change how content is pasted. Some examples:
- Updating imports for pasted code
- Inserting an image as an attachment in notebooks
- Pasting files converts them to relative text paths
* add integration tests for LanguageModelChat#sendRequest
* make sure errors are recreated when making LM requests
* disable test with a note for later
* fix remote integration tests
* Don't register chat participants in stable
And fork some Additions APIs into chatParticipantPrivate
* Remove stale proposals
* Move more API out of Additions
* Enable duplicate chat participant names
#208103
* Register participants with an ID
* Update participant history in API
* Changes to dupe chat suggest widget, and fix serialize/deserialize
* Tweaks
* Test fixes
* Fix tests
* Test fixes
* Fix integration test
* Tweak ChatFollowup
* Remove API TODOs
* New proposal for chat variable resolver
* Bump distro
* Enforce same-extension followup
* Add participant proposal to integration test folder
* Allow no participant for a followup
* Start renaming chat API from "agent" to "participant"
* Rename the rest of the API
* Rename in integration test
* Update integration test api proposals
* Bump distro
* perf - first cut workbench contributions 2
* log warning
* add tests
* tests
* fix tests
* .
* adopt a bit and add access to times
* adopt for some
* adopt for some
* .
* fix tests
* .
I think this isn't an issue with the test- every time it fails, we see "The Web Worker Extension Host did not start in 60s". The chat tests are the first tests, and so they just time out due to being affected by the slow startup. That EH timeout issue looks old.
Fix#203429