Why
Related articles about the same real-world story should usually become one synthesized briefing item with multiple sources, while unrelated items should remain separate.
Scope
- Add deterministic pre-AI story grouping using source item metadata, normalized titles, links, keywords, and timing.
- Feed grouped story context to the writer prompt so Copilot can synthesize one summary with multiple citations.
- Keep separation rules for superficially similar but materially different stories.
- Track grouped item IDs through scoring, prompt payloads, generated briefings, and seen-state behavior.
- Add fixtures for duplicate, near-duplicate, and same-topic-but-different-story cases.
Acceptance criteria
- Two sources covering the same story can render as one briefing card with both references.
- Distinct stories are not collapsed just because they share keywords.
- Existing scoring and source-diversity behavior remains deterministic.
- Tests cover clustering and non-clustering examples.
Why
Related articles about the same real-world story should usually become one synthesized briefing item with multiple sources, while unrelated items should remain separate.
Scope
Acceptance criteria