Skip to content

Alignment with 1.117.0 version of VS Code#142

Draft
RomanNikitenko wants to merge 719 commits into
mainfrom
alignment-with-upstream-1-117
Draft

Alignment with 1.117.0 version of VS Code#142
RomanNikitenko wants to merge 719 commits into
mainfrom
alignment-with-upstream-1-117

Conversation

@RomanNikitenko

@RomanNikitenko RomanNikitenko commented Apr 28, 2026

Copy link
Copy Markdown
Owner

What does this PR do?

What issues does this PR fix?

#144

How to test this PR?

Test starting a workspace and basic functionality for the following images

Image Status Link
udi
quay.io/devfile/universal-developer-image:ubi8-latest click here
quay.io/devfile/universal-developer-image:ubi9-latest click here
quay.io/devfile/universal-developer-image:ubi10-latest click here
ubi-8
registry.access.redhat.com/ubi8-minimal:latest click here
registry.access.redhat.com/ubi8-minimal:8.10 click here
registry.access.redhat.com/ubi8-minimal:8.9 click here
ubi-9
registry.access.redhat.com/ubi9-minimal:latest click here
registry.access.redhat.com/ubi9-minimal:9.7 click here
registry.access.redhat.com/ubi9-minimal:9.6 click here
ubi-10
registry.access.redhat.com/ubi10-minimal:latest click here
registry.access.redhat.com/ubi10-minimal:10.1 click here
registry.access.redhat.com/ubi10-minimal:10.0 click here

Does this PR contain changes that override default upstream Code-OSS behavior?

  • the PR contains changes in the code folder (you can skip it if your changes are placed in a che extension )
  • the corresponding items were added to the CHANGELOG.md file
  • rules for automatic git rebase were added to the .rebase folder

ulugbekna and others added 30 commits April 16, 2026 17:20
…10793)

* nes: cache: add a test to show how rebasing fails

* feat: add reverse-agreement rebase for NES cache behind experiment flag

When the user types more text than the model predicted at the same
position (e.g., model: '{', user: '{\n\t'), the rebase engine now
recognizes that the model's edit is consumed by the user's typing and
offers the remaining unconsumed model edits as rebased suggestions.

The new behavior is gated behind the 'reverseAgreement' experiment
flag in NesRebaseConfigs (config key:
chat.advanced.inlineEdits.reverseAgreement, default: false).

Adds 10 unit tests covering positive, negative, and edge cases.
…ider override, iterate candidates

Bug fixes only (no telemetry changes):
1. Filter available_models through knownEndpoints before sending to router
2. Remove same-provider override from router path - trust router ranking
3. Iterate all candidate_models via _findFirstAvailableModel
4. Warn-level logs for sync mismatches
Emits a new telemetry event after all client-side model overrides are applied.
Properties: candidateModel, actualModel, overrideReason (none/clientOverride),
conversationId. Tests cover: match, vision fallback override, router failure.
* Build system for agent sessions

* Discovery fixes

* better npe fix.

---------

Co-authored-by: Peng Lyu <penn.lv@gmail.com>
Previously isNESForAnotherDoc was only set inside addNotebookTelemetry,
so non-notebook cross-file NES always reported false.

- Set the flag on the main edit path for all cases (notebook and non-notebook)
- Set the flag on the jump-to-position path when targetDocumentId differs
- Set the flag and status 'noEdit:crossFileTargetNotFound' when cross-file
  target document is not found in the workspace
- Remove redundant setIsNESForOtherEditor call from addNotebookTelemetry
…hecks (#310800)

* fix: prevent update server from bogus 'unknown' commit in overwrite checks

When update metadata is missing (e.g. interrupted install recovery via
_applySpecificUpdate), the fallback IUpdate uses version: 'unknown'.
This value flows into checkForOverwriteUpdates, which polls every 5
minutes and passes it as the commit to buildUpdateFeedUrl, producing
requests to /api/update/{platform}/{quality}/unknown.

Skip the overwrite check when pendingUpdateCommit is missing or
'unknown' to break the cycle.

* fix: construct commit for install recovery
…ns app (#310812)

I realized after implementing this that we avoid showing diffs for in-progress
sessions

https://github.com/microsoft/vscode/blob/3267a57dc5ace468c668880fca8bb5cb73467e63/src/vs/sessions/contrib/sessions/browser/views/sessionsList.ts#L262-L264

But if that ever was to change this'd work nicely. And I think it should
change :)
remove 'included' property from input latency telemetry configuration
- Use single for-loop to partition available_models into routableModels and
  droppedModels (bhavyaus review)
- Fix test: when ALL available_models are unknown, _selectDefaultModel throws
  since none match knownEndpoints — test now expects throw instead of gpt-4o
…emetry

Add automode.routerModelSelection telemetry with actualModel
…ndidate-models-fallback

# Conflicts:
#	extensions/copilot/src/platform/endpoint/node/test/automodeService.spec.ts
* mobile friendly agent sessions view

* no need for auto hide.

* 💄
…e-models-fallback

Fix router model selection: filter available_models, remove same-provider override, iterate candidates
We only want to set the zindex if we're inside a modal
…#310830)

* feat: add GitHub Copilot upgrader skill and CLI integration documentation

* Updates

* Update extensions/copilot/src/extension/chatSessions/copilotcli/AGENTS.md

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

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <copilot@github.com>
* Agents app web: terminal integration with ahp

* resolve comments.

* 💄

* refactor: simplify session opening logic in SessionsView

* fix integration test.
When using the Troubleshoot action from the Agent Customizations UI:
- Close any open Agent Customizations editors before opening chat
- Send the troubleshoot chat automatically (isPartialQuery: false)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Handle showing weekly and session rate limit data

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

* Fix error

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

* Update extensions/copilot/src/extension/conversation/vscode-node/chatParticipants.ts

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

* Fix casing

* Update verbiage + clear stale

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

---------

Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Agents web: Changes view support

* Update src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.ts

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

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
Generated-by: Cursor AI
Move PR target repo and git identity into CLAUDE.md so skills
resolve configuration from the repo itself rather than relying on
runner-side placeholder substitution. Add an issue resolution
routing table that maps issue title patterns to skill files.
Clean up the workflow by removing SKILL_SOURCE, SKILL_PATH, and
PR_TARGET_REPO which are no longer needed.

Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
Made-with: Cursor
Claude was exploring the repo and analyzing code before reaching
the routing table at the bottom of the file. Move the Issue
Resolution section to the top with strong directive language so
Claude checks the routing table immediately upon receiving an
issue reference.

Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
Made-with: Cursor
Add a new workflow that automatically runs dw-claude-runner when
an "Alignment Che-Code with" issue is opened. Also limit the
upstream release check to create only one alignment issue at a
time by searching for any open alignment issue instead of a
specific version.

Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
Made-with: Cursor
Simplify the release check to only look for the next minor
version (current + 1) instead of scanning up to 10 versions
ahead. Only open alignment issues block creation so closed
issues can be re-created during testing.

Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
Made-with: Cursor
Events created with GITHUB_TOKEN do not trigger other workflows.
Switch to PAT_TOKEN so the issue creation fires the
trigger-rebase-on-issue workflow.

Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
Made-with: Cursor
Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
Made-with: Cursor
Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
Made-with: Cursor
Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
Made-with: Cursor
Preserve the Che-specific change that disables name mangling
in the CI build task (makeCompileBuildTask(true) instead of false).

Made-with: Cursor
- Add check-rebase-rules.yml: runs on PR open/sync, detects files
  modified in code/ without rebase rules, posts a comment listing them
- Add add-rebase-rules.yml: triggered by /add-rebase-rules slash
  command, runs dw-claude-runner to create missing rules automatically
- Add .github/scripts/check-unprotected-changes.sh: detection script
  that compares PR changes against rebase rules coverage
- Update CLAUDE.md routing table with add-rebase-rules entry

Made-with: Cursor
Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
SSH remotes don't work inside DevWorkspace containers where
only HTTPS OAuth tokens are available from Che git credentials.

Signed-off-by: Roman Nikitenko <rnikiten@redhat.com>
Made-with: Cursor
@github-actions

github-actions Bot commented Apr 28, 2026

Copy link
Copy Markdown

Click here to review and test in web IDE: Contribute

RomanNikitenko and others added 13 commits April 28, 2026 11:09
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Remove redundant pins:
- ws (add): upstream now has ^8.19.0 (higher than pinned 8.2.3)
- @types/ws (add): upstream now has ^8.18.1 (higher than pinned 8.2.0)
- undici (override): upstream now has identical ^7.24.0
- minimatch (override): upstream now has identical ^3.1.5

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Update stale replace rules for upstream 1.117:
- gulpfile.cli.ts: untar import moved from gulp-untar to ./lib/util.ts
- gulpfile.reh.ts: same untar import change
- product.ts: import paths use relative .js extension, as any -> as unknown
- serverServices.ts: ServerConnectionTokenType added to import
- webClientServer.ts: import type * syntax, relative import paths

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
These files diverged from upstream during a prior rebase and need to
match the previous upstream version before rebasing to 1.117.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
gulp-untar was removed from upstream 1.117 (moved to ./lib/util.ts).
Update rule to replace gulp-gunzip with gulp-decompress instead.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
These files contained stale content from a prior upstream version,
causing the smart fallback in rebase.sh to incorrectly detect
che-specific changes during conflict resolution.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Create terminalInstance.ts replace rule (40 rules covering
  Che-specific terminal modifications)
- Fix package.json replace rule: gulp-untar removed from upstream,
  now replace gulp-gunzip with gulp-decompress
- Align terminalInitialHint.css with previous upstream

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fix npm EOVERRIDE: tar override ^7.5.11 conflicts with upstream
direct devDependency ^7.5.9. Added tar to .rebase/override/ for
devDependencies to ensure both use ^7.5.11 (CVE fix).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Fix literal backslash characters in serverServices.ts from bad JSON escaping in replace rules
- Fix escaped quotes in extensionsWorkbenchService.ts from incorrect JSON escaping
- Add missing isVisible getter to TerminalInstance (was removed by replace rule)
- Replace removed windowsEnableConpty with windowsUseConptyDll in terminal config
- Add required callSite property to IRequestOptions in devWorkspaceAssistant.ts
- Update all corresponding .rebase/replace/ rule files

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.