{
  "date": "2026-10-19T06:59:51.826Z",
  "unitExit": 0,
  "browserExit": 0,
  "browserResults": [
    {
      "kind": "실행 환경",
      "date": "2026-10-19T06:58:39.332Z",
      "node": "v22.14.0",
      "browser": "155.0.8059.79",
      "channel": "chrome",
      "executable": null,
      "base": "http://127.0.0.1:34955",
      "viewport": {
        "width": 1280,
        "height": 900
      }
    },
    {
      "kind": "브라우저 기능",
      "summary": "통과 16 / 실패 0 / 전체 16",
      "items": [
        "통과: 10만 행: 제한된 렌더링 행 수·마지막 행 이동",
        "통과: 가로 스크롤·폭 변경·순서 변경: 헤더/셀 일치",
        "통과: 가변 높이·독립 align/headerAlign·헤더 높이",
        "통과: 100×100 붙여넣기 전체·실패 원자성·Undo",
        "통과: 라디오: 셀마다 5개·단일 선택·행 독립·dirty",
        "통과: 날짜 셀 직접 입력·달력 7열·화면 경계·포커스 복원",
        "통과: 트리: 3단계·16px 들여쓰기·버튼 슬롯·연결선·필터",
        "통과: 고정 좌우 컬럼·상하 행·줄바꿈",
        "통과: 로딩 7개 위치: 기존 행 위치·높이 유지",
        "통과: 취소된 늦은 응답·추가 조회 실패 보존·정확한 재시도",
        "통과: 저장 keep·optimistic rollback·저장 중 편집 차단·초기화",
        "통과: 키보드·ARIA·포커스·선택·Undo/Redo",
        "통과: 다중 인스턴스 격리·플러그인 해제·종료",
        "통과: 그룹·상세 하위 그리드·다단 헤더·레이아웃",
        "통과: 반응형·flex·조건부 스타일·CSV·XLSX·인쇄 안전",
        "통과: 비동기 편집기 요청 취소·팝업 적용/취소 정리"
      ],
      "failed": 0,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "basic",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "layout",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "responsive",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "search",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "editors",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "crud",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "paste",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "computed",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "loading",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "server",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "group",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "tree",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "detail",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "pinned",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "headers",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "accessibility",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "매뉴얼 독립 실행",
      "name": "large",
      "gridCount": 1,
      "errors": []
    },
    {
      "kind": "실제 사용자 입력",
      "name": "마우스/방향키 셀 이동은 외곽 포커스 없이 활성 셀 표시",
      "status": "통과"
    },
    {
      "kind": "실제 사용자 입력",
      "name": "셀 내부 편집·렌더 중 입력 보존·Tab/blur 확정·Escape/검증·문자 입력 시작",
      "status": "통과"
    },
    {
      "kind": "실제 사용자 입력",
      "name": "select는 셀에서 원클릭 선택·즉시 반영·값 타입·readonly·Undo",
      "status": "통과"
    },
    {
      "kind": "실제 사용자 입력",
      "name": "마우스 드래그·Shift·Ctrl 선택",
      "status": "통과"
    },
    {
      "kind": "실제 사용자 입력",
      "name": "실제 클립보드 복사·붙여넣기·Undo/Redo·Delete",
      "status": "통과"
    },
    {
      "kind": "실제 사용자 입력",
      "name": "Fill Handle 실제 드래그",
      "status": "통과"
    },
    {
      "kind": "실제 사용자 입력",
      "name": "Home/End/Page·F2 편집·Ctrl+F",
      "status": "통과"
    },
    {
      "kind": "실제 사용자 입력",
      "name": "헤더 실제 드래그·마우스/키보드 너비 조절",
      "status": "통과"
    },
    {
      "kind": "실제 사용자 입력",
      "name": "헤더 드래그 삽입선·앞/뒤 이동·취소 정리",
      "status": "통과"
    },
    {
      "kind": "실제 사용자 입력",
      "name": "실제 스크롤 Infinite 조회·실패 페이지 재시도",
      "status": "통과"
    },
    {
      "kind": "실제 사용자 입력",
      "name": "HTTP 저장 실패 keep·rollback·재시도와 서버 반영",
      "status": "통과"
    },
    {
      "kind": "사용자 입력 JavaScript 오류",
      "errors": []
    },
    {
      "kind": "워크스페이스 UI",
      "name": "업무 화면·검색·조회 집계·해제",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 UI",
      "name": "헤더 메뉴 숫자 필터·표시 상태·해제",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 UI",
      "name": "AND/OR 조건 빌더·숫자 변환·조건 삭제",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 UI",
      "name": "컬럼 표시·숨김·고정·너비 맞춤·레이아웃 복원",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 UI",
      "name": "다중 정렬·3단계 토글·표시 우선순위",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 UI",
      "name": "수정·계산·선택집계·Undo/Redo·추가·원복",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 UI",
      "name": "화면 밖 가로 키보드 탐색·전체 선택·Escape",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 UI",
      "name": "테마·밀도·팝업 경계·반응형 화면",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 UI",
      "name": "헤더 우클릭·잘못된 숫자 거부·Escape·플러그인 해제",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 UI",
      "name": "사이드바는 문서 이동 없이 예제 전환·주문 편집/프레임 상태 보존",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 UI",
      "name": "그룹별 합계·평균 DOM과 접기",
      "status": "통과"
    },
    {
      "kind": "워크스페이스 JavaScript 오류",
      "errors": []
    },
    {
      "kind": "워크스페이스 axe",
      "target": "workspace",
      "violations": []
    },
    {
      "kind": "워크스페이스 axe",
      "target": "filter-dialog",
      "violations": []
    },
    {
      "kind": "워크스페이스 axe",
      "target": "workspace-dark",
      "violations": []
    },
    {
      "kind": "매뉴얼 iframe",
      "count": 53,
      "tabs": "클릭 JavaScript·ArrowRight Vue 통과",
      "errors": []
    },
    {
      "kind": "기능별 매뉴얼",
      "name": "기능 메뉴·설명/API·한 개 예제 표시·최상위 문서 유지",
      "status": "통과"
    },
    {
      "kind": "기능별 매뉴얼",
      "name": "기능 검색·검색 결과 없음·키보드 메뉴 선택",
      "status": "통과"
    },
    {
      "kind": "기능별 매뉴얼",
      "name": "기능별 소스·다중 import Vue·공통 파일 탭·소스 복사",
      "status": "통과"
    },
    {
      "kind": "기능별 매뉴얼",
      "name": "그리드·컬럼 속성 개별 메뉴·기본값·객체 계약·모바일",
      "status": "통과"
    },
    {
      "kind": "기능별 매뉴얼",
      "name": "가이드·속성 사전·검증 메뉴·기존 링크 호환·모바일",
      "status": "통과"
    },
    {
      "kind": "기능별 매뉴얼 JavaScript 오류",
      "errors": []
    },
    {
      "kind": "기능별 매뉴얼 axe",
      "violations": []
    },
    {
      "kind": "axe 자동 접근성 검사",
      "violations": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "basic",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "layout",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "responsive",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "search",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "editors",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "crud",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "paste",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "computed",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "loading",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "server",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "group",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "tree",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "detail",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "pinned",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "headers",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "accessibility",
      "errors": []
    },
    {
      "kind": "실제 Vue 실행",
      "name": "large",
      "errors": []
    }
  ]
}