<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Arshitha S</title>
    <description>The latest articles on DEV Community by Arshitha S (@arshu-1104).</description>
    <link>https://dev.to/arshu-1104</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4141694%2Fec4a10ca-d4f0-4a4f-aac2-8e7dd6e2e4be.png</url>
      <title>DEV Community: Arshitha S</title>
      <link>https://dev.to/arshu-1104</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/arshu-1104"/>
    <language>en</language>
    <item>
      <title>Building FraudGraph Investigator: An AI-Powered Graph-Based Fraud Investigation System</title>
      <dc:creator>Arshitha S</dc:creator>
      <pubDate>Thu, 24 Sep 2026 17:39:44 +0000</pubDate>
      <link>https://dev.to/arshu-1104/building-fraudgraph-investigator-an-ai-powered-graph-based-fraud-investigation-system-55hc</link>
      <guid>https://dev.to/arshu-1104/building-fraudgraph-investigator-an-ai-powered-graph-based-fraud-investigation-system-55hc</guid>
      <description>&lt;p&gt;How we combined TigerGr&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fudi2pwpcolgsgbud2cbl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fudi2pwpcolgsgbud2cbl.png" alt=" " width="800" height="370"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqmzejx3drepi15k63rwd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqmzejx3drepi15k63rwd.png" alt=" " width="800" height="368"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faq1io2sv3i7o5pbvcsjr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Faq1io2sv3i7o5pbvcsjr.png" alt=" " width="800" height="368"&gt;&lt;/a&gt;aph, LangGraph, MCP, evidence analysis, case memory, and policy-based decisions to investigate suspicious transactions.&lt;/p&gt;

&lt;p&gt;Introduction&lt;/p&gt;

&lt;p&gt;Fraud detection is often treated as a classification problem: given a transaction, determine whether it is suspicious or legitimate.&lt;/p&gt;

&lt;p&gt;But real fraud investigation requires more than a risk score.&lt;/p&gt;

&lt;p&gt;When a transaction is flagged, an investigator needs to understand the context around it:&lt;/p&gt;

&lt;p&gt;Who is the customer?&lt;br&gt;
Which card was used?&lt;br&gt;
Which device was involved?&lt;br&gt;
Are there related transactions?&lt;br&gt;
What historical information is available?&lt;br&gt;
What evidence supports the suspicion?&lt;br&gt;
What evidence contradicts it?&lt;br&gt;
Is the available evidence sufficient?&lt;br&gt;
What action should be taken?&lt;/p&gt;

&lt;p&gt;For the TigerGraph × Hacker House Goa challenge, our team built FraudGraph Investigator, an AI-powered fraud investigation system that combines connected-data investigation, agentic workflows, evidence analysis, uncertainty assessment, and policy-governed actions.&lt;/p&gt;

&lt;p&gt;What We Built&lt;/p&gt;

&lt;p&gt;FraudGraph Investigator takes a suspicious transaction and turns it into a structured investigation.&lt;/p&gt;

&lt;p&gt;Instead of simply treating a high-risk transaction as fraud, our system follows a complete investigation workflow:&lt;/p&gt;

&lt;p&gt;Suspicious Transaction → Investigation Planning → Evidence Collection → Evidence Analysis → Hypothesis Evaluation → Uncertainty Assessment → Evidence Sufficiency → Policy Evaluation → Next-Best Action → Case Memory&lt;/p&gt;

&lt;p&gt;The system can produce three main actions:&lt;/p&gt;

&lt;p&gt;BLOCK_CARD&lt;br&gt;
VERIFY_WITH_CUSTOMER&lt;br&gt;
ESCALATE&lt;/p&gt;

&lt;p&gt;A key design principle was to separate AI-assisted investigation from the final operational decision. The investigation produces evidence and reasoning, while explicit policy rules govern the final action.&lt;/p&gt;

&lt;p&gt;System Architecture&lt;/p&gt;

&lt;p&gt;Our system consists of several layers:&lt;/p&gt;

&lt;p&gt;Investigator UI&lt;br&gt;
↓&lt;br&gt;
FastAPI API&lt;br&gt;
↓&lt;br&gt;
LangGraph Investigation Workflow&lt;br&gt;
↓&lt;br&gt;
MCP Investigation Tools&lt;br&gt;
↓&lt;br&gt;
TigerGraph / Dataset&lt;br&gt;
↓&lt;br&gt;
Evidence Analysis&lt;br&gt;
↓&lt;br&gt;
Policy Engine&lt;br&gt;
↓&lt;br&gt;
Next-Best Action&lt;/p&gt;

&lt;p&gt;The architecture separates the data layer, investigation workflow, reasoning, policy enforcement, and user interface.&lt;/p&gt;

&lt;p&gt;This makes the system easier to test, inspect, and extend.&lt;/p&gt;

&lt;p&gt;Why We Used TigerGraph&lt;/p&gt;

&lt;p&gt;Fraud rarely exists as an isolated transaction.&lt;/p&gt;

&lt;p&gt;A transaction can be connected to several entities, including:&lt;/p&gt;

&lt;p&gt;Customer → Card → Transaction → Device → Location → Related Transactions&lt;/p&gt;

&lt;p&gt;It can also connect to historical investigation information.&lt;/p&gt;

&lt;p&gt;This is where graph-based investigation becomes useful.&lt;/p&gt;

&lt;p&gt;Instead of looking at only one transaction, our system can investigate the relationships surrounding that transaction.&lt;/p&gt;

&lt;p&gt;TigerGraph provides the graph-oriented foundation for this approach, allowing connected entities and their relationships to become part of the investigation.&lt;/p&gt;

&lt;p&gt;The key question changes from:&lt;/p&gt;

&lt;p&gt;"How risky is this transaction?"&lt;/p&gt;

&lt;p&gt;to:&lt;/p&gt;

&lt;p&gt;"What else is connected to this transaction, and what does that context tell us?"&lt;/p&gt;

&lt;p&gt;Using MCP for Investigation&lt;/p&gt;

&lt;p&gt;We used Model Context Protocol (MCP) to expose investigation capabilities as structured tools.&lt;/p&gt;

&lt;p&gt;The agent does not directly manipulate the underlying data. Instead, it requests specific investigation operations through MCP.&lt;/p&gt;

&lt;p&gt;The general flow is:&lt;/p&gt;

&lt;p&gt;LangGraph Agent → MCP Tool → Data/Graph Layer → Structured Evidence → Investigation Workflow&lt;/p&gt;

&lt;p&gt;The investigation tools provide targeted information such as:&lt;/p&gt;

&lt;p&gt;Transaction details&lt;br&gt;
Customer information&lt;br&gt;
Connected entities&lt;br&gt;
Shared devices&lt;br&gt;
Historical fraud information&lt;br&gt;
Related activity&lt;br&gt;
Temporal patterns&lt;br&gt;
Geographic/contextual signals&lt;/p&gt;

&lt;p&gt;The returned information becomes evidence that can be used during the investigation.&lt;/p&gt;

&lt;p&gt;LangGraph Investigation Workflow&lt;/p&gt;

&lt;p&gt;We used LangGraph to orchestrate the investigation as a structured workflow instead of relying on a single LLM call.&lt;/p&gt;

&lt;p&gt;The workflow moves through several stages.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Case Loaded&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The suspicious transaction and case information are loaded.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Investigation Planned&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The system determines what evidence needs to be collected.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Evidence Collected&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;MCP tools retrieve the required information from the available data sources.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Evidence Analysed&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The collected information is organized and classified.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Hypotheses Evaluated&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Possible explanations for the transaction are considered, such as:&lt;/p&gt;

&lt;p&gt;Card-not-present fraud&lt;br&gt;
New-device activity&lt;br&gt;
Card testing&lt;br&gt;
Out-of-region usage&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Uncertainty Assessed&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The workflow evaluates how uncertain the investigation remains.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Evidence Sufficiency&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The system determines whether enough evidence exists to support an operational decision.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Policy Evaluation&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The investigation state and evidence are evaluated against deterministic policy rules.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Action Determined&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The system produces the next-best action.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Case Memory Written&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The investigation result is stored so that future investigations can use historical context.&lt;/p&gt;

&lt;p&gt;Evidence Sufficiency vs. Uncertainty&lt;/p&gt;

&lt;p&gt;One of the important design decisions in our system was to separate evidence sufficiency from uncertainty.&lt;/p&gt;

&lt;p&gt;These are not the same thing.&lt;/p&gt;

&lt;p&gt;A case can have enough evidence to support a decision while still having significant uncertainty.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;Evidence Sufficiency: SUFFICIENT&lt;/p&gt;

&lt;p&gt;Uncertainty: HIGH&lt;/p&gt;

&lt;p&gt;This distinction prevents the system from treating a high risk score as the only factor in determining the final action.&lt;/p&gt;

&lt;p&gt;The investigation considers both the available evidence and the remaining uncertainty.&lt;/p&gt;

&lt;p&gt;HHG-010 Case Study&lt;/p&gt;

&lt;p&gt;One of our benchmark cases is HHG-010.&lt;/p&gt;

&lt;p&gt;The investigation produced:&lt;/p&gt;

&lt;p&gt;Customer: C10434&lt;br&gt;
Transaction: 3506725&lt;br&gt;
Risk Score: 0.90&lt;br&gt;
Amount: $1,000.03&lt;br&gt;
Status: COMPLETE&lt;br&gt;
Evidence: SUFFICIENT&lt;br&gt;
Uncertainty: HIGH&lt;br&gt;
Recommended Action: ESCALATE&lt;/p&gt;

&lt;p&gt;The system identified both supporting and contradictory evidence.&lt;/p&gt;

&lt;p&gt;For example, the investigation found:&lt;/p&gt;

&lt;p&gt;$0 confirmed fraud + $1,000.03 pending exposure&lt;br&gt;
The transaction used a desktop/Windows device&lt;br&gt;
The customer had no prior confirmed fraud cases&lt;/p&gt;

&lt;p&gt;The result was therefore not simply:&lt;/p&gt;

&lt;p&gt;High Risk → BLOCK&lt;/p&gt;

&lt;p&gt;Instead, the investigation resulted in:&lt;/p&gt;

&lt;p&gt;High Risk + Sufficient Evidence + High Uncertainty → ESCALATE → Senior Analyst Approval&lt;/p&gt;

&lt;p&gt;This demonstrates an important principle of our system:&lt;/p&gt;

&lt;p&gt;Investigate first, then act based on evidence and policy.&lt;/p&gt;

&lt;p&gt;Historical Case Memory&lt;/p&gt;

&lt;p&gt;Fraud investigations should not always start from zero.&lt;/p&gt;

&lt;p&gt;FraudGraph Investigator includes a case memory layer that stores information from previous investigations.&lt;/p&gt;

&lt;p&gt;This provides historical context such as:&lt;/p&gt;

&lt;p&gt;Customer history&lt;br&gt;
Previous transactions&lt;br&gt;
Previous investigation outcomes&lt;br&gt;
Cards involved&lt;br&gt;
Previous actions&lt;br&gt;
Approval information&lt;/p&gt;

&lt;p&gt;The goal is to make future investigations more context-aware while keeping the information structured and traceable.&lt;/p&gt;

&lt;p&gt;Policy-Governed Decisions&lt;/p&gt;

&lt;p&gt;Another important component is the deterministic policy layer.&lt;/p&gt;

&lt;p&gt;The LLM assists with investigation and reasoning, but operational actions are controlled through explicit policy rules.&lt;/p&gt;

&lt;p&gt;The overall decision flow is:&lt;/p&gt;

&lt;p&gt;Evidence + Investigation State + Uncertainty + Risk/Exposure&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;Policy Engine&lt;/p&gt;

&lt;p&gt;↓&lt;/p&gt;

&lt;p&gt;BLOCK_CARD / VERIFY_WITH_CUSTOMER / ESCALATE&lt;/p&gt;

&lt;p&gt;This separation helps keep the final operational action governed rather than allowing an LLM to directly make an unrestricted decision.&lt;/p&gt;

&lt;p&gt;Investigator Dashboard&lt;/p&gt;

&lt;p&gt;We built an interactive FastAPI-based investigator dashboard to make the investigation results accessible through a single interface.&lt;/p&gt;

&lt;p&gt;The dashboard provides:&lt;/p&gt;

&lt;p&gt;Case navigation&lt;br&gt;
Investigation reports&lt;br&gt;
Risk information&lt;br&gt;
Supporting evidence&lt;br&gt;
Contradictory evidence&lt;br&gt;
Hypotheses&lt;br&gt;
Case memory&lt;br&gt;
Investigation workflow&lt;br&gt;
Recommended action&lt;br&gt;
Benchmark results&lt;br&gt;
Validation status&lt;/p&gt;

&lt;p&gt;An investigator can move from the overall benchmark view into an individual case and inspect the evidence and reasoning behind the result.&lt;/p&gt;

&lt;p&gt;Benchmark Results&lt;/p&gt;

&lt;p&gt;We evaluated the complete workflow across 20 benchmark investigations.&lt;/p&gt;

&lt;p&gt;The expected action distribution was:&lt;/p&gt;

&lt;p&gt;Action  Cases&lt;br&gt;
BLOCK_CARD  15&lt;br&gt;
VERIFY_WITH_CUSTOMER    4&lt;br&gt;
ESCALATE    1&lt;br&gt;
Total   20&lt;/p&gt;

&lt;p&gt;Our benchmark dashboard showed:&lt;/p&gt;

&lt;p&gt;20 total cases&lt;br&gt;
20 reports loaded&lt;br&gt;
20/20 cases with sufficient evidence&lt;br&gt;
0 benchmark errors&lt;br&gt;
0 benchmark warnings&lt;/p&gt;

&lt;p&gt;The end-to-end validation also checked the expected action invariants across the benchmark cases.&lt;/p&gt;

&lt;p&gt;Technology Stack&lt;br&gt;
Technology  Role&lt;br&gt;
TigerGraph  Connected graph investigation&lt;br&gt;
LangGraph   Agent/workflow orchestration&lt;br&gt;
MCP Structured investigation tools&lt;br&gt;
Python  Core implementation&lt;br&gt;
FastAPI API and investigator dashboard&lt;br&gt;
Case Memory Historical investigation context&lt;br&gt;
Policy Engine   Deterministic action governance&lt;br&gt;
What We Learned&lt;/p&gt;

&lt;p&gt;The biggest lesson from this project was that building an AI investigation system is not only about choosing an LLM.&lt;/p&gt;

&lt;p&gt;A practical system also needs:&lt;/p&gt;

&lt;p&gt;Connected Data + Investigation Tools + Agent Workflow + Evidence + Uncertainty + Policy + Testing + User Interface&lt;/p&gt;

&lt;p&gt;Graph technology was particularly useful because fraud investigations naturally involve relationships between entities.&lt;/p&gt;

&lt;p&gt;We also learned the importance of separating:&lt;/p&gt;

&lt;p&gt;What the model reasons about → What evidence exists → What the policy allows → What action is finally taken&lt;/p&gt;

&lt;p&gt;Future Improvements&lt;/p&gt;

&lt;p&gt;There are several areas we would explore in a production version.&lt;/p&gt;

&lt;p&gt;Real-Time Graph Integration&lt;/p&gt;

&lt;p&gt;The system could be connected to continuously updated transaction streams and a production TigerGraph environment.&lt;/p&gt;

&lt;p&gt;Advanced Graph Analytics&lt;/p&gt;

&lt;p&gt;Additional graph algorithms could help identify:&lt;/p&gt;

&lt;p&gt;Fraud rings&lt;br&gt;
Suspicious communities&lt;br&gt;
Entity similarity&lt;br&gt;
Coordinated transaction patterns&lt;br&gt;
Suspicious subgraphs&lt;br&gt;
Improved Case Memory&lt;/p&gt;

&lt;p&gt;A larger historical investigation repository could provide richer contextual reasoning.&lt;/p&gt;

&lt;p&gt;Human-in-the-Loop Investigation&lt;/p&gt;

&lt;p&gt;Investigators could approve, reject, or request additional evidence before a final action.&lt;/p&gt;

&lt;p&gt;Production Monitoring&lt;/p&gt;

&lt;p&gt;A production deployment would also require monitoring for data drift, model drift, investigation latency, policy violations, false positives, and changing fraud patterns.&lt;/p&gt;

&lt;p&gt;Conclusion&lt;/p&gt;

&lt;p&gt;FraudGraph Investigator was built around a simple idea:&lt;/p&gt;

&lt;p&gt;Fraud investigation should be evidence-driven, connected, and governed — not just a prediction from a single transaction.&lt;/p&gt;

&lt;p&gt;By combining TigerGraph, LangGraph, MCP, case memory, evidence analysis, and deterministic policy rules, we created an end-to-end investigation workflow that moves from a suspicious transaction to an explainable next-best action.&lt;/p&gt;

&lt;p&gt;The project gave us hands-on experience building an AI system where graph relationships, agentic workflows, evidence, uncertainty, and governance work together.&lt;/p&gt;

&lt;p&gt;Thanks to TigerGraph and Hacker House Goa for providing the challenge and the opportunity to build around connected-data intelligence.&lt;/p&gt;

&lt;h1&gt;
  
  
  TigerGraph #HackerHouseGoa #FraudDetection #AgenticAI
&lt;/h1&gt;

</description>
      <category>ai</category>
      <category>architecture</category>
      <category>database</category>
      <category>security</category>
    </item>
  </channel>
</rss>
