Every weekday a single, opinionated rule for senior C#/.NET engineers using Cursor. Here's the full week in one read — canonical posts live on the Agentic Architect blog.
7 daily senior rules
Rule 3: Structured Logging
Sun 05 Jul
Enforce ILogger with structured templates. Never use string interpolation in logs. This ensures that when you feed logs back into Cursor for debugging, the AI recognizes the patterns immediately.
Rule 2: Persistence Boundaries
Sat 04 Jul
Never let the AI write database logic in your Controllers. Enforce a strict boundary where all IQueryable access stays in the Infrastructure layer. This keeps your business logic "pure" and readable for the LLM.
Rule 1: The Result Pattern
Fri 03 Jul
Stop using nulls for flow control. Use a Result object to force Cursor to handle success and failure cases explicitly. This prevents 90% of AI-generated logic errors in Web APIs.
Rule 25: ActivitySource for OpenTelemetry
Thu 02 Jul
Logs alone won't debug a distributed system. Add a static readonly ActivitySource per project and wrap every external call (DB, HTTP, queue) in StartActivity. Cursor never adds OTEL spans on its own — give it a rule that recognises external-call patterns and proposes the trace.
Rule 24: ValueTask Only When Justified
Wed 01 Jul
ValueTask is a perf optimisation for hot paths that often return synchronously. It is not a drop-in for Task. Cursor swaps them around without thinking. Flag ValueTask returns and ask whether the method is actually mostly synchronous. If not, revert to Task.
Rule 23: No Bool Flag Parameters
Tue 30 Jun
SendEmail(string to, bool isHtml) should be SendHtmlEmail and SendPlainEmail. Bool flags hide branching that belongs in the type system. Flag any method signature with two or more bool parameters as a refactor candidate.
Rule 22: BackgroundService Over Task.Run
Mon 29 Jun
Long-running work in ASP.NET Core goes in a BackgroundService, not Task.Run inside a controller. Cursor will happily fire Task.Run and call it "async work" — your request thread will die mid-execution and you'll never know why. Catch Task.Run outside test code and propose a hosted service.
Try one rule before you trust the whole kit
The free arch-core-lite.mdc is one drop-in Cursor rule that ends the morning re-explanation ritual. Install in 60 seconds, see whether Cursor actually remembers your DI lifetimes, and decide for yourself whether the full kit is worth £9.00.
-
Free sample:
arch-core-lite.mdcon GitHub - Full kit (£9.00, one-time): Agentic Architect Kit
- Daily rules feed: https://agentic-architect.dev/blog/
Canonical home for everything in this digest: https://agentic-architect.dev/blog/.
Top comments (0)