Engineering notes
Things that cost me a day to figure out, written down so they cost you an hour. Mostly agent plumbing, retrieval grounding, and the failure modes that don't show up in docs.
-
2026-09-20
I scored 21 RAG explainers and courses with a decision model. None teach evaluation from zero.
21 RAG explainers, courses and videos scored on evaluation mechanics, retrieval mechanics, from-zero and real numbers. Method, table and raw files.
-
2026-09-20
GenAI interview questions with model answers: what the interviewer is actually probing
46 GenAI interview questions with model answers and 45 troubleshooting cards: what AI-engineer panels ask about RAG, agents, LLMOps and fine-tuning.
-
2026-09-20
Where are AI-103 practice questions with explanations, not just answers?
Every AI-103 site I found is a question bank. What the exam actually tests, why a dump fails on mechanisms, and the interactive deck I built instead.
-
2026-08-25
The credential you never created can't leak
Reaching object storage from an edge function via the S3 API puts access keys inside the function. Native bindings remove the secret from the system entirely.
-
2026-08-25
A TLS handshake failure usually means the service was never provisioned
TLS errors against a managed cloud endpoint are rarely certificate problems. Usually the subdomain was never provisioned for your account.
-
2026-08-25
Sieve rules don't run on imported or fetched mail
Your Sieve filter is correct and still does nothing. Sieve fires on delivery — mail pulled from another provider bypasses it entirely.
-
2026-08-25
Your launchd agent can't reach the LAN, and macOS won't tell you why
A LaunchAgent gets "All connection attempts failed" on your own network while the same code works in a shell. macOS enforces this per binary.
-
2026-08-25
The five rungs of agent engineering
Prompt, context, loop, graph, ownership. Most teams stall on rung one and wonder why their AI never leaves the demo. A ladder for what to fix next.
-
2026-08-25
Make your agent fail closed
The worst agent bug isn't a wrong answer — it's a confident answer built on a tool that quietly returned nothing. A design rule, and where to enforce it.
-
2026-08-25
Your Fabric data agent is answering from world knowledge — and not telling you
An on-behalf-of identity mismatch makes enterprise retrieval fail silently, so the model answers from world knowledge instead. It looks right. It isn't.
-
2026-08-25
Cloudflare Pages returns 200 for pages that don't exist
Without a 404.html, Pages serves your homepage with HTTP 200 for every unknown URL. Google reads that as an infinite site of duplicates. One file fixes it.
-
2026-08-25
Capability URLs vs OAuth for a personal MCP server
OAuth is right for a product. For a single-user MCP server it can be why the thing never ships. What a capability URL actually costs you, stated plainly.