Search
Posts
An Agent Allowlist Is a Comment Until a Gate Checks the Body
A Claude Code agent's tools list is a runtime gate, not a comment. A body-vs-allowlist consistency check in CI took 317 agents to A-grade in one sweep.
ReadBM25 Before Vectors: An Eval-Gated Retrieval ADR
Why ship BM25 search now and gate vectors behind an eval set? An ADR naming the trigger before a 333MB embedding model creeps into a local-first plugin.
ReadA Second Brain You Can Audit Beats One You Must Trust
A second brain you can audit beats one you must trust. Local-first, daemon-free, no-egress by default, and an external anchor that detects a silent rewrite.
ReadShipping Is Not Building: A Sunday of Merges
A quiet Sunday with no new code—just four PR merges that landed the intent-brain marketplace and cited search built across the prior week.
ReadYour System-Map Is Fiction Until You Diff It Against Live Infra
A system-map that isn't verified against live infrastructure is fiction. The day you decommission a service is the day to reconcile the docs against the live Caddyfile.
ReadMCP Server Auth: The API Is the Real Boundary
Per-user tokens, a server-side write gate, and a separate access log — why an MCP server's client-side tool gate is UX, not a security boundary.
ReadWhen --cap-drop ALL Broke the Gate Socket
Hardening a container hid a permission bug: --cap-drop ALL stripped CAP_DAC_OVERRIDE, and a gate socket silently stopped governing every tool call.
ReadGreen CI Proves Nothing: Why Your Tests Gate Zero Calls
CI dogfood for AI-agent governance went green while gating zero tool calls. Here's why a passing test proving nothing is worse than a red one.
ReadHonor the Gate When the Verdict Is Inconvenient
A quality gate only matters if you honor its verdict. How pre-registration and honest-gate culture stopped two teams from faking green or rationalizing a STOP.
ReadMaking Agents Reliable on Real-Device Clouds
Reliability on a real-device cloud isn't in the API calls — it's in the partial-failure seams between MCP tool calls. Three task-specific agents, four advisory hooks, and a documented-limitations list make those seams legible so an agent routes instead of guessing.
Read