Reading tracker active
0 / 8 read
0%
← Home
Architecture Notes

Technical Writing

Notes on distributed systems, AI infrastructure, databases, and observability. Written for engineers who want depth, not surface-level takes.

RED TEAM ORCHESTRATOR · MULTI-TURN, ADAPTIVETARGETAI Agent+ MCP servertool calls visibleCrescendoTree JailbreakBad LikertROT13Base64<raw_prompt>BUDGET GUARDper-run mutexVALIDATIONlast turn onlyHISTORY WINDOWlast 10 messagesaryan.devsecurity · ai-infrastructure
securityai-infrastructure

I Built a Red Team Orchestrator for AI Agents. Here's What Made It Hard.

AI red-teaming looks like a prompting problem. It isn't. The hard parts were making attacks survive first contact with a guardrail, validating findings against tool calls rather than text, and a budget race condition that let two requests spend $37 against a $20 limit.

Jun 10, 2026·7 min read
AI CODE ANALYSIS · EXECUTION PATHS, NOT FILE TREESENTRYroute handlerMIDDLEWAREauthnMIDDLEWAREauthzCALLresolve()CALLloadUser()CALLbuildQuery()CALLrender()LEAFf0cleanLEAFf1cleanLEAFf2cleanLEAFf3cleanSINKraw SQLtainted paramLEAFf5cleanWHAT THE MODEL IS ASKEDone path, not one repore-planaryan.devsecurity · ai-infrastructure
securityai-infrastructure

Building an AI Security Engineer Before Coding Agents Could Do It

A hybrid static-analysis, semantic-search and LLM pipeline for finding vulnerabilities in source code, built in 2024 because no model could do it alone. We retired it a year later because they could.

Oct 20, 2025·6 min read
OPENAPI DEPENDENCY GRAPH · EXECUTION ORDER IS THE PRODUCTOPENAPI SPEC400–500 endpointsno ordering givenSTEP 1POST /users→ userIdSTEP 2POST /subscriptions→ subscriptionIdSTEP 3PATCH /subscriptionchange_option=end_of_termUNLOCKED422 → 200workflow satisfiedcycle guardREJECTEDmore string matchingKEPTdeterministic first, AI at edgesaryan.devsecurity · ai-infrastructure
securityai-infrastructure

Swagger Knows the Endpoints. It Doesn't Know the Workflow.

Generating requests straight from an OpenAPI spec got 10% of endpoints to execute. Treating the spec as a dependency graph instead of a list got us to ~60%. The last stretch needed an agent, and only because deterministic heuristics had stopped paying.

Sep 15, 2025·6 min read