feat: move projects to sidebar rail and speed up session switching (#506)

* feat: move projects from header tabs to left sidebar rail

* refactor: remove variant from git generation session context

* feat: implemented drandrop action for navrails

* refactor: improve sidebar drag-and-drop smoothness and remove floating overlay

* fix: prevent mobile nav rail touch from closing drawer and opening menu

* fix: hide header tabs on desktop

* fix: prevent session flicker when switching projects

* style: soften chat panel divider borders

* style: improve icon contrast across core navigation

* fix: stabilize session selection during project switching

* style: unify sidebar surfaces and transparent section layers

* style: remove UI shadows and keep only scroll shadow

* perf: speed up project switching with cached session loading

* perf: speed up Git changes view and background refresh

* perf: make session switching lighter and less aggressive

* perf: optimized sessions list loading while project switching

* perf: smooth chat rendering and reduce interaction spikes

* fix: restore reliable load older messages visibility
This commit is contained in:
Bohdan Triapitsyn
2026-02-25 14:32:23 +02:00
committed by GitHub
parent 4c69bccf56
commit 10851bd7ac
51 changed files with 1995 additions and 1399 deletions
-10
View File
@@ -128,7 +128,6 @@ export async function generateCommitMessage(
providerId: generationSession.providerID,
modelId: generationSession.modelID,
agent: generationSession.agent,
variant: generationSession.variant,
});
const prompt = `You are generating a Conventional Commits subject line using session context and selected file paths.
@@ -251,7 +250,6 @@ export async function generatePullRequestDescription(
providerId: generationSession.providerID,
modelId: generationSession.modelID,
agent: generationSession.agent,
variant: generationSession.variant,
base: payload.base,
head: payload.head,
commits: commits.length,
@@ -324,7 +322,6 @@ type SessionGenerationContext = {
providerID: string;
modelID: string;
agent?: string;
variant?: string;
};
const resolveSessionGenerationContext = (): SessionGenerationContext | null => {
@@ -347,16 +344,11 @@ const resolveSessionGenerationContext = (): SessionGenerationContext | null => {
return null;
}
const variant = agent
? context.getAgentModelVariantForSession(sessionId, agent, selectedModel.providerId, selectedModel.modelId)
: (config.currentVariant || undefined);
return {
sessionId,
providerID: selectedModel.providerId,
modelID: selectedModel.modelId,
agent,
variant,
};
};
@@ -381,7 +373,6 @@ const runStructuredGenerationInActiveSession = async ({
providerID: generationSession.providerID,
modelID: generationSession.modelID,
agent: generationSession.agent,
variant: generationSession.variant,
});
const trimmedDirectory = typeof directory === 'string' ? directory.trim() : '';
const firstNewlineIndex = prompt.indexOf('\n');
@@ -407,7 +398,6 @@ const runStructuredGenerationInActiveSession = async ({
modelID: generationSession.modelID,
},
...(generationSession.agent ? { agent: generationSession.agent } : {}),
...(generationSession.variant ? { variant: generationSession.variant } : {}),
format: {
type: 'json_schema',
schema,