semantic search within project

This commit is contained in:
Storme-bit
2026-04-15 03:04:04 -07:00
parent 0db2896b55
commit e1c16a5714

View File

@@ -105,19 +105,20 @@ async function chat(externalId, userMessage, options = {}) {
let projectSessionIds = null; let projectSessionIds = null;
if (session.project_id) { if (session.project_id) {
try { try {
console.log('[orchestration] Resolving isolation for project:', session.project_id);
const project = await memory.getProject(session.project_id); const project = await memory.getProject(session.project_id);
console.log('[orchestration] Project resolved:', project); if (project) {
if (project?.isolated === 1) {
const projectSessions = await memory.getProjectSessions(session.project_id); const projectSessions = await memory.getProjectSessions(session.project_id);
console.log('[orchestration] Project sessions:', projectSessions);
projectSessionIds = projectSessions.map(s => s.id); projectSessionIds = projectSessions.map(s => s.id);
if (project.isolated === 1) {
console.log(`[orchestration] Isolated project — restricting to ${projectSessionIds.length} sessions`);
} else {
console.log(`[orchestration] Non-isolated project — expanding search to ${projectSessionIds.length} sessions`);
}
} }
} catch (err) { } catch (err) {
console.warn('[orchestration] Failed to resolve isolation context:', err.message); console.warn('[orchestration] Failed to resolve project context:', err.message);
} }
} }
// 2. Fetch recent episodes for context // 2. Fetch recent episodes for context
const recentEpisodes = await memory.getRecentEpisodes( const recentEpisodes = await memory.getRecentEpisodes(
session.id, session.id,
@@ -181,16 +182,18 @@ console.log('[orchestration] chatStream entry');
let projectSessionIds = null; let projectSessionIds = null;
if (session.project_id) { if (session.project_id) {
try { try {
console.log('[orchestration] Resolving isolation for project:', session.project_id);
const project = await memory.getProject(session.project_id); const project = await memory.getProject(session.project_id);
console.log('[orchestration] Project resolved:', project); if (project) {
if (project?.isolated === 1) {
const projectSessions = await memory.getProjectSessions(session.project_id); const projectSessions = await memory.getProjectSessions(session.project_id);
console.log('[orchestration] Project sessions:', projectSessions);
projectSessionIds = projectSessions.map(s => s.id); projectSessionIds = projectSessions.map(s => s.id);
if (project.isolated === 1) {
console.log(`[orchestration] Isolated project — restricting to ${projectSessionIds.length} sessions`);
} else {
console.log(`[orchestration] Non-isolated project — expanding search to ${projectSessionIds.length} sessions`);
}
} }
} catch (err) { } catch (err) {
console.warn('[orchestration] Failed to resolve isolation context:', err.message); console.warn('[orchestration] Failed to resolve project context:', err.message);
} }
} }