diff --git a/orchestrator/src/server/services/summary.ts b/orchestrator/src/server/services/summary.ts index 3ef98df..aab4279 100644 --- a/orchestrator/src/server/services/summary.ts +++ b/orchestrator/src/server/services/summary.ts @@ -65,7 +65,7 @@ export async function generateSummary( throw new Error('No content in response'); } - return { success: true, summary: summary.trim() }; + return { success: true, summary: sanitizeTailoredSummary(summary) }; } catch (error) { const message = error instanceof Error ? error.message : 'Unknown error'; return { success: false, error: message }; @@ -138,7 +138,7 @@ export async function generateSummaryViaPython( child.on('error', reject); }); - return { success: true, summary: result.trim() }; + return { success: true, summary: sanitizeTailoredSummary(result) }; } catch (error) { const message = error instanceof Error ? error.message : 'Unknown error'; return { success: false, error: message }; @@ -151,3 +151,12 @@ export async function generateSummaryViaPython( } } } + +function sanitizeTailoredSummary(summary: string): string { + const withoutBoldPreface = summary.replace(/\*\*[\s\S]*?\*\*/g, ''); + return withoutBoldPreface + .replace(/^\s*[-–—:]+\s*/g, '') + .replace(/[ \t]{2,}/g, ' ') + .replace(/\n{3,}/g, '\n\n') + .trim(); +}