Skip to content

Project: Reasoning Agents - DocAssistant.Charty 2 #53

@YuriyMorozyuk95

Description

@YuriyMorozyuk95

Track

Reasoning Agents (Azure AI Foundry)

Project Name

DocAssistant.Charty 2

GitHub Username

@YuriyMorozyuk95

Repository URL

https://github.com/YuriyMorozyuk95/DocAssistant.Charty_2

Project Description

DocAssistant.Charty is an AI-powered analytics app that turns natural-language questions into validated SQL and generates charts and insights for seamless data exploration. It helps teams query data without deep SQL expertise while enforcing security and governance rules.

The system uses a Supervisor agent to orchestrate concurrent RAG retrieval from three dedicated vector indexes: database schema, SQL examples, and security policies. Each retrieval returns a structured context pack (merged content plus cited source chunks with metadata). The aggregated context is then used in an iterative SQL Loop Workflow: an SQL Generator produces a candidate query based on schema and examples, and an SQL Validator enforces retrieved security requirements (row/column security, role-based masking, access limits). Validation combines static SQL analysis and test execution. On failure, the workflow loops with structured feedback until it passes or reaches the retry limit. When validated, the SQL is executed against Azure SQL Server, results are serialized efficiently, and the Supervisor generates the final user-facing answer and visualization.

The app is hosted with .NET Aspire for orchestration and telemetry, runs the workflow via AG-UI, and provides a clean Blazor (Fluent UI) interface for uploading schema, facts/examples, and security policies before querying.

Demo Video or Screenshots

https://youtu.be/3r71yr9cHVw

Primary Programming Language

C#/.NET

Key Technologies Used

.NET Aspire (distributed app orchestration + telemetry)
Blazor + Fluent UI (frontend)
AG-UI protocol (agent endpoints / workflow execution)
Azure AI Search (vector retrieval for RAG)
Azure AI Foundry + Azure OpenAI (LLM)
Azure SQL Server (query execution)
Multi-agent workflow: Supervisor + 3 RAG agents + SQL Generator/Validator loop
Static SQL analysis + test execution for validation

Submission Type

Team (2-4 members)

Team Members

@YuriyMorozyuk95 — Yurii Moroziuk — Architect, AI Project Manager, AI Developer https://www.linkedin.com/in/yurii-moroziuk-2389ba111
@Rysenkosv — Serhii RYSENKO — AI Developer https://www.linkedin.com/in/serhii-rysenko-372aa028b/
@eevaraudrebane-droid — Eeva RAUDREBANE — Data Analyst, QA https://www.linkedin.com/in/eeva-raudrebane-68011a290/
@Sofiia-creator — Sofiia Kovalenko — Business Analyst, Operator, Video Creator https://www.linkedin.com/in/sofiia-koval-0459b8259

Submission Requirements

  • My project meets the track-specific challenge requirements
  • My repository includes a comprehensive README.md with setup instructions
  • My code does not contain hardcoded API keys or secrets
  • I have included demo materials (video or screenshots)
  • My project is my own work with proper attribution for any third-party code
  • I agree to the Code of Conduct
  • I have read and agree to the Disclaimer
  • My submission does NOT contain any confidential, proprietary, or sensitive information
  • I confirm I have the rights to submit this content and grant the necessary licenses

Quick Setup Summary

Clone the repo: git clone https://github.com/YuriyMorozyuk95/DocAssistant.Charty_2
Open the solution in Visual Studio / dotnet CLI
Configure required environment/app settings (Azure OpenAI / AI Foundry, Azure AI Search, Azure SQL) as described in the README
Run the Aspire App Host project: DocAssistant.Charty.AppHost
Use the Blazor UI (DocAssistant.Charty.Web) to upload schema + examples + security policy, then ask questions in natural language
Project components (orchestrated by .NET Aspire):

DocAssistant.Charty-Agents — Agent backend service (AG-UI endpoints)
DocAssistant.Charty.Web — Blazor frontend
DocAssistant.Charty.AppHost — Aspire orchestrator (recommended entry point)

Technical Highlights

Concurrent retrieval across three RAG indexes (schema/examples/security) orchestrated by a Supervisor agent
Structured retrieval outputs with citations/metadata for traceability and debugging
SQL generation + security-aware validation loop with retry tracking and machine-readable feedback
Governance-first approach: row-level and column-level security, masking, access limits enforced before execution
Token-efficient result serialization prior to final natural-language explanation and charting

Challenges & Learnings

A key challenge was building a reliable end-to-end “NL → SQL → validate → execute → visualize” workflow that stays accurate while enforcing strict security. Splitting knowledge into separate vector indexes (schema, examples, security) improved retrieval quality and reduced hallucinations. Implementing a validator that combines static SQL analysis with test execution significantly improved safety and reduced invalid or non-compliant queries. Using structured intermediate outputs made the workflow easier to observe, debug, and iterate on during the hackathon.

Contact Information

Yurii.Moroziuk@hotmail.com https://www.linkedin.com/in/yurii-moroziuk-2389ba111

Country/Region

Estonia (team members from Ukraine and Estonia)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions