fix(sessions): meaningful labels — project name + summary instead of Conversation N

This commit is contained in:
2026-03-08 01:54:22 +09:00
parent 79c2b1b6d9
commit a2aed87b05
2 changed files with 17 additions and 6 deletions

View File

@@ -107,21 +107,32 @@
bridgeSessions = (sessData.sessions || []).map(s => {
const cascade = cascadeMap[s.id] || {};
// 워크스페이스에서 프로젝트명 추출
// 워크스페이스에서 프로젝트명 추출 (computedName 우선)
const repoName = cascade.workspaces?.[0]?.repository?.computedName || '';
const wsUri = cascade.workspaces?.[0]?.workspaceFolderAbsoluteUri || '';
const project = wsUri ? decodeURIComponent(wsUri.split('/').pop()) : '';
const project = repoName
? repoName.split('/').pop() // "Variet/gravity_web" → "gravity_web"
: (wsUri ? decodeURIComponent(wsUri.split('/').pop()) : '');
// 대화 이름: cascade summary > task name > title (Conversation N은 무시)
const rawTitle = s.title || '';
const isGeneric = /^Conversation \d+$/.test(rawTitle);
const summary = cascade.summary || '';
const taskName = cascade.latestTaskBoundaryStep?.step?.taskBoundary?.taskName || '';
const displayName = summary || taskName || (isGeneric ? '' : rawTitle) || s.id.substring(0, 8);
// 상태
const runStatus = cascade.status || '';
const isRunning = runStatus.includes('RUNNING');
return {
id: s.id,
name: s.title || s.id.substring(0, 8),
name: displayName,
host: 'bridge',
cdpPort: 0,
status: isRunning ? 'running' : 'connected',
title: s.title,
stepCount: s.stepCount,
lastModified: s.lastModifiedTime,
title: displayName,
stepCount: cascade.stepCount || s.stepCount || 0,
lastModified: cascade.lastModifiedTime || s.lastModifiedTime,
project: project,
isRunning: isRunning,
isBridge: true,