PPSTUDIO 운영 리포트 목록

OPERATIONS CHECK · 2026-09-02

추천 API가 멈춰도 남겨야 할 화면을 정한 기록

추천 요청만 실패하면 남아 있는 메뉴로 임시 선택을 제공할 수 있습니다. 메뉴 목록까지 없으면 재시도가 필요합니다. 요청과 캐시의 실패 처리를 시험하고, 비활성 메뉴판과 설정 패널의 키보드 코드를 점검했습니다.

검사 방법

추천, API 경계, 접근성 경계, 메뉴 캐시와 추천 이유를 다루는 테스트 파일 5개를 선택해 실행했습니다. 2026년 9월 5일 재실행에서 하위 시나리오를 포함한 122개 테스트가 통과했습니다.

공통 검증 기준과 정정 원칙 보기 →

핵심 확인 결과
검사 항목결과판정 기준
검증 테스트122개 통과선별한 5개 테스트 파일
요청 본문 상한32KBNode·Cloudflare 양쪽 검사
추천 이유최대 2개현재 카드와 맞는 활성 조건
비활성 메뉴판탭·이미지 로드 제외접근성·성능 경계
서버 오류 응답일반화된 500내부 정보 비노출

실패를 한 종류로 다루지 않았다

추천 API가 실패하면 이미 받은 메뉴 목록에서 인기 후보를 임시로 고릅니다. 메뉴 카탈로그가 갱신되지 않으면 브라우저에 저장된 정상 목록을 먼저 사용합니다. 반면 사용 가능한 데이터가 전혀 없을 때는 오래된 결과를 정상 응답처럼 꾸미지 않고 다시 시도할 수 있는 상태를 보여 줍니다.

메뉴판은 추천 API와 별도 경로입니다. 한 요청의 실패가 전체 화면을 막지 않도록 경계를 나눈 대신, 각 경계마다 로딩·오류·빈 상태를 따로 관리해야 하는 비용이 생겼습니다.

키보드와 느린 화면에서 확인한 것

화면 밖 메뉴판 페이지는 탭 순서에서 제외하고 이미지도 미리 읽지 않습니다. 설정 패널은 모달 역할과 키보드 동작을 갖추고, 첫 화면 장식 애니메이션은 운영체제의 동작 줄이기 설정을 따릅니다.

이 항목은 포커스 처리와 접근성 속성의 코드 검사 결과입니다. 실제 보조기기에서 조작한 결과와는 구분해야 하며, 기기별 읽기 순서는 별도 검토가 필요합니다.

성능과 안전을 함께 본 이유

보이지 않는 메뉴 이미지까지 한꺼번에 불러오면 모바일 데이터와 렌더링 시간을 낭비합니다. 비활성 페이지의 로딩을 멈춘 것은 접근성뿐 아니라 초기 화면 성능을 위한 선택입니다.

추천 요청은 32KB보다 큰 본문을 거절하고, 공개 응답에서 내부 전체 순위표를 제외합니다. 브라우저가 필요한 결과와 선택 정책만 받아 계산 세부 정보나 예외 메시지가 외부에 불필요하게 노출되지 않게 했습니다.

자동 검사에서 확인한 경계와 관측 결과

경계검사 입력관측 결과검사 방식
요청 크기33KB JSON 본문Node·Cloudflare 모두 413 거부실행 테스트
공개 응답중립 추천 요청내부 ranked 배열 없음실행 테스트
설정 패널Escape·순환 Tab·닫은 뒤 포커스관련 키보드 코드 존재정적 코드 검사
메뉴판비활성 페이지탭 제외·이미지 로드 중단정적 코드 검사
캐시 만료15일 경계와 1ms 초과경계까지 유효·초과 시 제거실행 테스트

정적 코드 검사는 실제 보조기기 조작 결과가 아닙니다. 서로 다른 검사 방식을 표 안에서 구분했습니다.

이 결과의 한계

  • 자동 테스트 통과는 모든 브라우저와 보조기기에서 같은 경험을 보증하지 않습니다.
  • 임시 인기 후보는 사용자가 고른 조건을 계산한 결과가 아니므로 화면에서 fallback임을 구분합니다.
  • 네트워크 속도별 수치는 이번 보고서에 포함하지 않았습니다.