The problem
You join a football match halfway through. The score tells you who is ahead, but not what changed or why. A page of statistics leaves you to work that out. An AI explanation is only useful if you can check what it says.
What I built
I built Between the Lines for Microsoft's 2026 Inside the Game hackathon. It is a match companion that explains developing patterns, shows the recorded events behind them, and lets viewers ask an AI analyst their own questions.
The interface combines a match timeline, short story cards, and an interactive pitch. Viewers can replay the actions behind an answer and choose a casual or more detailed explanation.
How an answer gets checked
A viewer might ask, “Is Riverside doing anything about it?” The analyst looks up that team's actions and compares equal periods of play. Its answer links to the events it used, so the viewer can replay the sequence.
Before an answer appears, code checks its numbers, match times, and player names against the evidence returned by the tools. If a check fails, the analyst gets one chance to revise. A second failure withholds the answer. Questions the events cannot answer should be declined.
Every view and tool uses the viewer's position in the match. An answer at 63 minutes cannot use an event from the 80th minute.
The result
A working, publicly accessible prototype with a live AI analyst, replayable evidence, and a source repository. I built the application, the event processing, the answer checks, and the deployment.
The build shows a practical approach to AI: give it a defined job, connect it to evidence, check what can be checked, and decide what happens when it cannot produce a supported answer.
What this demonstrates for business software
The same questions come up when an assistant works with business records. Where did an answer come from? What information was it allowed to use? What happens when the source does not support a claim?
Those decisions belong in the application itself. They are part of how I approach custom software and practical AI projects. For an enterprise example, see ALLETE GPT.
Project limits
This is a hackathon prototype using synthetic events and fictional teams. It has not been validated against professional match data or measured with real viewers.
The answer checker catches unsupported facts such as numbers, times, and names. It cannot guarantee that every relationship or interpretation is right, or that an answer is useful. The public demo is not a production broadcaster deployment.
Under the hood
Application and AI
- Next.js and TypeScript for the application, hosted on Azure App Service.
- A Microsoft Foundry agent chooses read-only evidence tools to investigate viewer questions.
- Code detects patterns and checks answers against the recorded events.
- The evidence tools are also available through an MCP server for other assistants.
Limits, cost controls, and testing
- A shared spending ledger reserves the maximum expected cost before a model request is sent.
- Request limits apply by client and across minute, hour, and day windows.
- If AI is unavailable or a limit is reached, the application falls back to its rule-based match stories.
- Unit tests, browser checks, and live answer evaluations cover different parts of the application. Evaluation details and their limits are documented in the repository.
- The public MCP demo has rate limits and no login. A production integration would need authentication.
Have a workflow that needs a clearer answer?
Start with a free 30-minute introduction. We can talk through the problem, the information involved, and whether AI belongs in the solution.
Discuss a project