Disclosure

This submission builds on Sentinel RegTech, an existing AML investigation product I have been developing since March 2026 (predates the Aug 3-31, 2026 submission period).

Pre-existing (not created during the submission period): the core LangGraph investigation pipeline, the Neo4j ownership/sanctions graph, the React analyst console, the Digital Assets (crypto) module, and the Fairness/Governance audit module.

Newly created during the submission period (Aug 16-31, 2026): swapping the LLM backend to Gemini 3.6 Flash, building a Google Agent Development Kit (ADK) agent layer (adk_agent.py, adk_app/) that wraps the pipeline above as callable tools, deploying the backend to Google Cloud Run with Cloud SQL, and deploying a hosted frontend to Vercel connected to that backend. This work is submitted in a dedicated repository (sentinel-aml-hackathon) containing only work from the submission period.

All pre-existing code is unmodified except where noted above (the LLM swap and the fix required to make Gemini's response format compatible with the existing pipeline, documented in graph_logic.py).

Inspiration

I spent 15+ years in financial services, including retail banking and mortgage operations at JPMorgan Chase. AML/sanctions screening is still largely manual: analysts individually check sanctions lists, trace ownership structures, and search adverse media for every subject — slow, inconsistent, and hard to audit. I built Sentinel to automate that investigation while keeping every decision evidence-backed and human-reviewed.

What it does

Sentinel runs a full AML/sanctions investigation on a subject — identity matching, ownership/network risk via a graph database, adverse-media research, and a groundedness-checked report — and returns a disposition with full evidence citations, source tiering, and mandatory human review for any high-risk case. It also generates a reviewer-ready PDF packet, runs a governance/fairness audit, and supports batch CSV screening and crypto wallet risk screening.

How I built it

The core investigation pipeline is a LangGraph state machine: identity matching → Neo4j ownership/sanctions network lookup → Tavily adverse-media research → report drafting → an automated groundedness audit that forces a rewrite if the report isn't supported by retrieved evidence.

For this hackathon, I swapped the LLM backend to Gemini 3.6 Flash and built a Google Agent Development Kit (ADK) agent that wraps the existing pipeline as a set of tools (run_aml_investigation, generate_investigation_report_pdf, batch_screen_subjects, investigate_digital_asset, generate_governance_fairness_report), deployed on Cloud Run with Cloud SQL (Postgres) for audit persistence.

Challenges I ran into

Getting Gemini's response format to work cleanly with the existing pipeline took some debugging — ChatGoogleGenerativeAI can return message content as a list of parts instead of a plain string, which broke a downstream function expecting a string. Normalizing that was a small fix but took real investigation to trace.

Accomplishments that I am proud of

The governance layer: every disposition passes through explicit, named checks (source-tier gating, weak-source escalation guards, identity ambiguity controls, human review gates) — not just a single confidence score. High-risk and ungrounded outcomes are never auto-cleared.

What I learned

How much of "trustworthy AI" in a regulated context comes down to what you refuse to let the model decide alone — the groundedness audit and mandatory human review gate matter as much as the investigation logic itself.

What's next for Sentinel

Real blockchain analytics provider integrations for the digital-assets module, expanded core-banking connectivity, and formal SOC 2 alignment for pilot deployments.

Built With

Share this project:

Updates

Submission history