브라우저 검사 이름으로 목적을 바로 읽기 (2026-09-09)
2026-09-10 최종 반영: 아래 Phase·개별 검사 표는 2026-09-09 준비 당시 기록이다. 이후 통합 PR #1484의 full CI가 7분 32초로 통과했고 브라우저 56건·화면 22건의 새 표시 이름과 성공 결과를 확인했다. main #1489, Production DB·Edge·앱·smoke 성공 및 v0.17.7 발행까지 완료했다. 문서 변경은 HQ의 최종 릴리스 기록과 함께 통합한다. 이 후속 기록이 아래의 당시 미실행·미반영 상태를 갱신한다.
- 기간: 2026-09-09, Codex 동일 세션. 오너 지시: “바벨릭 1470 진행해줘”, 선행 병합 후 “후속작업 해줄래?”
- 랜딩: 앱
release/v0.17.7대상 준비 중. Phase 13c6881f7, Phase 27143ebda. 앱·문서 PR과 큐 결과는 확인 후 갱신한다. Production 미반영. - 설계서: 이슈 #1470, 분석·Phase 계획.
- 정본: 검사 설명, 로컬 검증, 릴리스 큐, 이 저장소
error-cases/README.md. - 도구: 앱
scripts/ci-local.mjs,scripts/check-e2e-evidence.mjs. 작업 폴더의 검사 로그는 Git에 넣지 않는다. - 게이트: Phase 1·2 각각
npm run check3,436 통과·28 조건부 skip·실패 0. Phase 2 관련 검사 19/19,ci:full-local --plan표시 이름 확인. 사전 검증·큐 전체 검증·문서 검사는 아래 적용 결과로 구분한다.
Phase 현황
| Phase | 내용 | 상태 |
|---|---|---|
| Phase 1 | Actions 잡·스텝과 이름 소비부 | 완료, 3c6881f7 |
| Phase 2 | 로컬 계획·단계·요약·증거 집계 | 완료, 7143ebda |
| Phase 3 | 문서·번역 제목·작업 기록과 검증 | 완료 |
1. 배경
오너가 CI의 Chromium 검사 57개와 22개가 각각 무엇인지 물었다. 파일에서 가져온 영문 이름만으로는 사용자 행동 검사와 화면 구조 검사를 구분하기 어려웠다.
2. 문제 제기
Actions는 browser-journeys·viewport-matrix, 로컬 요약은 e2e-browser·e2e-viewport, 증거 오류는 browser:·viewport:로 표시했다. 같은 검사의 이름이 출력 위치마다 달랐다.
3. 해결 방안
2026-09-09 오너 결정대로 표시 이름을 유저 실사용 시뮬레이션과 화면 정합성 검사로 통일한다. 기존 잡 ID·명령·CLI 인자·JSON 키·아티팩트 이름은 유지한다.
표시 이름을 만드는 지점과 그 이름을 읽는 소비부를 함께 바꿨다. 마지막 로그만 문자열 치환하는 방법은 Actions·실행 계획·오류 문구의 불일치를 남기므로 사용하지 않았다.
4. 적용한 내용
Phase 1 — Actions 표시 이름
policy-contract.yml의 잡·실행·업로드 스텝 이름을 변경했다. 유저 실사용 시뮬레이션은 (조각 n/4)를 표시하며, 수동 실행과 무관 라벨 실행의 구분을 유지한다. 표시 이름 줄을 제외한 워크플로 원문은 변경 전과 동일하다.
구형 landing-service.mjs는 GitHub API의 job.name을 직접 비교하므로 새 표시 이름에 맞췄다. 실제 잡 ID를 사용하는 needs·verify 결과 연결은 바꾸지 않았다. 수동 실행과 각 조각의 실패·skip 차단을 기존 테스트에서 확인했다.
Phase 2 — 로컬 요약과 증거
사람에게 출력할 때만 표시 이름을 적용했다. 내부 결과 이름, browser·viewport 키, --only browser·--only viewport, 리포트 경로는 그대로다. 증거 집계는 실패 이유 앞부분과 성공 문구만 변경했고 동일 SHA·첫 시도·완료·정리 판정은 유지했다.
Phase 3 — 문서
지정 문서 네 곳, 검사 설명의 한국어 번역 제목과 사이드바, 이 작업 기록을 갱신했다. 화면 정합성 검사 절의 기존 #viewport-matrix 앵커를 유지했다. 과거 릴리스의 측정 수치는 다시 쓰지 않고 v0.17.7 표시 이름을 따로 밝혔다.
작업 중 드러난 것
#1460은 release/v0.17.6에 먼저 병합됐고 대상 release/v0.17.7에는 아직 포함되지 않아, 제 작업 브랜치에 병합된 선행 릴리스를 합쳤다. 타 담당자의 PR·브랜치·큐는 변경하지 않았다.
Phase 1 최초 검사에서 감사 목록에 없는 테스트 두 곳을 변경 신고한 제 실수로 중단됐다. 불필요한 신고를 제거한 뒤 전체 검사를 다시 통과했다. 제품 결함이나 검사 완화는 없었다.
5. 적용 결과
| 항목 | 전 → 후 / 검증 상태 |
|---|---|
| 행동 검사 표시 | browser-journeys → 유저 실사용 시뮬레이션 (조각 n/4) |
| 화면 검사 표시 | viewport-matrix → 화면 정합성 검사 |
| 로컬 요약 | 영문 단계 이름만 → 지정 이름 + 괄호 속 기존 단계 이름 |
| 검사 목록 | 행동 57개·화면 22개 → 동일. 검사 추가·제거 없음 |
| 앱 Phase 검사 | 각 3,436 통과 / 28 조건부 skip / 실패 0 |
| PR 전 사전 검증 | 실행 중 |
| 큐 전체 검증·release 병합 | 미실행 |
| 문서 검사·빌드·산출물 | 통과. 메뉴 295개 경로·게시 자산 31개 및 기존 화면 검사 앵커 확인 |
| Production | 미반영. 표시 이름 변경의 실제 Actions 적용은 해당 워크플로가 실행되는 버전부터 |
--plan과 단위 테스트 통과는 57개 행동·22개 화면 검사를 실제로 실행한 증거가 아니다. 실행 시간 단축이나 앱 기능 개선은 이번 변경의 성과로 주장하지 않는다.
6. 이번 개선으로 향상된 것
Actions·큐 요약·실패 보고·문서에서 같은 검사를 같은 이름으로 읽을 수 있다. 기술 식별자를 유지하므로 기존 실행 명령과 결과 파일 연결도 보존한다.
남은 것
현재 요청의 사전 검증·문서 검증·PR·큐 병합 결과를 확정해 기록한다. Production 반영은 완료된 것으로 표시하지 않는다.