C# 15 Union Types in a Real Domain Model: Dispensed, Rejected or Referred

C# 15 union types applied to a prescribing model: a dispensing outcome that is exactly one of three cases, handlers the compiler keeps exhaustive, and fifteen experiments on what unions compile to, how they behave when empty, what they cost, how they serialise, and how they work with .NET 10 and C# 14 code.

Read more →

Step Functions as Agent Tools: Putting the Rules Where a Prompt Cannot Move Them

Step Functions workflows can now be exposed to agents as tools through AgentCore Gateway. What the connector offers, how to write a workflow that is safe to hand to a model, where the IAM boundary sits, and eighteen scenarios tested on Step Functions Local.

Read more →

Multi-Region Active-Active on Azure for a .NET API: What Happens to the Write You Acknowledged

Routing two Azure regions is configuration. Deciding what happens to two writes to one record is design. Four write strategies compared on one simulated outage, what Cosmos DB does with a conflict, idempotent retries across regions, readiness probes for Front Door, and the global tier in Terraform.

Read more →

Lambda Web Functions: When a Function Becomes a Web Server

AWS Lambda Web Functions run an ordinary HTTP server, serve many requests per environment and bill by CPU time. What the contract is, what the billing model rewards and punishes, with a measured server and a cost model checked against AWS’s own examples, and where it sits against function URLs, API Gateway and App Runner.

Read more →

Azure Container Apps or AKS for a Regulated Workload: Who Patches What

For a regulated workload the container platform decision is mostly about who patches what and who can prove it. A ledger of thirteen operational duties across Container Apps, AKS Automatic and AKS Standard, the same security baseline written twice in Terraform with tests, and a decision rule short enough to argue with.

Read more →