Cursor + .NET 주간 규칙: 7가지 원칙 (2026년 10월 18일 주차)
요약
이 글은 Cursor와 같은 AI 코딩 도구를 사용하여 .NET 개발 시 지켜야 할 일일 규칙 7가지 원칙을 제시합니다. CancellationToken 전파, IHttpClientFactory 준수 등 구체적인 패턴을 통해 AI가 흔히 저지르는 실수를 방지하고 코드의 안정성과 정확성을 높이는 방법을 안내합니다.
핵심 포인트
- CancellationToken 전파: async 메서드에 토큰 전달로 취소 처리 누락 방지
- IHttpClientFactory 사용: HttpClient() 직접 생성 금지로 소켓 고갈 버그 예방
- TimeProvider 주입: 시간 관련 로직을 테스트 가능하고 결정론적으로 만듦
- Minimal API 그룹 활용: 컨텍스트를 간결하게 유지하여 정확한 코드 제안 유도
매주 평일에 Cursor를 사용하는 시니어 C#/.NET 엔지니어를 위한 하나의 명확한 규칙이 제시됩니다. 이번 주 전체 내용을 한 번에 읽어보세요 — 정식 게시물은 the Agentic Architect blog에서 확인할 수 있습니다.
7가지 일일 시니어 규칙
Rule 8: CancellationToken 전파 (Propagation)
10월 18일 일요일
코드베이스의 모든 async 메서드는 반드시 CancellationToken을 인수로 받아 전달해야 합니다. 새로운 async 시그니처에 이 토큰이 빠져 있으면 플래그를 지정하는 규칙을 만드세요. 이는 AI가 호출 체인 중간에서 취소(cancellation) 처리를 조용히 잃어버리는 것을 방지합니다.
Rule 7: IHttpClientFactory 준수 (Discipline)
10월 17일 토요일
생성된 코드에서 새로운 HttpClient() 사용을 거부하세요. Cursor가 IHttpClientFactory 또는 타입 지정 클라이언트(typed client)를 주입하도록 강제해야 합니다. 고전적인 소켓 고갈 버그(socket-exhaustion bug)는 AI가 인지하지 못하고 제공하는 전형적인 함정입니다.
Rule 6: TimeProvider 주입 (Injection)
10월 16일 금요일
비즈니스 로직에서 Cursor가 DateTime.Now 또는 DateTime.UtcNow를 하드코딩하는 것을 절대 허용하지 마세요. 대신 TimeProvider(또는 자체 IClock)를 주입해야 합니다. 이렇게 하면 테스트 시 시간이 결정론적(deterministic)이 되며, AI가 시간 관련 코드를 생성할 때 정적 API를 찾는 것을 막을 수 있습니다.
Rule 5: Minimal API 그룹 (Groups)
10월 15일 목요일
.NET 9 서비스에는 MapGroup과 EndPoints를 사용하세요. 이는 컨텍스트 창(context window)을 간결하고 집중적으로 유지하여, AI가 방대하고 부풀려진 Controller로 코드를 제안하는 것보다 더 정확한 코드 제안을 할 수 있도록 돕습니다.
Rule 4: Validator 강제 (Enforcement)
10월 14일 수요일
모든 MediatR Request에는 FluentValidation 규칙이 있어야 합니다. AI가 핸들러 로직을 작성하기 전에 반드시 유효성 검사기(validator)를 확인하도록 강제하세요. 이는 AI가 비즈니스 제약 조건(business constraints)을 잊어버리는 '컨텍스트 부패(context rot)'를 방지합니다.
Rule 3: 구조화된 로깅 (Structured Logging)
10월 13일 화요일
구조화된 템플릿을 사용해 ILogger를 강제하세요. 로그에 문자열 보간(string interpolation)을 절대 사용하지 마세요. 이렇게 해야 디버깅을 위해 로그를 Cursor에 다시 공급할 때, AI가 패턴을 즉시 인식할 수 있습니다.
규칙 2: 지속성 경계(Persistence Boundaries)
Mon 12 Oct
AI가 컨트롤러(Controllers)에 데이터베이스 로직을 작성하도록 절대 허용하지 마세요. 모든 IQueryable 접근이 인프라 계층(Infrastructure layer)에 머무르도록 엄격한 경계를 설정하세요. 이렇게 하면 비즈니스 로직이 LLM에게 '순수'하고 읽기 쉬운 상태를 유지할 수 있습니다.
전체 세트를 신뢰하기 전에 하나의 규칙을 시도해 보세요
무료 **arch-core-lite.mdc**는 아침마다 반복되는 재설명 의식을 끝내는 드롭인(drop-in) Cursor 규칙입니다. 60초 만에 설치하고, Cursor가 실제로 DI 생명주기(DI lifetimes)를 기억하는지 확인한 후, 전체 세트가 £9.00의 가치가 있는지 스스로 결정해 보세요.
- 무료 샘플: GitHub의
arch-core-lite.mdc - 전체 세트 (£9.00, 일회성): Agentic Architect Kit
- 일일 규칙 피드: https://agentic-architect.dev/blog/
이 요약본의 모든 것을 담은 표준 홈: https://agentic-architect.dev/blog/.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기