AI로 10만 줄의 러스트 코드 작성: 계약, 명세 기반 개발, 그리고 성능

✍️ OpenClawRadar📅 게시일: May 20, 2026🔗 Source
AI로 10만 줄의 러스트 코드 작성: 계약, 명세 기반 개발, 그리고 성능
Ad

Cheng Huang는 Azure의 복제 상태 라이브러리(RSL)를 현대화하기 위해 약 6주간 Rust 기반 멀티팍소스 합의 엔진을 구축했습니다. 이 프로젝트는 13만 줄 이상의 Rust 코드(~10만 줄은 AI 에이전트가 4주 동안 작성, 3주는 최적화)를 포함하며 처리량을 초당 23,000건에서 300,000건으로 끌어올렸습니다.

Huang는 여러 AI 코딩 에이전트를 사용했습니다: GitHub Copilot, Claude Code, Codex CLI, Augment Code, Kiro, Trae. 현재 주 구성은 터미널에서 Claude Code + Codex CLI이며 VS Code는 차이점 비교와 사소한 수정에만 사용합니다. 또한 속도 제한을 처리하기 위해 두 개의 ChatGPT 구독을 유지합니다(하나는 월-수, 다른 하나는 목-일).

코드 계약 — AI가 작성

핵심 정확성 전략: AI가 생성한 코드 계약으로 중요한 함수의 사전 조건, 사후 조건, 불변 조건을 명시하고 테스트 중에 런타임 어설트로 변환합니다. Huang는 GPT-5 High가 우수한 계약을 작성하며 Opus 4.1도 좋지만 더 많은 검토가 필요하다고 밝혔습니다. 예를 들어, process_2a 메서드(Paxos 2a 단계 메시지 처리)에는 16개의 계약이 있습니다. 계약은 타겟 테스트 케이스와 무작위 입력을 탐색하는 속성 기반 테스트를 생성하는 데 사용됩니다. 한 계약은 복제 일관성 문제를 일으킬 수 있는 미묘한 Paxos 안전 위반을 발견했습니다.

Ad

경량 스펙 주도 개발

Huang는 처음에는 엄격한 스펙 주도 방식을 시도했습니다: 요구사항 마크다운 → 설계 마크다운 → 작업 목록 마크다운. 그러나 반복적인 변경에 너무 유연하지 않다고 느꼈습니다. 현재는 더 가벼운 SDD를 사용합니다: 간결한 스펙으로 시작하여 AI가 코드를 생성하도록 한 후 계약과 테스트를 반복적으로 개선합니다. 전체 시스템에는 단위, 통합, 다중 복제본 장애 주입 테스트를 포함한 1,300개 이상의 테스트가 포함됩니다.

성능 최적화

최적화 단계(3주)는 처리량을 초당 23,000건에서 300,000건으로 향상시켰습니다. 주요 아키텍처 변경: 파이프라인 추가(요청이 진행 중인 투표를 기다리지 않음), 비휘발성 메모리(NVM) 지원으로 커밋 시간 단축, 현대 Azure 데이터센터 하드웨어를 위한 RDMA 인식.

향후 계획

Huang는 계약에서 속성 기반 테스트 생성을 위한 더 나은 AI 지원과 10만 줄 이상의 코드베이스에서 변경 사항 처리의 원활한 개선을 희망합니다.

📖 전체 출처 읽기: HN AI Agents

Ad

👀 See Also

일일 OpenClaw 팁을 위한 경량 컨텍스트 Cron 작업 사용
Tips

일일 OpenClaw 팁을 위한 경량 컨텍스트 Cron 작업 사용

한 사용자가 OpenClaw 팁을 받기 위해 매일 실행되는 cron 작업을 설정한 경험을 공유했습니다. 이 작업은 Nextcloud Talk 채널 중 하나에 자동으로 팁을 게시하도록 구성되었으며, 이 방법이 매우 유용하다고 평가했습니다.

OpenClawRadar
AI가 첫 원칙부터 스스로 용어를 정의하도록 하여 더 나은 출력과 감사 가능한 추론을 얻으세요
Tips

AI가 첫 원칙부터 스스로 용어를 정의하도록 하여 더 나은 출력과 감사 가능한 추론을 얻으세요

r/ClaudeAI의 한 사용자는 진행하기 전에 정의되지 않은 용어를 원자적 의미로 분해하라는 단일 지시를 추가하면 더 구체적인 출력을 생성하고 추적 가능한 추론 체인을 통해 디버깅이 가능하다는 것을 발견했습니다.

OpenClawRadar
협력적 대 지시적 AI 프롬프트는 서로 다른 결과를 낳는다
Tips

협력적 대 지시적 AI 프롬프트는 서로 다른 결과를 낳는다

레딧 토론에 따르면, AI와 협업할 때 '우리'라는 언어를 사용하는 사용자와 '이것을 해라'라는 지시적 명령을 내리는 사용자 사이에는 AI 지원 개발 결과에서 측정 가능한 차이가 나타납니다. 협업적 접근 방식은 공유된 맥락을 통해 막다른 골목을 드러내고 가정에 도전합니다.

OpenClawRadar
OpenClaw에서 높은 CPU/RAM 및 게이트웨이 재시작 문제? 텔레그램에서 IPv6 비활성화
Tips

OpenClaw에서 높은 CPU/RAM 및 게이트웨이 재시작 문제? 텔레그램에서 IPv6 비활성화

텔레그램 봇 설정에서 autoSelectFamily: false 및 dnsResultOrder: 'ipv4first'를 설정하면 ENETUNREACH 오류를 해결하여 높은 CPU 사용, 이벤트 루프 중단, 게이트웨이 재시작 문제를 해결할 수 있습니다.

OpenClawRadar