This blog was originally published on Descope. OpenAI's Custom GPTs offer a powerful way to create AI agents that can interact directly with your APIs through natural language conversations. Imagine you have a deployed FastAPI application that implements DevOps tools such as triggering CI/CD workflows, getting deployment logs, usage analytics, and other operational tasks. While integrating your AP
The cost incident that started this Three weeks after we put our chatbot into production, I opened the OpenAI billing dashboard on a Monday morning and stopped breathing for a second. One session — not one user, one session — had burned through roughly four times the daily budget for the entire app. Over a single afternoon. The session wasn't malicious. It was a test account someone forgot to lo
An opinionated list of Python frameworks, libraries, tools, and resources
We’ve been running a series of experiments using ChatGPT 5.4 integrated into a website chatbot across different environments: 🌐 a main website 🎯 Goal: simulate realistic user behavior and observe how the model responds over time. ⚙️ Test setup The chatbot is designed to (no self promo here, just context): 📌 answer strictly based on website content (RAG-like approach) Over time, we intentionally
What if your Kubernetes cluster simply refused to run unsigned images? I spent some time experimenting with enforcing image provenance in a small Kubernetes setup using MicroK8s. The idea was simple: Only container images with valid cryptographic signatures are allowed to run in the cluster. For this I used: GitLab CI/CD (build + signing pipeline) Cosign / Sigstore (image signing) Kyverno (admissi
Most teams I have worked with have one auth test in their suite. It looks like this: test('valid token verifies', () => { const token = signSync({ sub: 'user-1', aud: 'api://backend' }, secret); const result = verify(token, options); expect(result.valid).toBe(true); }); That test is fine. It is also a smoke test, not a regression suite. It catches the case where verification is completely b
The on-call alert at 02:14 said auth_5xx_rate spiked from 0.01 to 31.4. Not a deploy window. Not a traffic spike. Just thirty-one percent of authenticated requests failing for ~four minutes, then back to baseline. The cause was a JWKS rotation on the issuer side. New keys came in. Old keys went out. Caches in our service didn't refresh fast enough. Tokens signed with the new key were rejected beca
How I added LLM fallback to my OpenAI app in 10 minutes You're running a production app on OpenAI. One Tuesday morning it goes down. Your app returns 500s. You spend an hour refreshing status.openai.com. There's a better setup. Here's how to add provider fallback to any OpenAI-SDK app without rewriting anything. When you call OpenAI directly, you have one point of failure: from openai import Ope