Praveen Mittal

AI engineer in Stuttgart. I build AI agents that do real back-office work, with a person in control. 14 years in software, mostly for banks, payments and health insurance.

Fixes merged or landed in OpenAI, Cloudflare, IBM's docling and BeeAI, Google, AWS, Meta's llama-stack, Apache Iceberg, Temporal, Mistral, Alibaba, xAI, deepset, Unstructured, Instructor and pm4py.

Open source contributions

Each one is a real bug in a production project, fixed and merged, or landed through a maintainer's own follow-up that confirmed the diagnosis.

Selected fixes

All contributions
ProjectContribution
openai/openai-agents-pythonFixed streamed handoffs leaving the run state on the previous agent when the session write failed, so resuming re-ran the wrong agent; also closed a path where a tripped input guardrail could leave a resumable state behind: #4835
awslabs/aidlc-workflowsFixed the claim-sources sensor comparing a multi-line assumption confirmation per-line against a per-block deliverable, so any correctly-authored assumption spanning more than one line could never register as accepted: #1156
Meta's llama-stack (now independently governed as ogx-ai/ogx)Fixed an indirect prompt-injection vulnerability via unsanitized tool output: #6337
google/langextractDiagnosed and fixed a Gemini safety-block reporting bug (#507); the maintainer merged a broader consolidated fix (#534) that explicitly credits this analysis by name
alibaba/open-code-reviewAdded HCL/Terraform and Bicep language support: #524, #525
cloudflare/workers-sdkFixed caseInsensitiveEnv() leaking stale duplicate keys into process.env on Windows when an env var's casing changed between loads: #14999
cloudflare/langchain-cloudflareFixed three bugs in Cloudflare's LangChain/LangGraph integration: the sync D1 checkpoint saver's list() silently ignored metadata/before filters that the async path applied correctly (#50), the Vectorize store's search() raised UnboundLocalError on a valid empty-query "list everything" call (#51), and the reranker never actually sorted results despite every docstring promising it (#52), all three landed on main via the maintainer's consolidated #53
cloudflare/workers-pyTraced a Windows-only Python Worker deploy failure through workerd's runtime source into this repo's CLI dependency-vendoring logic: #211. Maintainer follow-up surfaced a deeper bug in uv itself; filed upstream (astral-sh/uv#21199) and the maintainer's own same-day fix (#214) confirmed the root-cause diagnosis exactly
mistralai/mistral-vibeFixed a CVSS 8.8 remote code execution vulnerability (git core.fsmonitor hook injection) (landed on main): #962
xai-org/grok-build-plugin-ccFixed headless (non-interactive) plugin runs that could never get tool-call approval: #12
docling-project/docling (IBM)Fixed the METS/GBS backend crashing on a page with no OCR layer instead of marking it invalid, matching a sibling backend's existing graceful-degradation pattern (#3930), and stopped the PowerPoint backend exporting the text of shapes hidden in PowerPoint's Selection Pane (#4733), and kept hyperlinks attached to whole PowerPoint shapes (#4787)
Unstructured-IO/unstructuredFixed partition_email raising KeyError on an email with a multipart/* attachment, such as a forwarded or signed message: #4424
stackitcloud/stackit-sdk-python (STACKIT)Added KeyAuth.close() so a discarded service-account auth object stops its background token-refresh thread instead of requesting tokens forever, shipped in stackit-core v0.4.0: #10303
strands-agents/harness-sdk (AWS)Fixed Mistral reasoning models (Large 4) crashing the agent loop: their list content is now split into reasoning and text blocks, and reasoning is sent back to Mistral on the next turn: #5487
i-am-bee/beeai-framework (IBM-originated, now Linux Foundation AI & Data)Fixed ConditionalRequirement's target validation being a permanent no-op, an intersection where union was intended made every typo'd tool name in RequirementAgent's flagship construct silently pass instead of raising: #1649
apache/iceberg-pythonFixed partition values for timestamp_ns columns silently passing through unconverted instead of being encoded to nanoseconds, unlike the existing microsecond-type handling: #3695
deepset-ai/haystackFixed two KeyError crashes on ByteStream sources, attachment-metadata handling in MSGToDocument (#12207) and error-path logging in JSONConverter (#12208); also fixed FileTypeRouter dropping the detected MIME type when meta was passed (#13419)
deepset-ai/haystack-core-integrationsFixed the Qdrant document store's in and != filters using the opposite match type from == and not in; the maintainer extended it to exact matching for all equality and membership filters before merging: #3950
deepset-ai/haystack-cookbookAudited 5 notebooks flagged by an org-wide maintainer pickup board and removed a genuinely-redundant DocumentJoiner after verifying the other 4 still needed it: #309
deepset-ai/deepset-mcp-serverFixed a lone top-level bracket index (obj[0]) breaking 5 object-store MCP tools with a misleading "no value at path" error: #236
temporalio/sdk-goFixed FailureToError passing a raw, undecoded payload proto for reset-workflow failures instead of decoding it like every sibling failure type, so Details() on the resulting error failed instead of returning the value: #2522
567-labs/instructorFixed an Anthropic tool-calling bug where forced single-tool requests didn't disable parallel tool use, consolidated into #2495
process-intelligence-solutions/pm4pyFixed a timezone-corrupting default-path bug in timestamp normalization: #562

Projects

ARGUS
Identity-document fraud detection with a computer vision ensemble and a full TOGAF and MLOps delivery chain (DVC, MLflow, drift detection, EU AI Act, GDPR and ISO 42001 evidence packaging). Top 14% of 269 teams on the FREUID Challenge 2026 (IJCAI-ECAI) final private leaderboard.
VigilRAG
Federated enterprise knowledge retrieval and agentic multi-hop reasoning behind one API. Hybrid keyword and vector ranking fused with reciprocal rank fusion, per-chunk access control that fails closed, PII redaction, an MCP tool interface, a RAGAS evaluation gate in CI and a compliance-grade audit log.
Continuum
MCP server giving agents persistent, tiered memory (working, episodic, semantic) on CockroachDB distributed SQL and vector indexing. Four MCP tools, a test suite and a live demo, built for the CockroachDB x AWS agentic memory hackathon.
mcp-server-pgvector
MCP server exposing pgvector operations: seven tools for similarity and hybrid search, index management and schema introspection, with every identifier validated against pg_catalog before interpolation. Published on PyPI and the official MCP registry.

Credentials

Badges are issued through Credly, so each one opens its public verification page. See all badges on Credly.

TOGAF

Celonis

The two most relevant of 12 Celonis badges. All on Credly.

Also held

Focus areas