v1.12.30 긴 접속 시간 표시와 중단 후 새 방문 처리 개선

This commit is contained in:
2026-10-21 18:45:44 +09:00
parent 51d5de148f
commit 7b6fc45bf3
19 changed files with 310 additions and 68 deletions

View File

@@ -112,7 +112,7 @@
| lib/media-catalog.js | 업로드 URL·저장 키 정규화, 미디어 종류·원본/파생 역할 판별, 콘텐츠 미디어 참조 추출, PostgreSQL LIKE 리터럴 이스케이프 |
| lib/social-links.js | 사이트 설정 SNS 링크 아이콘 프리셋·사용자 SVG 정리·URL 자동 보정·레거시 JSON 문자열 복구·공개 노출 목록 생성 |
| server/utils/backup-storage-summary.js | 관리자 사이트 설정 백업 현황용 업로드 파일 스캔·원본/자동 생성 이미지/프로필/내보내기 파일 용량 집계 |
| plugins/site-analytics.client.js | 공개 페이지 pageview/read/heartbeat 전송, 탭 단위 client session과 라우트 진입 단위 content session ID 관리 |
| plugins/site-analytics.client.js | 공개 페이지 pageview/read/heartbeat 전송, 탭 단위 client session과 라우트 진입 단위 content session ID 관리·긴 실행 중단 제외 측정·탭 복귀/페이지 복원 heartbeat |
| server/repositories/analytics-repository.js | 자체 통계 일별 집계, 콘텐츠 세션 원장, 실시간 접속자·전체 활성 탭 수, 유입·디바이스·게시물·페이지 통계 조회 |
## 문서
@@ -212,7 +212,7 @@
| tests/markdown-table.test.js | Markdown 표 행·정렬·블록 파싱 단위 회귀 테스트 |
| tests/admin-pagination.test.js | 관리자 페이지네이션 페이지 보정·ellipsis 항목 단위 테스트 |
| tests/playwright/e2e/admin-media-interactions.spec.js | 관리자 미디어 전체 선택·선택 유지 폴더 생성·다중 드래그/드롭 강조·이동 진행·취소/실패·목록 지연/최신 요청/재시도 E2E 회귀 검증 |
| tests/playwright/api/core-api.spec.js | 인증·부분 설정 저장·공개 목록·댓글/회원 작성 이력·실시간 활성 탭 집계·CSP·미디어 reconcile/fallback·세션 무효화 API 통합 14건 |
| tests/playwright/api/core-api.spec.js | 인증·부분 설정 저장·공개 목록·댓글/회원 작성 이력·실시간 활성 탭 집계·긴 접속 시간/평균 체류 상한·CSP·미디어 reconcile/fallback·세션 무효화 API 통합 15건 |
| tests/playwright/e2e/admin-guard-and-settings.spec.js | 설정 카드 독립 저장과 미저장 이탈 취소 브라우저 E2E 2건 |
| tests/playwright/e2e/admin-publish.spec.js | 관리자 로그인·게시물 발행·공개 화면 확인 브라우저 E2E 1건 |
| tests/playwright/e2e/admin-regressions.spec.js | 태그 추천 연속 선택·미디어 파생 탭 배지 숨김·단일 이미지 `{size=}` 너비 브라우저 회귀 테스트 |
@@ -646,10 +646,12 @@
| server/routes/admin/api/members/[id]/posts.get.js | 관리자 회원 작성 글 조회 인증·Zod 검증·검색·페이지 API |
| server/repositories/member-activity-repository.js | 회원별 게시글·댓글 통합 최신순 검색·종류 필터·전체 건수 및 페이지 조회 |
| server/routes/admin/api/members/[id]/activity.get.js | 관리자 회원 통합 작성 이력 인증·Zod 조건 검증 API |
| lib/analytics-display.js | 통계 천 단위 숫자 표시·접속 페이지 제목/공개 링크·최근순 고유 페이지 정리 |
| lib/analytics-duration.js | 페이지별 heartbeat 실행 간격 누적·90초 이상 중단 제외·30분 이상 중단 후 새 방문 |
| tests/analytics-duration.test.js | 30분 초과 누적·짧은 중단 유지/제외·긴 중단 후 새 방문·시계 역행·통계/실시간 상한 분리 검증 |
| lib/analytics-display.js | 통계 천 단위 숫자 표시·접속 시간의 시간/일 단위 압축·접속 페이지 제목/공개 링크·최근순 고유 페이지 정리 |
| components/admin/AdminRealtimePages.vue | 접속자 최근 페이지 요약·외 N개 색상/숫자 굵기·단일 페이지 링크·다중 페이지 전용 화면 안 팝오버 위치·열린 페이지 링크·hover/클릭/키보드 접근 |
| tests/analytics-display.test.js | 천 단위 표시·최근순 중복 제거·공개 경로 검증 |
| tests/playwright/e2e/admin-dashboard.spec.js | 대시보드 쉼표·섹션 순서·전체/표시 인원·전체 화면 수·다중 페이지 강조/팝오버·단일 페이지 링크 검증 |
| tests/analytics-display.test.js | 천 단위·긴 접속 시간 표시·최근순 중복 제거·공개 경로 검증 |
| tests/playwright/e2e/admin-dashboard.spec.js | 대시보드 쉼표·섹션 순서·전체/표시 인원·전체 화면 수·긴 접속 시간·다중 페이지 강조/팝오버·단일 페이지 링크·가상 시계로 짧은 중단/장기 중단 후 새 방문 heartbeat·페이지뷰 검증 |
| tests/production-compose.test.js | 운영 마이그레이션·썸네일 백필 스크립트의 Compose 파일·환경 파일 전달 격리 검증 |
| docker-compose.yaml | NAS Docker 앱용 독립 실행 구성·사전 빌드한 로컬 앱 이미지 사용·앱 원격 pull 금지 |
| scripts/build-production-image.sh | 운영 환경 파일을 사용해 앱 이미지만 빌드·Docker 오류 반환·컨테이너/DB 미변경 |