fix(electrobun): hasSession checks running status (dead sessions no longer block startAgent)
This commit is contained in:
parent
f1472848f8
commit
8031cf91cf
2 changed files with 10 additions and 2 deletions
|
|
@ -132,11 +132,14 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleSend(text: string) {
|
function handleSend(text: string) {
|
||||||
|
console.log('[ProjectCard] handleSend called:', { id, provider, cwd, model, hasSession: appState.agent.hasSession(id), text: text.slice(0, 50) });
|
||||||
if (appState.agent.hasSession(id)) {
|
if (appState.agent.hasSession(id)) {
|
||||||
|
console.log('[ProjectCard] calling sendPrompt');
|
||||||
appState.agent.sendPrompt(id, text).catch((err) => {
|
appState.agent.sendPrompt(id, text).catch((err) => {
|
||||||
console.error('[agent.prompt] error:', err);
|
console.error('[agent.prompt] error:', err);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
|
console.log('[ProjectCard] calling startAgent');
|
||||||
appState.agent.startAgent(id, provider, text, { cwd, model }).catch((err) => {
|
appState.agent.startAgent(id, provider, text, { cwd, model }).catch((err) => {
|
||||||
console.error('[agent.start] error:', err);
|
console.error('[agent.start] error:', err);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -602,9 +602,14 @@ export function getSession(projectId: string): AgentSession | undefined {
|
||||||
return sessions[sessionId];
|
return sessions[sessionId];
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Check if a project has an active session. */
|
/** Check if a project has an active (running) session. */
|
||||||
export function hasSession(projectId: string): boolean {
|
export function hasSession(projectId: string): boolean {
|
||||||
return projectSessionMap.has(projectId);
|
const sessionId = projectSessionMap.get(projectId);
|
||||||
|
if (!sessionId) return false;
|
||||||
|
const session = sessions[sessionId];
|
||||||
|
// Only return true if session exists AND is running
|
||||||
|
// Dead/error/done sessions should trigger startAgent, not sendPrompt
|
||||||
|
return !!session && session.status === 'running';
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue