<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Brad Duhon - Lab</title><description>Security research, cloud experiments, homelab notes, and TILs.</description><link>https://lab.brad-duhon.com/</link><item><title>When AI Deleted My Identity Platform: An AWS SSO Incident Recovery</title><link>https://lab.brad-duhon.com/aws-sso-incident-when-ai-deleted-my-identity-platform/</link><guid isPermaLink="true">https://lab.brad-duhon.com/aws-sso-incident-when-ai-deleted-my-identity-platform/</guid><description>An AI agent autonomously deleted my AWS SSO instance during a greenfield identity migration, and the cascading failures taught me more about agentic guardrails than any documentation could.</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate></item><item><title>The Autonomous Environment: Unifying Agents and Invisible Enforcement</title><link>https://lab.brad-duhon.com/autonomous-environment-unifying-agents/</link><guid isPermaLink="true">https://lab.brad-duhon.com/autonomous-environment-unifying-agents/</guid><description>How I unified Gemini CLI and Claude Code into a single high-integrity environment with autonomous background auditing and organic memory.</description><pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate></item><item><title>Engram: A 3-Day Build Narrative</title><link>https://lab.brad-duhon.com/engram-build-narrative/</link><guid isPermaLink="true">https://lab.brad-duhon.com/engram-build-narrative/</guid><description>How I built a personal memory layer for Claude Code in a weekend - the architecture decisions, the wrong turns, and what the collaboration actually looked like.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate></item><item><title>Terraform Module: KMS Key with Automatic Rotation</title><link>https://lab.brad-duhon.com/terraform-module-kms-key/</link><guid isPermaLink="true">https://lab.brad-duhon.com/terraform-module-kms-key/</guid><description>Building a reusable KMS CMK module with enforced rotation, admin/user separation in the key policy, and sensible prod defaults.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate></item><item><title>Terraform Module: S3 Secure Bucket</title><link>https://lab.brad-duhon.com/terraform-module-s3-secure/</link><guid isPermaLink="true">https://lab.brad-duhon.com/terraform-module-s3-secure/</guid><description>Building a reusable S3 module that defaults to locked down: SSE-KMS, Block Public Access, access logging, versioning, and a bucket policy that enforces TLS.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate></item><item><title>Terraform Module: WAF Baseline</title><link>https://lab.brad-duhon.com/terraform-module-waf-baseline/</link><guid isPermaLink="true">https://lab.brad-duhon.com/terraform-module-waf-baseline/</guid><description>Building a reusable WAF WebACL for CloudFront with managed rule groups, rate limiting, geo-restriction, and full request logging to S3.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate></item><item><title>Post-mortem: the Terraform IAM circular dependency that one line of HCL uncovered</title><link>https://lab.brad-duhon.com/terraform-iam-circular-dependency-postmortem/</link><guid isPermaLink="true">https://lab.brad-duhon.com/terraform-iam-circular-dependency-postmortem/</guid><description>A one-line CloudFront change triggered a cascade of IAM permission failures, exposed an architectural design flaw in how CI/CD roles were managed, and required a full workspace refactor to resolve correctly. This is the honest account of what went wrong, what was tried, and what the right answer actually is.</description><pubDate>Thu, 23 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Cross-account API Gateway access via PrivateLink and SigV4</title><link>https://lab.brad-duhon.com/aws-apigateway-cross-account-privatelink/</link><guid isPermaLink="true">https://lab.brad-duhon.com/aws-apigateway-cross-account-privatelink/</guid><description>A four-layer defense-in-depth pattern for Lambda-to-API Gateway calls across AWS accounts - zero public internet exposure using Interface VPC Endpoints, Security Group peering, endpoint policies, and SigV4 authentication.</description><pubDate>Wed, 22 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Bootstrapping my dev environment in WSL2 Ubuntu (WebDev)</title><link>https://lab.brad-duhon.com/wsl-dev-environment-setup/</link><guid isPermaLink="true">https://lab.brad-duhon.com/wsl-dev-environment-setup/</guid><description>End-to-end walkthrough of setting up a full dev environment inside WSL2 - from bare shell through ZSH, Claude Code, Git, Terraform, AWS credentials, and deploying brad-duhon.com as an Astro monorepo on AWS.</description><pubDate>Sat, 18 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Building brad-duhon.com: design decisions, wrong turns, and the reasoning behind the stack</title><link>https://lab.brad-duhon.com/building-brad-duhon-com/</link><guid isPermaLink="true">https://lab.brad-duhon.com/building-brad-duhon-com/</guid><description>A complete walkthrough of building this site in a single session with Claude - infrastructure, accessibility gotchas, the knowledge graph, and an honest accounting of what the AI got wrong.</description><pubDate>Fri, 17 Apr 2026 00:00:00 GMT</pubDate></item></channel></rss>