Inspiration

A sanctioned tanker changes its name and flag. Same hull. New identity. Would you catch it? Flagstate connects sanctions records, live registry evidence, and historical observations to show what changed, with sources you can inspect and a briefing you can hear. Sanctions screening tells you whether a name appears on a list. Tracking a vessel requires following its identity over time.

We built Flagstate to answer: What changed, when did we first observe it, and where’s the evidence?

What it does

Search a ship, company, or person. Flagstate checks US, UK, EU, and UN sanctions records, investigates current public information, compares previous observations, and delivers a sourced briefing. Ask by voice, type a query, or upload a recording. Flagstate transcribes speech, identifies known entities, including former ship names, and connects them to dossiers and live investigations. In our MERU investigation, it detected a flag discrepancy: Comoros in the research snapshot, Equatorial Guinea on the live registry page.

How we built it

A JavaScript frontend on Vercel connects to a FastAPI service on AWS EC2, running:

  • Anchor Browser retrieves live public registry evidence.
  • SurrealDB Agent Memory preserves sourced observations and their history.
  • Daytona runs Python risk analysis in an isolated sandbox.
  • AWS Bedrock generates briefings and runs a faithfulness judge.
  • Arize AI traces investigations and records citation-coverage and faithfulness evaluations.
  • ElevenLabs powers conversational voice, briefing playback, transcription, and voice simulation tests.

Challenges we ran into

Our faithfulness judge caught a subtle error: a briefing described when we observed a flag change as when it happened. The citation check passed, but the claim overstated the evidence. We corrected the briefing instructions and voice behavior. We also separated AWS hosting from Daytona analysis and used asynchronous jobs to keep slower browser investigations usable through voice.

Accomplishments that we're proud of

Six sponsor technologies work together in one traceable investigation workflow, exercised through live TASSOS and MERU investigations. We tested voice interactions against live tools and built five recording scenarios covering maritime reporting, former names, and false-positive traps. Fallback paths help investigations continue when optional integrations fail.

What we learned

A citation can be valid while the claim is misleading. Citation coverage and faithful interpretation need separate checks. Memory is equally important: a current lookup shows a record; dated observations reveal what changed.

What's next for Flagstate

Fleet-wide watchlists, scheduled checks, change alerts, broader ownership history, and exportable evidence packs will give journalists, researchers, and compliance teams an ongoing view of vessels whose identities keep changing.

Built With

Share this project:

Updates

Submission history