Vespera, Vespertide, PostgreSQL 기반의 고성능 Rust 백엔드 개발 및 API 설계 지침
이 스킬은 aegis-link 프로젝트의 핵심 백엔드 스택인 Rust, Axum, Vespera, Vespertide, PostgreSQL을 효율적으로 다루기 위한 전문 지침입니다.
Vespertide로 정의된 스키마와 Vespera의 타입 시스템을 결합하여, DB부터 API 응답까지 강력한 타입 안정성을 유지한다.Vespera의 매크로 기반 라우트 시스템을 적극 활용하여 수동 등록 실수를 방지한다.anyhow 보다는 도메인 특화 에러 타입을 정의하고, API 응답 시 Vespera가 인식할 수 있는 형태로 에러를 반환한다.pub async fn으로 작성하며, src/routes/ 폴더 구조가 곧 API 엔드포인트가 됨을 인지한다.#[derive(vespera::Schema)]schema_type! 매크로를 사용하여 필요한 필드만 노출하는 전용 Response 타입을 생성한다.models/*.json을 수정한 뒤 vespertide diff를 통해 마이그레이션을 생성한다.Vespertide가 지원하는 표준 타입을 우선 고려하며, 호환성을 체크한다.Vespertide가 내보낸(Exported) SeaORM 엔티티 또는 SQL을 활용하여 일관된 쿼리 패턴을 유지한다.cargo test 실행 전 docker-compose로 DB가 준비되었는지 확인하며, 테스트 DB 클린업 로직을 철저히 한다.Vespertide 모델 정의 시 index: true 설정을 적극 검토한다.pub async인가?vespera::Schema를 파생(Derive)하고 있는가?vespertide revision 과정을 거쳤는가?