본문으로 바로가기

Backend & Distributed Systems

용량 제한과 잠금을 갖춘 주간 계획 API

마감을 보호하고 주간 시간과 하루 항목 수를 제한하며 승인한 계획을 잠그는 결정론적 주간 계획 API입니다.

작성 약 1분 읽기

사용자가 승인한 계획을 자동 생성이 다시 덮어쓰면 주간 플래너를 신뢰할 수 없다. 이 구현은 재현 가능한 초안과 잠긴 계획을 분리하고 저장 전에 용량 제약을 적용한다.

Diagram loads as it approaches the viewport.

API는 주 시작일과 420~1,680분의 용량을 받는다. 주 안에 도래하는 마감 항목은 보호하고, 반복 학습 후보는 점수순으로 정렬한 뒤 남은 시간 안에서만 선택한다. 하루 항목은 최대 5개다. 각 항목의 추천 이유도 데이터로 저장해 당시 결정 근거를 설명한다.

계획 행은 용량, 계획 시간, 보류 수, 생성 시각, 상태, 잠금 시각을 가진다. 잠기지 않은 계획만 재생성할 수 있고 잠금 뒤에는 409로 거부한다. 임시 D1 시험은 1,050분 중 1,035분을 사용한 30개 항목과 보류 1개를 만들고, 잠금 뒤 재생성을 차단했다. 실제 로컬 서비스에서도 같은 주 계획을 생성하고 잠갔다.

관련 글