* reveal editor after making changes
* also give preview models a path component
* workaround errors in diff computer fyi @hediet
* * make live mode be a rendering mode
* render new files with the chat widget and not with a separate zone
* 💄
* fix tests
* prepare for not having a "real" inline chat provider
- add location to provideWelcomeMessage
- add dynamic/fake inline chat provider for editor agents
- fix inline content widget when not having a message
* fix tests
This represents the location in which chat started, it also comes with `startSession(location)`. Finally, pass the location along when asking for sample questions
* add `IChatRequestModel#attempt` so that rerun request/response can be supported
* - support to run with/without command detection enabled
- adopt agent brigde to new chat request
- add share rerun-commands (but only enable them for inline chat for now)
* Reduce chat provider usage
* Clear out IChat props
* Delete interactive session provider API
* Totally remove static chat provider registration
* Clean up onDidRegisterProvider events
* Remove provider ID references from model
* Eliminate many 'providerId' references
* Simplify view registration
* Clean up participant-specific actions
* Delete getProviderInfos
* Rename context key
* Fix tests
* Fix action label
* Fix view title
* Fix test
* Fix test
* Fix integration test
* Remove more providerId
* Add API stub to make this compatible with the existing Copilot Chat
* debt - remove bridge agent when "true" agent appears
* create a SessionExchange from chat model request/response pair
* fix markdown message passing
* use (a little) more of ChatModel world and less of inline chat models
* remove unused test
* fix tests
* only show slash command as detected when not having typed one
* use clearer message that hunks need to be accepted or discard, also add hover with more details
fixes https://github.com/microsoft/vscode/issues/206939
- add TextEdits to chat model
- add IChatTextEdit and IChatUsedSlashCommand to chat progress types
- hook up ad-hoc agent to inline chat session (no more custom commands)
- add new `State.SHOW_REQUEST` state for when new requests are made
* debt - use hunks to render preview diff
* add `InteractiveEditorRequest#previewDocument` to indicate for which document edits are previewed before being applied
* more test coverage
* - Session has textModelN and targetUri where they must not always be equal
- for preview mode create textModelN copy so that AI edits can always be applied
- let preview mode work with hunk information
* - live preview uses hunk information
- tweak utils
* fix live-mode toggle diff
* chore - move chat session service implementation and interface into their own files
* chore - move chat saving service implementation and interface into their own files
* - move hunks into session (instead of strategy)
- recompute them after receiving AI changes
- accept& discard moves hunks from textModelN to textModel0 and vice versa
- service renames
- tests
* - session doesn't know about an editor, only service does
- allow to "move" session to a different editor
- let controller pickup session after move to its editor
- session saving picks up orphand sessions
* try to restore editors when group is still valid
* ctrl - don't pause when cancellation happens during session create
* fix tests