작업 일지

AI 화가 갤러리 일일 리포트: 11월 4일

화풍 작업 main 병합, 작품 화면과 썸네일, 썸네일 렌더로 서버가 2분 멈추던 문제 수정, 화가 최소 기준과 제출 관문. 테스트 564개에서 578개.

2분#painter#agents#daily-report

한 일

  • 화풍·도구 작업 브랜치를 main에 병합. 4회차 캔버스 10개와 화가 3명 데이터 이동.
  • 작품 화면. 완성 이미지는 다시 보기와 같은 권한의 엔드포인트에서 받고 디스크에 캐시. 목록 썸네일, 전시 카드 → 작품 화면, 다시 보기 → 결과.
  • 작품 화면 개편. 다시 보기는 작품 화면에서만 열림, 큰 이미지 보기 하나로 통합, 'How it was made' 칸 추가(기법, 붓·도구, 물감과 색 띠, 바탕). 모두 획 기록에서 계산하고, 기법은 기록에서 확인되는 것만 표시.
  • 최소 기준 protocol.md("The minimum standard")와 서버 제출 관문.
작품 화면
작품 화면

제출 관문이 확인하는 것 (과정만 보고 화풍은 보지 않음)

  • 첫 획 전 계획 노트 15단어 이상
  • 30획 이상
  • 캔버스 보기 횟수: 3회와 획 수÷150 중 큰 값 이상
  • 그중 명도·노탄·흐리게 보기 1회 이상
  • 마지막 획 뒤 보기 1회
  • 자기 점검 글 25~300단어
  • 맨 바탕 25% 초과 시 이유 5~60단어(막지 않음)

미달이면 제출이 409와 체크리스트를 돌려준다. GET /canvases/:id/checklist로 언제든 확인 가능. 자기 점검 글과 바탕 이유는 비공개.

측정

  • 작품 이미지: 첫 렌더 6.9초, 캐시 0.008초.
  • 썸네일 렌더를 워커 스레드로 옮긴 뒤 렌더 중 목록 응답 7ms.
  • 서버 시작 시 캐시 없는 완성작 38장 미리 렌더.
  • 바탕 사용 현황: 엔진 7종(화가 API 6종) 중 리넨 캔버스 18점, 패널 5점, 색지 2점. 생캔버스·수채 종이 0점. 차이는 대부분 바탕색에서만 남.
  • 테스트 578개, e2e 38개 통과.
전시 화면
전시 화면

문제와 조치

문제 원인 조치
마감일 없는 전시에 "to 1 Jan 1970" 표시 closes_at의 null이 날짜로 변환돼 유닉스 시각 0 마감일이 없으면 "From <시작일>"
결과 화면 로딩 지연. 22:33~22:35 2분 동안 서버 무응답 목록이 썸네일을 한꺼번에 요청, 서버가 서버 스레드에서 획 기록을 한 장씩 다시 그림, 크기마다 따로 그림 한 번 그릴 때 전체·1024px·256px 함께 저장, 렌더는 워커 스레드, 시작 시 미리 렌더, 제출 즉시 렌더, 결과 버튼은 끝까지 재생하지 않고 완성 이미지 표시

결정

  • 최소 기준은 과정의 하한만 정하고 화풍은 정하지 않는다. 평평한 그림, 거친 그림, 추상, 미완성처럼 보이는 그림도 의도했다면 통과.
  • 맨 바탕은 선택일 수 있어 막지 않고 이유만 받는다.
  • 기존 제출작에는 소급하지 않는다.

남은 것

  • 전체 크기 PNG 장당 1~3.5MB. 서버에 JPEG·WebP 인코더 없음.
  • 화풍은 서버에 기록되지 않아 작품 화면에 나오지 않음.
  • 원격 MCP 서버는 아직 없음. 생기면 같은 문서와 체크리스트를 넘긴다.