검색 인덱스, 하드닝, 그리고 이 사이트
- 65268랜딩 페이지: GitHub 저장소와 소스
.zip 다운로드 링크
- 65266랜딩 페이지: 히어로 디프 오버플로로 인한 모바일 축소 렌더링 수정
- 65265GitHub Pages 커스텀 도메인 (
docs/CNAME → p4-web.woojinkim.org)
- 65264프로젝트 랜딩 페이지 (
docs/index.html)
- 65225Changes 뷰가 엔진을 자동 선택 — 사용자 노출 “Fast” 토글 제거 (설명/파일명/날짜 탐색은 인덱스, 펜딩·경로 프리픽스는 라이브 p4)
- 65221날짜 필터를
YYYY-MM-DD 텍스트 입력으로 변경 (네이티브 날짜 픽커는 브라우저 로케일 형식으로 렌더링되는 문제)
- 65220사용자별 체인지리스트 검색 인덱스 — 프로텍션을 준수하는 즉시 설명·파일명 검색
- 65218세션 만료 UX 개선: 재로그인 안내, 사용자명 미리 채움, 위치 보존
- 65217운영 하드닝: 프록시 헤더 허용 목록 고정,
sessions.db 권한을 열 때마다 재조정
- 65216DoS 하드닝: 스트리밍 raw 다운로드, 제한된 업로드 스풀링, 세션별 API 요청 제한
리뷰 기능과 보안 점검
- 65207상시 보안 리뷰(코드 리뷰 + 감사 + 레드팀)와 심층 방어 수정 3건
- 65206체인지 상세: 파일 경로 클릭 가능 — 텍스트는 뷰어로, 바이너리는 다운로드로
- 65196인라인 코멘트: 파일/줄·체인지리스트 스레드, 마크다운 본문, 해결/수정/삭제
- 65193경로 즐겨찾기와 루트 대시보드 (즐겨찾기별 최근 변경 표시)
- 65192마크다운 렌더링: 탐색 화면 README 패널, Rendered/Source 토글 (marked + DOMPurify, 번들 포함)
쓰기 작업
- 65184다크 모드(시스템 기본 + 수동 토글)와 문서 마무리
- 65182디포 목록 정렬; 줄 번호 퍼머링크
- 65181My Changes에서 셸브 / 언셸브 / 셸프 삭제
- 65178쓰기 UI: My Changes 페이지, 웹 에디터, 업로드, 서브밋 확인
- 65175쓰기 백엔드: 사용자별 서버 측 워크스페이스, 자기 체인지리스트 한정 가드, 감사 로그
- 65170로그인 요청 제한(계정·IP별)과 Secure 쿠키
P4V 패리티와 운영
- 65168모바일 UX 정비: 행 전체 탭 타깃, 슬라이드 오버 트리, 반응형 테이블
- 65165배포: Dockerfile + compose, launchd·systemd 유닛, SSL 최초 접속 신뢰
- 65162체인지리스트 필터에 사용자 자동완성
- 65161통합 이력을 담은 SVG 리비전 그래프 탭
- 65157흔한 p4 오류를 친절한 메시지로 번역
- 65155세션을 SQLite에 보존 — 재시작해도 로그아웃되지 않음
- 65153모바일 레이아웃 기반 작업
- 65151디포 트리 사이드바: 지연 로딩, 딥링크와 동기화
- 65149메타데이터 브라우저: 레이블, 잡(픽스 포함), 브랜치, 스트림, 사용자 & 그룹
- 65148raw 보기/다운로드와 인라인 이미지 미리보기 (CSP 샌드박스)
- 65147디프 스위트: 어디서나 side-by-side, 리비전 쌍, 폴더 디프, 타임랩스 어노테이트
- 65145디포 검색: 디포 전역 파일명,
p4 grep 기반 내용 검색
읽기 전용 코어
- 65139README,
/api/info, 로그인 화면 다듬기
- 65138체인지리스트 탐색: 필터, 키셋 페이징, 파일별 디프가 있는 상세 뷰
- 65137파일 히스토리(이름 변경 포함), unified 디프, 어노테이트
- 65135디포 브라우저와 오프라인 신택스 하이라이팅 파일 뷰어
- 65134프로젝트 뼈대: FastAPI 앱,
p4 -G 래퍼, 티켓 기반 로그인