sessions: badge the activity bar Changes entry on unseen changes and show its stats on hover #343335

Merged
sandy081 opened 3:41pm on October 21, 2026 wanted to merge 737 Δ into microsoft/vscode main from
sandy081/agents/blue-badge-new-changes-hover-stats

Pull request #343335 quality checks

Code files and functions touched by this pull request are analyzed below.

Quality targets

How does this pull request compare to chosen code quality targets? Read more about code quality targets.

Target name Target value This PR
Maximum Diff Delta per PR 500 737
Maximum comment count per PR 10 10
Pull request maximum business days between activity 3 8
Pull request maximum business days open 5 9

Coupled files

Are there any files from this commit that are always committed alongside another file? This often suggests that there exists code coupling to potentially remove. Read more about code coupling

Committed together % Code file
Coupled code file
Commits in PR with both
100 src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts
src/vs/sessions/browser/parts/media/sessionActivityBar.css
1
100 src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts
src/vs/sessions/services/sessions/test/common/sessionChangesStatsCache.test.ts
1
100 src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts
src/vs/sessions/services/sessions/common/sessionChangesStatsCache.ts
1
100 src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts
src/vs/sessions/contrib/chat/test/browser/sessionChatInputToolbar.test.ts
1
100 src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts
src/vs/sessions/test/browser/chatGroupsView.test.ts
1
100 src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts
src/vs/sessions/test/browser/sessionView.test.ts
1
100 src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts
src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.ts
1
100 src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts
src/vs/sessions/contrib/changes/browser/changes.contribution.ts
1
100 src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts
src/vs/sessions/sessions.common.main.ts
1
100 src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
src/vs/sessions/contrib/changes/browser/changesActivity.ts
3
100 src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
src/vs/sessions/test/browser/sessionActivityBar.test.ts
2
100 src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
src/vs/sessions/browser/parts/sessionActivityBar.ts
2
100 src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
src/vs/sessions/services/sessions/test/common/sessionChangesStatsCache.test.ts
1
100 src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
src/vs/sessions/services/sessions/common/sessionChangesStatsCache.ts
1
100 src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
src/vs/sessions/contrib/chat/test/browser/sessionChatInputToolbar.test.ts
1
100 src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
src/vs/sessions/test/browser/sessionView.test.ts
1
100 src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.ts
1
100 src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
src/vs/sessions/sessions.common.main.ts
1
100 src/vs/sessions/contrib/changes/browser/media/changesActivity.css
src/vs/sessions/browser/parts/media/sessionActivityBar.css
1
100 src/vs/sessions/contrib/changes/browser/media/changesActivity.css
src/vs/sessions/services/sessions/test/common/sessionChangesStatsCache.test.ts
1
100 src/vs/sessions/contrib/changes/browser/media/changesActivity.css
src/vs/sessions/services/sessions/common/sessionChangesStatsCache.ts
1
100 src/vs/sessions/contrib/changes/browser/media/changesActivity.css
src/vs/sessions/contrib/chat/test/browser/sessionChatInputToolbar.test.ts
1
100 src/vs/sessions/contrib/changes/browser/media/changesActivity.css
src/vs/sessions/test/browser/chatGroupsView.test.ts
1
100 src/vs/sessions/contrib/changes/browser/media/changesActivity.css
src/vs/sessions/test/browser/sessionView.test.ts
1
100 src/vs/sessions/contrib/changes/browser/media/changesActivity.css
src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.ts
1
100 src/vs/sessions/contrib/changes/browser/media/changesActivity.css
src/vs/sessions/contrib/changes/browser/changes.contribution.ts
1
100 src/vs/sessions/contrib/changes/browser/media/changesActivity.css
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/contrib/changes/browser/media/changesActivity.css
src/vs/sessions/sessions.common.main.ts
1
100 src/vs/sessions/contrib/changes/browser/changesActivity.ts
src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts
3
100 src/vs/sessions/contrib/changes/browser/changesActivity.ts
src/vs/sessions/test/browser/sessionActivityBar.test.ts
2
100 src/vs/sessions/contrib/changes/browser/changesActivity.ts
src/vs/sessions/browser/parts/sessionActivityBar.ts
2
100 src/vs/sessions/contrib/changes/browser/changesActivity.ts
src/vs/sessions/browser/parts/media/sessionActivityBar.css
1
100 src/vs/sessions/contrib/changes/browser/changesActivity.ts
src/vs/sessions/services/sessions/test/common/sessionChangesStatsCache.test.ts
1
100 src/vs/sessions/contrib/changes/browser/changesActivity.ts
src/vs/sessions/services/sessions/common/sessionChangesStatsCache.ts
1
100 src/vs/sessions/contrib/changes/browser/changesActivity.ts
src/vs/sessions/contrib/chat/test/browser/sessionChatInputToolbar.test.ts
1
100 src/vs/sessions/contrib/changes/browser/changesActivity.ts
src/vs/sessions/test/browser/sessionView.test.ts
1
100 src/vs/sessions/contrib/changes/browser/changesActivity.ts
src/vs/sessions/contrib/changes/browser/changes.contribution.ts
1
100 src/vs/sessions/contrib/changes/browser/changesActivity.ts
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/test/browser/sessionActivityBar.test.ts
src/vs/sessions/contrib/chat/test/browser/sessionActivityBar.fixture.ts
1
100 src/vs/sessions/test/browser/sessionActivityBar.test.ts
src/vs/sessions/browser/parts/sessionActivityBar.ts
2
100 src/vs/sessions/test/browser/sessionActivityBar.test.ts
src/vs/sessions/test/browser/chatGroupsView.test.ts
1
100 src/vs/sessions/test/browser/sessionActivityBar.test.ts
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/contrib/chat/test/browser/sessionActivityBar.fixture.ts
src/vs/sessions/test/browser/sessionActivityBar.test.ts
1
100 src/vs/sessions/contrib/chat/test/browser/sessionActivityBar.fixture.ts
src/vs/sessions/browser/parts/sessionActivityBar.ts
1
100 src/vs/sessions/contrib/chat/test/browser/sessionActivityBar.fixture.ts
src/vs/sessions/test/browser/chatGroupsView.test.ts
1
100 src/vs/sessions/contrib/chat/test/browser/sessionActivityBar.fixture.ts
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/browser/parts/sessionActivityBar.ts
src/vs/sessions/test/browser/sessionActivityBar.test.ts
2
100 src/vs/sessions/browser/parts/sessionActivityBar.ts
src/vs/sessions/contrib/chat/test/browser/sessionActivityBar.fixture.ts
1
100 src/vs/sessions/browser/parts/sessionActivityBar.ts
src/vs/sessions/test/browser/chatGroupsView.test.ts
1
100 src/vs/sessions/browser/parts/sessionActivityBar.ts
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/browser/parts/media/sessionActivityBar.css
src/vs/sessions/test/browser/sessionActivityBar.test.ts
1
100 src/vs/sessions/browser/parts/media/sessionActivityBar.css
src/vs/sessions/contrib/chat/test/browser/sessionActivityBar.fixture.ts
1
100 src/vs/sessions/browser/parts/media/sessionActivityBar.css
src/vs/sessions/browser/parts/sessionActivityBar.ts
1
100 src/vs/sessions/browser/parts/media/sessionActivityBar.css
src/vs/sessions/test/browser/chatGroupsView.test.ts
1
100 src/vs/sessions/browser/parts/media/sessionActivityBar.css
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/services/sessions/test/common/sessionChangesStatsCache.test.ts
src/vs/sessions/services/sessions/common/sessionChangesStatsCache.ts
1
100 src/vs/sessions/services/sessions/test/common/sessionChangesStatsCache.test.ts
src/vs/sessions/contrib/chat/test/browser/sessionChatInputToolbar.test.ts
1
100 src/vs/sessions/services/sessions/test/common/sessionChangesStatsCache.test.ts
src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.ts
1
100 src/vs/sessions/services/sessions/common/sessionChangesStatsCache.ts
src/vs/sessions/services/sessions/test/common/sessionChangesStatsCache.test.ts
1
100 src/vs/sessions/services/sessions/common/sessionChangesStatsCache.ts
src/vs/sessions/contrib/chat/test/browser/sessionChatInputToolbar.test.ts
1
100 src/vs/sessions/services/sessions/common/sessionChangesStatsCache.ts
src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.ts
1
100 src/vs/sessions/contrib/chat/test/browser/sessionChatInputToolbar.test.ts
src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.ts
1
100 src/vs/sessions/contrib/chat/test/browser/sessionChatInputToolbar.test.ts
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/test/browser/chatGroupsView.test.ts
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/test/browser/sessionView.test.ts
src/vs/sessions/test/browser/chatGroupsView.test.ts
1
100 src/vs/sessions/test/browser/sessionView.test.ts
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1
100 src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.ts
src/vs/sessions/contrib/chat/test/browser/sessionChatInputToolbar.test.ts
1
100 src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.ts
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts
1

Biggest files changes in pull request

Estimated line counts are shown. Values may change once change summary has finished building.

Path View whole file Lines removed Lines added Final line count
src/vs/sessions/contrib/changes/browser/changesActivity.ts 3 296 ---
src/vs/sessions/browser/parts/sessionActivityBar.ts 7 92 ---
src/vs/sessions/contrib/changes/test/browser/changesActivity.test.ts 5 184 ---
src/vs/sessions/test/browser/sessionActivityBar.test.ts 2 55 ---
src/vs/sessions/services/activity/common/sessionActivityBarActivityService.ts 0 69 ---
src/vs/sessions/browser/parts/media/sessionActivityBar.css 0 36 ---
src/vs/sessions/contrib/chat/test/browser/sessionChatInputToolbar.test.ts 0 36 ---
src/vs/sessions/services/sessions/common/sessionChangesStatsCache.ts 0 24 ---
src/vs/sessions/services/sessions/test/common/sessionChangesStatsCache.test.ts 0 36 ---
src/vs/sessions/contrib/chat/browser/sessionChatInputToolbar.ts 0 19 ---
src/vs/sessions/contrib/chat/test/browser/sessionActivityBar.fixture.ts 0 11 ---
src/vs/sessions/contrib/chat/browser/sessionsChatAccessibilityHelp.ts 1 1 ---
src/vs/sessions/contrib/changes/browser/media/changesActivity.css 0 15 ---
src/vs/sessions/contrib/changes/browser/changes.contribution.ts 0 2 ---
src/vs/sessions/test/browser/sessionView.test.ts 0 2 ---
src/vs/sessions/test/browser/chatGroupsView.test.ts 0 2 ---
src/vs/sessions/sessions.common.main.ts 0 1 ---

️ Biggest functions grown or shrunk by pull request

Which functions had their line count change as part of this pull request?

Stat calculation pending updated commit group build. Please check back in a few minutes.