Building MatchDay AI: A Memory-Aware Autopilot for Event Travel

@islandsofmoons
영어2일 전 · 2026년 7월 20일
119K
32
1
3
3

TL;DR

MatchDay AI is a technical showcase of an autonomous travel agent that integrates persistent memory with deterministic verification to ensure reliable event logistics.

Building MatchDay AI: a memory-aware autopilot for event travel

I built MatchDay AI for the Qwen Cloud Global AI and the OpenAI Build Week Hackathon and submitted it **only to Track 4: Autopilot Agent*\*. Its persistent-memory capabilities also align with Track 1, but they are the differentiator inside one Track 4 submission—not a second-track entry. The core breakthrough is the complete workflow: understand a messy request, recall relevant preferences, invoke typed tools, detect a trip-breaking conflict, repair the plan, and independently verify the result.

\View the Demo\

[View the Architecture]

ZX🇨🇦 - inline image

architecture

ZX🇨🇦 - inline image

architecture-frontend

ZX🇨🇦 - inline image

architecture-memory

ZX🇨🇦 - inline image

architecture-autopilot

The problem and its value

Travel search is not the same as dependable trip planning. A flight can look cheap yet arrive too late once airport transfer time and a fan's safety buffer are applied. A familiar preference can disappear between sessions. A stale seller link can return zero results. A route estimate can be mistaken for a fare, or incomplete provider data can become an unjustified booking claim.

For a high-stakes event, those are not cosmetic failures: one bad recommendation can make the entire trip worthless. MatchDay turns them into explicit constraints, evidence states, and verification checks before showing a plan as complete.

How MatchDay works

The production path is:

\\`text

Fan → Next.js on Vercel → signed server facade → Alibaba ECS

→ Caddy + FastAPI + PostgreSQL + durable workers

→ Qwen Cloud + typed travel/context tools

→ normalize → rank → detect conflict → repair → verify

→ immutable trip version and privacy-safe share

\\`

Qwen Cloud's \qwen3.7-plus\ is the production planning controller. It interprets natural language, classifies each turn, resolves ambiguity, selects typed tools, proposes grounded memory changes, chooses from allowlisted repair candidates, and explains the result. The bounded gateway is implemented in \`[qwen.py\](../backend/matchday/qwen.py), while the durable tool loop lives in [\agent.py`](../backend/matchday/agent.py).

The model never certifies its own answer. Deterministic code owns schemas, fixture binding, evidence validation, package arithmetic, constraint enforcement, conflict detection, repair application, and the independent 14-check release contract in \`[safety.py`](../backend/matchday/safety.py). This was the most important architecture decision: **use the model for judgment, but use code for truth*\*.

Persistent memory follows the same principle. Explicit user facts and repeated verified behavior enter one owner-scoped source of truth, but one unusual trip does not silently become a permanent preference. Behavior is promoted only after reinforcement across distinct root trips. Memory supports bounded recall, trip-specific namespaces, current-message precedence, correction, expiry, supersession, deletion, disablement, and auditable reuse in \`[memory.py`](../backend/matchday/memory.py).

Autonomy is durable, not unbounded. PostgreSQL leases, fencing tokens, checkpoints, retries, cancellation, idempotency, and cumulative time/model/tool/cost limits let interrupted work resume without running forever or spending the same budget twice. The runtime is in \`[runs.py\](../backend/matchday/runs.py), and the Alibaba deployment starts separate API, run-worker, fixture-refresh, PostgreSQL, and Caddy services in [\docker-compose.yml`](../deploy/alibaba/docker-compose.yml).

Where Codex accelerated the work

Qwen is MatchDay's runtime intelligence. **Codex with the GPT-5.6 Sol Max configuration was my engineering accelerator.*\* I used a bounded hybrid version of OpenClaw's Peter-style loop—define, build, attack, check, fix—on small, independently verifiable slices.

Codex accelerated architecture tracing, implementation, regression-test generation, root-cause analysis, adversarial review, browser QA, and deployment verification. It helped expose issues that a happy-path demo would miss: memory source-of-truth disagreement after manual edits, incorrect cross-session recall, stale or zero-result flight handoffs, prompt and indirect injection, SSRF and unsafe redirects, replay attacks, tenant isolation, concurrency races, stale checkpoints, and degraded map or 3D rendering.

The key product decisions remained explicit: I chose the Qwen-versus-deterministic trust boundary, the two-trip memory-promotion threshold, the evidence taxonomy, human checkpoints for unsupported or high-risk claims, and a no-purchase release boundary. Codex shortened the feedback cycle and attacked each claim; it did not replace those product and safety decisions.

How it maps to the judging criteria

  • **Innovation and AI creativity:*\* MatchDay combines cross-session memory with a durable Autopilot, evidence-gated repair, and an independent verifier. The visible \Remembered → Conflict detected → Plan repaired → Result verified\ rail makes that architecture inspectable rather than hiding it behind a chat response.
  • **Technical depth and engineering:*\* Qwen Cloud drives typed decisions; Alibaba ECS runs the FastAPI/PostgreSQL control and execution plane; Vercel provides the signed frontend boundary. The repository includes source-blind evals, provider contract tests, PostgreSQL concurrency checks, and Playwright journeys across Chromium, Firefox, and WebKit.
  • **Problem value and impact:*\* The current B2C product protects fans planning expensive, time-critical event travel. The future B2B path is an embeddable or white-label planning agent for travel agencies, using their inventory, policies, approval rules, and customer channels. The AGPL-3.0 provider architecture also supports open-source adoption.
  • **Presentation and documentation:*\* Judges can try the live app without credentials, inspect the factual decision trace, use the map and illustrative stadium lens with explicit evidence boundaries, watch the short demo, and regenerate every architecture diagram from its Graphviz source.

MatchDay is currently focused on World Cup travel planning and does not purchase travel. Live commercial evidence depends on configured provider access; missing prices, inventory, availability, or refund terms stay visibly unknown. Broader event travel and agency embedding are product directions, not claims about the current release.

The goal is simple: **an autonomous travel agent should not merely produce an answer—it should remember responsibly, act within evidence, repair what is unsafe, and prove the final plan.*\[#QWEN](https://x.com/search?q=%23QWEN&src=hashtag_click) [#ALIBABA](https://x.com/search?q=%23ALIBABA&src=hashtag_click) [#CODEX](https://x.com/search?q=%23CODEX&src=hashtag_click) [#OPENAI](https://x.com/search?q=%23OPENAI&src=hashtag_click) [#HACKATHON](https://x.com/search?q=%23HACKATHON&src=hashtag_click) [#CLOUD*](https://x.com/search?q=%23CLOUD&src=hashtag_click

원클릭 저장

YouMind로 바이럴 글을 AI 심층 읽기

소스를 저장하고, 핵심 질문을 던지고, 주장을 요약해 바이럴 글을 다시 활용할 수 있는 노트로 바꾸세요. 하나의 AI 워크스페이스에서 모두 할 수 있습니다.

YouMind 둘러보기
크리에이터를 위해

당신의 Markdown을 깔끔한 𝕏 글로

직접 쓴 장문을 올릴 때 이미지, 표, 코드 블록을 𝕏에 맞게 정리하는 일은 번거롭습니다. YouMind는 전체 Markdown 초안을 깔끔하고 바로 게시할 수 있는 𝕏 글로 바꿔 줍니다.

Markdown → 𝕏 사용해 보기

분석할 패턴 더 보기

최근 바이럴 아티클

더 많은 바이럴 아티클 보기