Topic
AI Engineering
Agents, RAG and LLM features that survive production: contracts, evaluation, authority, cost and recovery.

Copilot Studio over Direct Line: Track Accepted Work, Not Chat Bubbles
A Direct Line page is a batch of activities, not an answer. Build a .NET client that keys acceptance by task, keeps the watermark opaque and commits each page atomically.

Upgrade Microsoft.Extensions.AI by Testing the Seams You Actually Use
A one-line package bump from 9.10.2 to 11.0.0 compiles and passes tests, yet the text the model reads after a rejected approval changed three times. Build a tracker that notices.

A Read-Only SQL Agent Must Survive a Forbidden Command
Build a SQL Server diagnostic tool that stays read-only when the model misbehaves: a fixed tool catalogue, a narrow principal, a pinned tenant and real cost limits.

One Question, Several Queries: Typed Intent Between Language and SQL
Let the model propose meaning, not SQL. Parse a small typed intent strictly in .NET 10, compile it to reviewed templates, enforce the tenant in SQL Server and return results that say what they count.

Trace an Agent SQL Tool from Its Request to the Rows Read
Five Index Seeks return the same 1,000 rows and three read 5,000. Follow an agent tool's parameter into the actual plan, read the right counters and attach the query to the answer.

Semantic Search in Blazor WebAssembly: Where the Cost Moves
Run an embedding model in a Web Worker behind a Blazor component, then follow the cost it moves: a 90 MB first visit, exact tokenization and pooling, stale results, caching and cleanup.

Vector Search Under Pressure: Distance, Candidates and Index Updates
When a relevant document is missing, the metric is rarely at fault. Measure what post-filtering, candidate budgets and stale index membership do, on SQL Server 2025 and in C#.

Restartable .NET Ingestion: Stage Chunks, Publish Complete Revisions
Keep a half-imported revision out of search: chunk by structure, key embeddings by content, stage in SQL Server 2025 and publish a whole revision by moving one pointer.

A Minimal .NET Agent Platform: Four Jobs, Two Workers, One Restart
Stop a small ASP.NET job service while it still owns work, then restart it. Four jobs show what can resume, what must wait, and what only the receiver's receipt can settle.

Permission Changed Mid-Answer: Gate the Write, Not Just the Check
A streamed answer that checks permission on every chunk can still leak after revocation. Gate the write, choose a snapshot contract deliberately, and keep retrieved text out of your logs.

Azure Service Bus and agents: persist the event, then claim the work
Commit the inbox before completing the message, deduplicate events and work separately, and recheck version and permission when a worker claims the job, so redelivery never runs an agent twice.

After the Restart: Reconcile a Lost Acknowledgement in a .NET Agent
The receiver committed, the response was lost and the agent restarted. Persist the obligation, bind a receipt to the effect, reconcile by key and know when to stop replaying.