/visual-summary/judge지도허브에서 트랙을 고른다
- 1A 정본 — stg 에 반영된 제품이 전체로 좋아졌나
- 2B 종류 — 시각화 종류를 강제하면 추천보다 어떤가
- 3C 로컬 — 아직 stg 에 안 올린, 내가 고친 것이 효과가 있나
- 4설정 — 무엇을 대상으로(표본) · 무엇으로(축·프롬프트) 잴지
트랙 안에서는 둘째 줄의 실행 | 결과 로 오간다. 아래 「지금 도는 판정」에 진행 중인 판정이 선다.
유저에게 나갈 내용시각화의 품질을 나가기 전에 잰다. 묻는 것은 하나다 — 지난번보다 좋아졌나 나빠졌나.
화면은 트랙 셋과 설정 하나로 나뉜다. 할 일을 고르면 그 탭이 처음부터 끝까지 따라가게 해 준다.
/visual-summary/judge트랙 안에서는 둘째 줄의 실행 | 결과 로 오간다. 아래 「지금 도는 판정」에 진행 중인 판정이 선다.
c4-250). 같은 표본끼리만 견준다.| 이럴 때 | 탭 | 트랙 |
|---|---|---|
| stg 에 올린 것이 제품 전체로 좋아졌는지 재고 추세에 올린다 | 1 제품 전체 품질 | A |
| 종류(list · table · process · compare · chart)를 강제하면 추천보다 나은지 본다 | 2 시각화 종류 | B |
| 검색 풀 · iui 코드 · 생성기 프롬프트를 고친 것을 내 PC 에서 잰다 | 3 로컬에서 재기 | C |
| 고친 것을 종류 하나로 좁혀 잰다 | 4 로컬 종류별 | C |
| 로컬 회차 둘 이상을 견주어 고친 자리가 움직였는지 본다 | 5 고친 자리가 움직였나 | C |
| 구운 그림은 그대로 두고 축·프롬프트만 바꿔 다시 잰다 | 6 판정만 다시 | A · B · C |
| 동료가 보낸 결과 주소를 받아 읽는다 | 7 받은 회차 읽기 | A · B · C |
| 항목 | A·B (iframe) | C (로컬 Rust) |
|---|---|---|
| 검색·대치 | stg 의 실제 프론트·백엔드·Rust | 내 PC 의 Rust 서버 + 우리 레포의 대치 |
| 잴 수 있는 것 | stg 에 반영된 것만 | 고친 것 — 검색 풀 · iui 코드 · 생성기 프롬프트 · 판정 축 |
| 화면이 하는 일 | 검색 창(팝업)을 몰아 직접 굽는다 | 명령을 내주고, 터미널이 낸 CSV 를 받아 판정한다 |
stg 에 반영된 것을 표본 전체로 굽고 판정해, 정본 추세에 점 하나를 올린다.
A 정본 › 실행 /full/run → 결과 /full/results → 회차 상세 /full/r/<회차>
1 묶음을 고른다(예 c4-250 · 원문 250). 고르개가 비었으면 「설정에서 만들기」로 간다.
visual)이다기본값 그대로면 접힌 채 두고 넘어가도 된다.
1 「검색 창 열기」로 팝업을 띄우고 2 「굽기 실행」을 누른다. 원문 250 이면 35분쯤 걸리고, 60건마다 올라간다. 창을 닫았다 와도 이어서 간다.
⚠ 팝업은 미캔 로그인 세션을 쓴다. 미캔에 로그인한 브라우저에서 연다.
⚠ 굽기와 판정은 일부러 다른 단추다. 판정은 칸당 약 $0.0294(5축)이라 견적을 보고 누른다.
?view=flow)1010-c4-visual)⚠ 1위만 보면 효과를 과대평가한다. 판정 단위가 원문당 상위 10 이다.
결과에서 회차 이름을 누르면 /full/r/1013-c4-visual 이 열린다.
같은 원문을 종류마다 강제로 굽고, 추천(맡김)과 견준다. 결론은 추천과의 차로만 말한다.
B 종류 › 실행 /kinds/run → 결과 /kinds/results → 회차 상세 /kinds/r/<회차>
판정 조건은 A 와 같다. 한 번 실행이 한 묶음으로 저장된다.
1 굽기는 원문 × 고른 종류 수(+추천)만큼 돈다 — 원문 250 × 6벌이면 A 의 여섯 배다. 2 견적을 보고 판정한다.
⚠ 판정 비용도 종류 수만큼 는다. 견적 칸의 비용을 꼭 본다.
1013-e4-kinds1 종류 2 등급 3 등수로 좁혀 실제 장을 넘겨 본다. 나쁜 것부터 선다.
맨 아래 「조건」 표에서 두 회차가 같은 잣대로 판정됐는지 확인한다.
1 종류 칩(?fKind=table)을 누르면 아래 모든 표가 그 종류만 센다. 2 「이 회차의 그림으로 다시 판정」도 여기 있다.
화면은 돌리지 않는다 — 배포 서버가 내 PC 를 볼 수 없다. 화면이 명령 한 줄을 만들어 주고, 터미널이 낸 CSV 를 받아 판정한다.
C 로컬 › 실행 /local/run — 여덟 칸
inputs.json) — 다시 생성할 때 쓴다1 지난 회차의 YAML 재사용 — 비용 0. 검색·대치만 고쳤으면 이쪽이다. 생성을 다시 돌리면 입력부터 갈라져 차이가 어디서 왔는지 못 가른다.
2 다시 생성 — 생성기 프롬프트를 고쳤을 때. OpenAI 비용이 든다.
종류를 고르지 않으면 추천 한 벌이다. 강제는 4 로컬 종류별 에서 다룬다.
판정 조건(축 · 프롬프트 묶음)은 A 와 같은 칸이고, 고른 값이 명령에 실린다.
:18080)부터 띄운다화면이 내준 명령 예시(작업 폴더 · 회차 이름은 그때그때 다르다).
# 서버가 떠 있나 — 200 이어야 한다
curl -s -o /dev/null -w '%{http_code}\n' 'http://localhost:18080/readyz'
# ①–⑥ 한 번에 — 지난 회차의 YAML 재사용(비용 0)
RUST_URL='http://localhost:18080' scripts/judge-loop/mor2721/local-round.sh \
'/Users/me/judge-local/1014-lt28-k1' '1014-lt28-k1' \
--collect '/Users/me/judge-local/1013-lt28-ctl-top10/kind.json'
러너의 첫 단계 ⓪ 는 iui 사본이 iui main 과 같은지 본다. 다르면 멈춘다.
⓪ iui 사본 관문 — 사본이 iui origin/main 과 같은가
⛔사본이 iui origin/main 과 다르다 — npx tsx scripts/vendor/sync-iui.ts 로 맞춘 뒤 돈다
# 맞추기 — 먼저 드라이 런으로 무엇이 바뀌는지 본다
npx tsx scripts/vendor/sync-iui.ts --dry-run
npx tsx scripts/vendor/sync-iui.ts
통과하면 회차에 iui:main@<커밋> 라벨이 붙는다 — 어느 iui 판으로 쟀는지가 남는다. 끝나면 작업 폴더에 judge.csv 가 생긴다.
⚠ ⑤ 렌더는 제품 미리보기 호스트를 쓴다. 이 호스트는 20:00 에 잠든다 — manager.preview.miricanvas.com 에서 깨운다.
judge.csv 를 끌어다 놓는다local · 목적 delta · 표본 · 바뀐 것이 자동으로 적힌다1 로컬 회차 상세는 기준 대비 띠를 주소의 ?base=회차이름 으로 세운다. 견주기는 5 고친 자리가 움직였나 에서 한다.
3 의 흐름 그대로, 「종류」 칸에서 강제 종류를 고른다. 결과는 C 결과의 종류 축으로 읽는다.
C 로컬 › 실행 4 종류 → C 로컬 › 결과 (전후 표 · 종류 줄)
1 종류를 하나 이상 체크한다(예 table). 원문마다 종류 벌을 따로 돈다.
2 추천도 함께 굽는다 — 같은 회차 안에 대조군이 생긴다.
RUST_URL='http://localhost:18080' scripts/judge-loop/mor2721/local-round.sh \
'/Users/me/judge-local/1014-lt28-k1-table' '1014-lt28-k1-table' \
--collect '/Users/me/judge-local/1013-lt28-ctl-top10/kind.json' \
--kind 'table' --with-rec
종류 벌의 장은 원문|종류 로 저장되고, 추천 벌은 원문 그대로다. CSV 를 올리면 종류 메타도 함께 적힌다.
1 전후 표의 「종류」 줄이 종류마다 그 종류 장을 따로 센다. 2 줄 이름을 누르면 그 종류로 좁힌다(fKind) — 위의 띠·분포가 그 종류 기준으로 다시 선다.
그림의 회차는 추천만 구운 회차라 「추천」 한 줄만 선다.
B 는 stg 그대로 종류를 강제했을 때 추천보다 나은가를 묻고, 여기는 내가 고친 것이 그 종류에서 움직였나를 기준 회차와 견주어 묻는다.
기준 회차 하나에 비교 회차를 대고 어디가 벌어졌나부터 본다. 전체 수가 안 움직여도 고친 자리는 움직였을 수 있다.
C 로컬 › 결과 /local/results · 예 기준 1013-lt28-ctl-top10 ↔ 비교 1013-lt28-k1-top10
기준을 정본 트랙 회차에서 고를 수도 있다(접힌 칸).
1 비교 회차의 BAD 비율은 22.6%에서 18.9%로 내려갔다 — 구간이 0 을 품어 못 가른다.
2 가장 벌어진 칸 — 나빠진 칸부터, 20장 이상만 선다. 칸을 누르면 그 조건으로 좁힌다.
Enumeration_ListingTable(&fType=…)「고친 자리는 움직였는데 전체로는 구분되지 않는다」가 여기서 보인다.
1 K1 에서 ListingTable 몫이 43.3%에서 90.7%로 올라갔다. 2 「1위 중」은 순위가 바뀐 자리를 가리킨다.
판정 흔들림이 섞이지 않아, 띠가 「못 가른다」일 때도 무엇이 바뀌었는지가 보인다.
1 축 · 길이 · 갈래 · 등수 구간 · 종류 · 유형이 차례로 선다. 2 줄 이름을 누르면 그 조건으로 좁힌다. 3 장 수를 누르면 그 장들이 열린다.
20장 미만 칸은 흐리게 선다 — 숨기면 「없다」로 읽혀서다.
1 같은 원문의 등급이 어디서 어디로 갔나. 2 ACCEPTABLE → BAD 3 원문이 나빠졌다. 3 아래에 무너진 원문이 장 수 많은 것부터 선다.
비교 · 기준을 바꿔 가며 실제 장을 본다. 장 아래 「회차 상세」로 내려가면 원문 · 요약 · 컴포넌트까지 본다.
1 두 회차가 같은 축 · 모델 · 반복 · 프롬프트 묶음으로 판정됐나. 다르면 차이를 제품 변화로 읽지 않는다.
비교 회차를 여럿 고르면 시각 차례로 잇는 작은 추세가 선다. 같은 주제를 여러 번 고칠 때 쓴다.
구운 그림은 그대로 두고 축·프롬프트만 바꿔 다시 잰다. 굽기를 건너뛰어 시간과 굽기 비용이 안 든다.
회차 상세 → /full/run?rejudge=1013-c4-visual
1 「이 회차의 그림으로 다시 판정」 → 그 트랙의 실행 화면이 열린다. A · B · C 회차 상세 모두에 있다.
<원이름>-rejudge-<n>아래 판정 조건에서 축이나 프롬프트 묶음을 바꾼다.
1 견적 내기 — 그림의 조건(조각 7 · 반복 5)이면 판정 칸 14,940 · $374.25–620.75 다. 반복을 줄이면 견적이 그만큼 준다.
2 판정 실행 — 비용이 붙는다.
⚠ 조건을 바꾸면 견적이 지워진다. 낡은 견적으로는 실행하지 않는다.
받은 주소를 그대로 연다 — 고른 회차 · 좁힌 칸 · 탭 · 쪽까지 주소에 들어 있어 같은 화면이 열린다.
예 /full/results?base=1010-c4-visual&vs=1013-c4-visual
1 무엇을 봐야 할지 모르면 여기부터다. 나빠진 칸이 먼저 선다 — 이 회차는 Transformation_Transformation 이 16.1%에서 30.3%로 올라갔지만 못 가른다.
1 표의 수를 누르면 2 그 칸의 장이 열린다. 누른 수와 장 건수가 같다. 장 아래 회차 번호로 회차 상세에 내려간다.
1 대치 결과 그림 2 유저 입력 원문과 판정기가 읽은 visual summary 3 매칭된 컴포넌트 원본과 구조 · 검색 매칭 조건 4 축마다 등급과 까닭.