Commit Graph

149031 Commits

Author SHA1 Message Date
Alex Dima f4c042bfc8 Relax some tests when shell integration is off 2026-03-21 19:56:04 +01:00
Alex Dima 22913a387d fix: detect sandbox failures heuristically when exit code is unavailable 2026-03-21 19:20:59 +01:00
Alex Dima 865568dbbc fix: Linux CI sandbox prereqs, platform-aware tests, broader prompt stripping
- Add bubblewrap and socat to Linux CI apt-get install
- Make sandbox test assertions platform-aware (macFileSystem vs linuxFileSystem)
- Make /etc/shells test accept both macOS and Linux first-line format
- Broaden wrapped prompt fragment regex to handle path chars (ts/testWorkspace$)
- Fix continuation pattern to match user@host:path wrapped lines
- Apply stripCommandEchoAndPrompt to getOutput() in BasicExecuteStrategy
  (basic shell integration lacks reliable 133;C markers so getOutput()
  can include command echo)
- Keep RichExecuteStrategy getOutput() unstripped (rich integration
  has reliable markers)
2026-03-21 19:06:50 +01:00
Alex Dima 5c733b67ac fix: handle macOS CI prompt format and add stripping to rich strategy
- Add trailing prompt patterns for hostname:path user$ (no @ sign)
- Handle wrapped prompt fragments like "er$" at line boundaries
- Add stripCommandEchoAndPrompt to RichExecuteStrategy marker fallback
- Context-aware wrapped prompt continuation detection
2026-03-21 18:50:17 +01:00
Alex Dima 842c746bb2 fix: skip stale prompt fragments before command echo in stripping
In CI, ^C cancellations leave stale prompt fragments before the actual
command echo line. The leading-strip loop now continues scanning past
unmatched lines until it finds the command echo, instead of breaking
on the first non-matching line.
2026-03-21 18:35:26 +01:00
Alex Dima d4359ab0d8 Review feedback 2026-03-21 18:07:41 +01:00
Alex Dima a32b488b9d fix: tighten trailing prompt stripping to avoid dropping legitimate output
Anchor prompt-detection regexes to specific prompt shapes instead of
broadly matching any line ending with $, #, %, or >. This prevents
stripping real command output like "100%", "<div>", or "item #".
2026-03-21 18:05:15 +01:00
Alex Dima 31a4a74df7 Fix compilation errors 2026-03-21 17:58:07 +01:00
Alex Dima 34dd7810b7 fix: strip command echo and prompt from terminal output (#303531)
Prevent sandbox-wrapped command lines from leaking as output when

commands produce no actual output. Adds stripCommandEchoAndPrompt()

to isolate real output from marker-based terminal buffer captures.

Also adds configurable idle poll interval and shell integration

timeout=0 support for faster test execution.
2026-03-21 17:43:25 +01:00
Alexandru Dima 930498f060 Merge pull request #303720 from microsoft/fix/terminal-sandbox-instructions
Improve terminal sandbox instructions for LLM tool descriptions
2026-03-21 12:16:20 +01:00
Alex Dima babe1c71b0 Address review feedback for terminal sandbox instructions
- Extract sandbox line generation into shared createSandboxLines() helper
- Compute effective allowed domains by filtering out denied domains
- Add sandbox/network domain instructions to PowerShell description
- Add tests for network domain inclusion and denied domain filtering
2026-03-21 11:49:56 +01:00
Alex Dima 2ed5b851eb Include allowed/blocked network domains in run_in_terminal tool instructions (#303582) 2026-03-21 10:59:54 +01:00
Alex Dima 0c86a6f765 Clarify sandbox retry prompts to instruct LLM to set requestUnsandboxedExecution=true directly (#303436) 2026-03-21 10:41:55 +01:00
dileepyavan ac2da2ad98 Fixing incorrect rendering of invocation message in sandbox mode. (#303711)
rendering in markdown string
2026-03-21 09:30:56 +00:00
dileepyavan b978bf74b2 tmp directory should not be used by sandboxed commands (#303699)
* Fix terminal sandbox tmp handling and upgrade sandbox runtime

Fixes #299224

Fixes #303568

* fixing test

* merging changes
2026-03-21 10:20:44 +01:00
Don Jayamanne a1254fd4c2 update external tool invocations so terminal output renders (#303394) 2026-03-21 08:18:30 +00:00
dileepyavan 54be29cea7 Merge pull request #303618 from microsoft/DileepY/303505
Include analyzer messages in background terminal output
2026-03-21 08:14:24 +01:00
Rob Lourens 9d7d0363de When archiving active session, clear it (#303684) 2026-03-20 22:23:12 -07:00
Rob Lourens 55969564bb Enable setting caseInsensitive through search API for agent tools (#303679)
* Enable setting caseInsensitive through search API for agent tools
Fix #303673

* Avoid per-call allocation in isFilePatternMatch for ignoreCase option (#303681)

* Initial plan

* Extract filePatternIgnoreCaseOptions as module-level constant to avoid per-call allocations

Co-authored-by: roblourens <323878+roblourens@users.noreply.github.com>
Agent-Logs-Url: https://github.com/microsoft/vscode/sessions/a131b260-e6c0-47f6-aa2a-95ac0f24fe10

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: roblourens <323878+roblourens@users.noreply.github.com>

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: roblourens <323878+roblourens@users.noreply.github.com>
2026-03-21 04:45:05 +00:00
Peng Lyu 161ff4266e carousel: improve image loading perf (#303662)
* carousel: improve image loading perf

* resolve comments
2026-03-20 19:43:51 -07:00
dileepyavan 36ca95ebaa Show allow-list actions for unsandboxed terminal confirmations (#303660)
* Handle unsandboxed terminal confirmation actions

* test: fix unsandboxed terminal confirmation actions

* Fixing confirmation window issues outside sandbox
2026-03-20 19:41:15 -07:00
Rob Lourens 7503e59fc3 Don't localize markdown icon syntax (#303655)
* Don't localize markdown icon syntax

Co-authored-by: Copilot <copilot@github.com>

* Add eslint rule for localized markdown icons

---------

Co-authored-by: Copilot <copilot@github.com>
2026-03-21 01:19:54 +00:00
Kyle Cutler 7c45bc769a Fix browser focus stealing (#303647) 2026-03-21 00:53:04 +00:00
Matt Bierner 8c3724e8d1 Merge pull request #303644 from mjbvz/dev/mjbvz/fine-dingo
Mark many chat session related types as readonly
2026-03-20 17:49:38 -07:00
dileepyavan 28aaabc31e Option to allow-list command when offering to run outside of sandbox (#303637)
* Handle unsandboxed terminal confirmation actions

* test: fix unsandboxed terminal confirmation actions
2026-03-20 17:40:55 -07:00
Paul 1519062c0f Add missing skills discovery info (#303646) 2026-03-21 00:31:33 +00:00
Josh Spicer 4b8a157d86 Replace gear menu with direct Customizations editor action (#303641)
When chat.customizationsMenu.enabled is true (default):
- Gear icon directly opens the AI Customizations editor
- Tool Sets, Chat Settings, and Show Agent Debug Logs move to the '...' context menu

When the setting is false, the original gear dropdown behavior is preserved.
2026-03-21 00:19:49 +00:00
Rob Lourens a7fffd156c Enable starting sessions on remote agent hosts in sessions app (#303631)
* Enable starting sessions on remote agent hosts in sessions app

Co-authored-by: Copilot <copilot@github.com>

* Fix

Co-authored-by: Copilot <copilot@github.com>

* fix

Co-authored-by: Copilot <copilot@github.com>

* fix

Co-authored-by: Copilot <copilot@github.com>

* fix test

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-03-20 17:16:33 -07:00
Paul 2a09c1e0d0 Use built-in progress instead of custom shimmer for agent debug panel (#303636) 2026-03-21 00:04:58 +00:00
Matt Bierner caa7e57116 Also mark array itself as readonly 2026-03-20 17:01:11 -07:00
Matt Bierner c2b719fb32 Add one more readonly 2026-03-20 17:00:12 -07:00
Matt Bierner 4631c88d06 Update test 2026-03-20 16:59:21 -07:00
Matt Bierner 4b98d2171b Merge pull request #303640 from mjbvz/dev/mjbvz/boring-kingfisher
Use unknown instead of any
2026-03-20 16:55:11 -07:00
Matt Bierner 0697f7d8d3 Mark many chat session related types as readonly
These types are generally expected to be immutable
2026-03-20 16:44:10 -07:00
Matt Bierner f56eaf4d60 Merge pull request #291825 from jeevaratnamputla/child-process
Replace child_process.exec with execFile to prevent potential command injection
2026-03-20 16:40:06 -07:00
Matt Bierner 5caa080ce3 Merge pull request #297893 from kbhujbal/fix/code-quality-improvements
Fix code quality issues: error logging and JSDoc typo
2026-03-20 16:37:21 -07:00
Matt Bierner 26d39c203c Merge pull request #303619 from mjbvz/dev/mjbvz/useful-narwhal
Remove unused `IChatSessionDto.id` field
2026-03-20 16:35:00 -07:00
Matt Bierner 5fc1bf6b7f Merge pull request #303625 from mjbvz/dev/mjbvz/possible-parakeet
Try to clean up inProgress handling for chat sessions
2026-03-20 16:31:58 -07:00
Matt Bierner 1ec1913b83 Merge pull request #303620 from mjbvz/dev/mjbvz/tender-puffin
Make sure content part disposes of refs
2026-03-20 16:31:43 -07:00
Matt Bierner 231b7e7d76 Use unknown instead of any 2026-03-20 16:30:52 -07:00
Matt Bierner 36ec9dbe69 Merge branch 'main' into child-process 2026-03-20 16:19:08 -07:00
Shehab Sherif 5ce6509b44 Fix missing global flag in sanitizeId regex (#303603)
* Fix missing global flag in sanitizeId regex

The regex in sanitizeId was missing the 'g' flag, so only the first
occurrence of '.' or '/' was replaced with '_'. Since settings IDs
contain multiple dots (e.g. 'editor.font.size'), this meant subsequent
dots were left in the sanitized ID.

* Add regression test for sanitizeId global replacement

Export sanitizeId and add a test verifying that all occurrences of '.'
and '/' are replaced in generated tree element IDs, not just the first.

---------

Co-authored-by: Shehab Sherif <shehabsherif0@users.noreply.github.com>
2026-03-20 23:18:13 +00:00
Tyler James Leonhardt ba9458c65c refactor: rename image carousel configuration and update related descriptions (#303630)
* refactor: rename image carousel configuration and update related descriptions

also make default true

* update title

* fix: update image carousel title and description to "Images Preview"
2026-03-20 16:17:46 -07:00
Matt Bierner 5f5fb85206 Merge branch 'main' into fix/code-quality-improvements 2026-03-20 16:14:43 -07:00
Tyler James Leonhardt 4c055a03f9 feat: add context key expressions for slash command visibility (#303626)
This is how we should be registering slash commands. Not hard coding targets.

It would be a good exercise to apply when clauses to the rest of these in the future.
2026-03-20 15:55:33 -07:00
Tyler James Leonhardt a3512f01a6 fix: enhance session resolution in sessionSupportsFork method (#303624)
ref https://github.com/microsoft/vscode/issues/300501
2026-03-20 22:18:17 +00:00
Matt Bierner cafda08d8f Try to clean up inProgress handling for chat sessions
This api is very strange. Reducing where it's exposed because it really should not exist
2026-03-20 15:02:15 -07:00
Matt Bierner 5f3aba5e00 Make sure content part disposes of refs
Fixes #303547
2026-03-20 14:20:56 -07:00
Matt Bierner a283594a3f Remove unused IChatSessionDto.id field 2026-03-20 14:15:21 -07:00
Peng Lyu 8f46cf34c3 integrate image carousel support in sessions. (#303615) 2026-03-20 21:12:58 +00:00