Commit Graph

148279 Commits

Author SHA1 Message Date
Osvaldo Ortega
0eec305821 Update scenario title to reflect instructions for button click 2026-03-03 21:19:37 -08:00
Osvaldo Ortega
c1242da389 Make button matching case-insensitive and trim whitespace
Snapshot labels often include icon characters and leading spaces
(e.g. ' Instructions'). Now findRefByButtonName and findButtonLine
trim and lowercase both sides before comparing.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-03 21:12:31 -08:00
Osvaldo Ortega
72d5ba0262 Add E2E scenarios for cloud target and repository picker functionality 2026-03-03 21:11:07 -08:00
Don Jayamanne
b16ecea615 feat: enhance chat session option updates (#299109) 2026-03-04 16:05:06 +11:00
Osvaldo Ortega
ee7cdeb985 Rename run.js to run.cjs for CommonJS compatibility
The root package.json has "type": "module", which makes Node treat
.js files as ESM. Since run.js uses require(), rename to .cjs to
explicitly opt into CommonJS.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-03 21:02:15 -08:00
Benjamin Pasero
575c39d160 sessions - fix close action showing up in modal editors when tabbed (#299041) 2026-03-04 04:58:02 +00:00
Benjamin Pasero
da27892b6d sessions - tweaks to empty message (#299034) 2026-03-04 05:57:13 +01:00
Benjamin Pasero
a7f87d92f9 sessions - allow to open preview from markdown files (#299047)
* sessions - allow to open preview from markdown files

* Update src/vs/sessions/contrib/markdownPreview/browser/markdownPreview.contribution.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-04 05:57:06 +01:00
Benjamin Pasero
1f4b2e1a17 modal - focus editor on title click (#299038)
Co-authored-by: Dmitriy Vasyura <dmitriv@microsoft.com>
2026-03-04 05:56:40 +01:00
Benjamin Pasero
06c96dcab4 sessions - AI customizations for selfhost (#299053)
* sessions - AI customizations for selfhost

* more

* Update .github/hooks/hooks.json

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update .github/skills/sessions/SKILL.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-04 05:56:19 +01:00
Osvaldo Ortega
8368928f8e Save failure screenshots to out/ instead of repo root
Screenshots from failed E2E steps now go into out/ (already gitignored)
rather than the repo root. Remove the failure-*.png and sessions-*.png
entries from root .gitignore since they're no longer needed.

Also remove shebang from run.js to pass copyright hygiene check.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-03 20:51:46 -08:00
Tyler James Leonhardt
605a07d2f8 Don't depend on sessionResource in a few places (#299110)
* Don't depend on sessionResource in a few places

Removes some antipaterns and unused variables.

* Apply suggestion from @Copilot

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-04 04:48:04 +00:00
Osvaldo Ortega
1259f94b51 Remove unused data-testid attributes from Sessions UI
The playwright-cli approach uses accessibility tree snapshots instead of
CSS selectors, so these data-testid attributes are no longer needed.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-03 20:45:13 -08:00
Tyler James Leonhardt
757c5ced02 Refactor canResolveChatSession to accept session type (#299112)
refactor: update canResolveChatSession method to accept session type instead of URI
2026-03-04 04:41:19 +00:00
Osvaldo Ortega
6181c6b3e3 Add worked example to E2E README
Traces the full data flow for 'Click button Cloud' step by step: DOM
rendering → accessibility tree snapshot → YAML parsing → ref lookup →
CDP click, so new contributors can understand the internals.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-03 20:36:22 -08:00
deepak1556
f6da4b4e1a fix: add graceful shutdown path when heapprofile is enabled 2026-03-04 13:08:01 +09:00
Josh Spicer
ea82cfa22b sessions: suggest slash commands on new session page (#299098)
* feat: add dynamic customization slash commands to sessions new-chat page

Add individual prompt/skill files as slash commands in the sessions
window's new-chat input, matching what the customizations view shows.

- Add getFilteredPromptSlashCommands() to IAICustomizationWorkspaceService
  - Core: passthrough to IPromptsService
  - Sessions: filters via applyStorageSourceFilter() per prompt type
- Add second completion provider in SlashCommandHandler for dynamic
  prompt/skill slash commands alongside existing static ones
- Update decorations to recognize and highlight dynamic prompt commands
- Subscribe to onDidChangeSlashCommands for cache refresh
- Fix regex in tryExecuteSlashCommand to support Unicode prompt names

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* feat: expand prompt slash commands into CLI-friendly references

When a user types /my-prompt in the sessions new-chat input, expand it
before sending to: 'Use the prompt file located at [name](uri).' so
the CLI agent can locate and process the prompt file.

- Add tryExpandPromptSlashCommand() to SlashCommandHandler
- Call it in _send() before session.setQuery() to rewrite the query

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-03 19:46:13 -08:00
Pierce Boggan
dea917863a Merge pull request #297550 from microsoft/copilot-worktree-2026-02-24T23-48-15
Add copy button to chat
2026-03-03 20:39:52 -07:00
Josh Spicer
d4ab06fee0 Commit customization files to main repo for worktree persistence (#299094)
* Commit customization files to main repo for worktree persistence

Customization files (agents, skills, instructions, prompts, hooks) are
now always committed to the main repository so they persist across
worktrees. When a worktree session is active, the file is also copied
and committed there so the running session picks it up immediately.

- Rewrite SessionsAICustomizationWorkspaceService.commitFiles() with
  dual-commit logic (main repo + worktree)
- Add deleteFiles() to IAICustomizationWorkspaceService interface
- Wire delete action to commit removals to git
- Show friendly warning when main repo commit fails from a worktree

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-04 03:38:45 +00:00
Pierce Boggan
7588065696 Merge branch 'main' into copilot-worktree-2026-02-24T23-48-15 2026-03-03 20:23:34 -07:00
Osvaldo Ortega
0d358e4471 Remove old Electron-based E2E infrastructure, update README
Remove files from the previous TS/Electron testing approach that are no
longer used now that tests run via playwright-cli against the web server:

- actionMap.ts, scenarioParser.ts, sessionApp.ts, scenarios.spec.ts
- playwright.config.ts, package.json, tsconfig.json
- extensions/mock-chat-provider/

Update README.md to document the current playwright-cli + web server
approach, including how to run tests and add new scenarios.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-03 19:06:06 -08:00
Osvaldo Ortega
2a4fe892ca Remove obsolete failure and session images from the repository 2026-03-03 18:49:30 -08:00
Osvaldo Ortega
cf8edf1222 Remove .playwright-cli from git and add to .gitignore
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-03 18:44:59 -08:00
Osvaldo Ortega
76fa9206f1 Merge pull request #299090 from microsoft/osortega/interior-flea
Session window: merge to local
2026-03-03 18:42:59 -08:00
Osvaldo Ortega
b4194d15c8 Add multiple Playwright configuration files for session management and UI components
- Created new YAML files for Playwright configurations, detailing the structure of the application UI.
- Included toolbar actions for session management, customization options, and repository picker.
- Defined buttons for session actions, agent sessions, and various UI elements like alerts and textboxes.
- Enhanced user interaction elements with cursor pointers and active states for better usability.
2026-03-03 18:42:22 -08:00
Osvaldo Ortega
31025c2ba2 Add multiple Playwright YAML configuration files for session management UI
- Created new YAML files for Playwright that define the structure and components of the session management UI.
- Each file includes configurations for toolbars, buttons, alerts, and other UI elements.
- The configurations support various actions such as finding sessions, filtering sessions, and customizing settings.
- Added support for user interactions with buttons for navigating, signing in, and managing agent sessions.
- Ensured consistent structure across all YAML files for maintainability and ease of updates.
2026-03-03 18:41:20 -08:00
Osvaldo Ortega
12433ef089 Add multiple Playwright configuration files for session management and UI interactions
- Created new YAML files for Playwright configurations to define UI components and actions related to session management.
- Included various toolbars, buttons, and alerts to enhance user interaction.
- Configured folder picker options for browsing and cloning functionalities.
- Ensured consistent structure across multiple configuration files for maintainability.
2026-03-03 18:34:59 -08:00
Osvaldo Ortega
a643d56729 Add new Playwright CLI page configurations with session management and UI elements
- Created multiple YAML files for Playwright CLI with detailed UI structure.
- Included toolbar actions for session management, including buttons for finding and filtering sessions.
- Added customizable options and agent session lists.
- Implemented navigation buttons with disabled states for back and forward actions.
- Integrated folder picker options for browsing and cloning.
- Enhanced chat input functionality with context addition and model selection.
2026-03-03 18:32:25 -08:00
Osvaldo Ortega
55fe7db35d Add multiple Playwright YAML configuration files for session management UI
- Created new YAML files to define the structure and components of the session management interface.
- Included various toolbars, buttons, and alerts to enhance user interaction.
- Implemented features such as session actions, agent sessions, and folder picker options.
- Ensured accessibility with appropriate cursor pointers and disabled states for buttons.
2026-03-03 18:31:32 -08:00
Osvaldo Ortega
4d01b99cc3 Add new Playwright page configurations for session management and folder selection
- Created multiple YAML files for Playwright CLI to define UI structure for session actions, including buttons for finding and filtering sessions.
- Implemented toolbar configurations for primary and secondary sidebars with various action buttons.
- Added support for agent sessions and customizations, including buttons for skills, instructions, prompts, and hooks.
- Introduced a folder picker listbox with options to browse and clone folders.
- Enhanced the chat input area with context addition and model selection buttons.
- Included alerts for user notifications within the application interface.
2026-03-03 18:30:14 -08:00
Osvaldo Ortega
a7de463d85 Add multiple Playwright YAML configuration files for session management UI
- Created new YAML files for the application UI, detailing the structure of session actions, toolbars, buttons, and alerts.
- Each file includes configurations for session management features such as "Find Session," "Filter Sessions," and various customization options.
- Implemented consistent button references and cursor styles across the UI components.
- Ensured accessibility features are included, such as disabled states for buttons and alerts for user notifications.
2026-03-03 18:28:25 -08:00
Osvaldo Ortega
94742ca663 Refactor code structure and remove redundant sections for improved readability and maintainability 2026-03-03 18:25:40 -08:00
Osvaldo Ortega
479b002a89 Add E2E test runner for Agent Sessions and define UI structure in YAML
- Introduced a new E2E test runner script for Agent Sessions located at src/vs/sessions/test/e2e/run.js.
- The script starts a web server, opens the sessions window, and executes defined scenarios from markdown files.
- Added a YAML file defining the UI structure and components for the sessions interface.
2026-03-03 18:22:54 -08:00
Osvaldo Ortega
c3c27e091e Refactor code structure for improved readability and maintainability 2026-03-03 18:16:16 -08:00
Osvaldo Ortega
68da1933d0 Clean up 2026-03-03 17:55:47 -08:00
Osvaldo Ortega
55dc53f5d3 Review comments 2026-03-03 17:45:30 -08:00
Connor Peet
56ca891d2f api: fix memory leaks in MainThreadManagedSockets (#299093)
* api: fix memory leaks in MainThreadManagedSockets

Refactors MainThreadManagedSockets to properly manage disposables and prevent
memory leaks. Uses DisposableMap for registrations and DisposableStore to
collect socket disposal listeners.

- Changes _registrations from Map<number, IDisposable> to DisposableMap to
  leverage automatic disposal when clearing entries.
- Collects Event.once listeners for socket disposal in a DisposableStore to
  ensure they are properly disposed of when the factory is unregistered.
- Minor whitespace fix on closeRemote method signature.

Refs https://github.com/microsoft/vscode/issues/293200

(Commit message generated by Copilot)

* Better
2026-03-04 01:31:49 +00:00
Rob Lourens
0b270f19fa Don't show Used n references when opening an old session (#299092)
* Don't show Used n references when opening an old session
Alternate fix for #297152

* Don't show Used n references when opening an old session
Alternate fix for #297152
2026-03-04 01:05:30 +00:00
Josh Spicer
f7d450f8a3 refactor: update getCliUserSubfolder to clarify prompts exclusion (#299089) 2026-03-04 00:55:09 +00:00
Don Jayamanne
fd97f699a2 Disable slash commands for background (#299085) 2026-03-04 00:53:42 +00:00
Pierce Boggan
eb8db027a4 Merge branch 'main' into copilot-worktree-2026-02-24T23-48-15 2026-03-03 17:17:37 -07:00
Paul
c7d548ad58 Fix /hooks slash command from blocking chat (#299084) 2026-03-04 00:13:51 +00:00
Connor Peet
5e0dc2f064 Merge pull request #299072 from microsoft/connor4312/fix-mcp-gateway-compile-error
Fix compile error in mcpGatewayToolBrokerChannel test
2026-03-03 16:13:06 -08:00
Robo
3dfa3a438f fix: passing js-flags to utility process (#299069) 2026-03-03 23:57:22 +00:00
Osvaldo Ortega
bfd958ec2b Rename 2026-03-03 15:50:29 -08:00
Osvaldo Ortega
26b6024286 Using merge strategy 2026-03-03 15:43:40 -08:00
Matt Bierner
a31ef0befe Merge pull request #299033 from mjbvz/dev/mjbvz/pleasant-catshark
Reapply 8e445caeff
2026-03-03 15:43:16 -08:00
Connor Peet
c4672f21b5 fix merge error 2026-03-03 15:36:06 -08:00
Matt Bierner
5113d689f7 Merge pull request #299071 from mjbvz/dev/mjbvz/blank-anteater
Make sure we specify a tsconfig.browser.json for browser ext
2026-03-03 15:29:00 -08:00
Martin Aeschlimann
1f3ddd891e add play button in prompt config dialog (#297715) 2026-03-03 23:16:37 +00:00