fix: enforce meeting summary sections

This commit is contained in:
2026-06-10 03:21:36 +00:00
parent 53d73df433
commit 6670b5adec
2 changed files with 60 additions and 11 deletions
+38 -11
View File
@@ -311,14 +311,27 @@ async def _chat_completion(prompt: str, *, timeout: int = 180) -> str:
def _summary_prompt(transcript: str) -> str:
return f"""You are a meeting summarizer. Given the following meeting transcript, produce a concise, well-structured summary with:
return f"""You are a meeting summarizer. Given the following meeting transcript, produce a concise, well-structured summary.
1. **Overview** — 2-3 sentences covering what was discussed
2. **Key Decisions** — decisions that were made
3. **Action Items** — who needs to do what (use bullet points)
4. **Next Steps / Deadlines** — any dates, timelines, or follow-ups mentioned
Use exactly these markdown section headings, in this order:
If speaker labels are present, preserve them where helpful in action items.
## What Was Done
- Summarize the work completed, progress reported, and status updates.
- Include all dev team members' reports that appear in the transcript; do not omit any named person.
## What Will Be Done Next
- Summarize the upcoming work, planned follow-ups, and expected next steps.
## Action Items
- Use bullet points.
- For each item, include the owner when it is mentioned.
## Decisions
- List decisions that were made.
- If no decisions were made, say "- None recorded."
If speaker labels are present, preserve them where helpful.
Do not add extra top-level sections.
Transcript:
{transcript}"""
@@ -341,12 +354,26 @@ def _combined_summary_prompt(chunk_summaries: list[str]) -> str:
merged = "\n\n".join(
f"Chunk {index}:\n{summary}" for index, summary in enumerate(chunk_summaries, start=1)
)
return f"""You are a meeting summarizer. The transcript was summarized in chunks first. Combine them into one final meeting summary with:
return f"""You are a meeting summarizer. The transcript was summarized in chunks first. Combine them into one final meeting summary.
1. **Overview** — 2-3 sentences covering what was discussed
2. **Key Decisions** — decisions that were made
3. **Action Items** — who needs to do what (use bullet points)
4. **Next Steps / Deadlines** — any dates, timelines, or follow-ups mentioned
Use exactly these markdown section headings, in this order:
## What Was Done
- Summarize the work completed, progress reported, and status updates.
- Include all dev team members' reports that appear in the chunk summaries; do not omit any named person.
## What Will Be Done Next
- Summarize the upcoming work, planned follow-ups, and expected next steps.
## Action Items
- Use bullet points.
- For each item, include the owner when it is mentioned.
## Decisions
- List decisions that were made.
- If no decisions were made, say "- None recorded."
Do not add extra top-level sections.
Combined chunk summaries:
{merged}"""