Commit Graph

10 Commits (dac47bdd207ef1c28f4b912620ac98cab47d3657)

Author SHA1 Message Date
RyuJongJin 3434ad4937 M1-2: lib 의 …ForTest 이름 정리 (실제 기능 · 주입으로)
- SuRoot.resetForTest → forgetGrant (이번 실행의 su 허락 잊기)
- ComGuard.releaseForTest → release (ensure 와 짝인 CoUninitialize)
- debugUpscalerForTest 전역 → PlatformServices.createUpscaler 주입
- 원격 썸네일 reset…ForTest 3개 → forgetRemoteThumbHub · forgetRemoteRangeSupport · forgetRemoteThumbNet
- vaultIterationsForTest 전역 → VaultPage(iterations:) (처음 값 VaultCrypto.defaultIterations)
- 남은 recycleBinForTest 는 M2 (TrashBackend) 에서 정리

확인: analyze 0 · 단위 1470 ×2 · 통합 6/6 ×2 · base10 214장 0px · com_guard_test · windows_vault_shot_test ×2

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 20:45:32 +09:00
RyuJongJin 20f9d083b2 E6 1: 탐색기 모양 처음 값을 기기마다 (Windows = Total Commander) · 예전 판이 저장한 X-plore 는 한 번만 묻기
- ExplorerSettings: 처음 값 defaultStyle (Windows totalcmd · Android xplore). 예전 파일에 모양 키가 없으면 그때의 X-plore.
  Windows 에서 저장된 xplore 이고 물었다는 표시 (explorerStyleV2) 가 없으면 styleAskPending (저장 안 함)
- style_ask: 탐색기를 열 때 한 번 [바꾸기] (Total Commander) / [그대로] (X-plore) - 창 밖으로 닫지 못함, 어느 쪽이든 다시 묻지 않음.
  환경 설정에서 직접 고르면 묻지 않음
- 약속 시험 explorer_style_contract_test: 새 설치 · 저장된 xplore (키 없던 예전 파일 포함) · windows/totalcmd 안 물음 · [그대로] · [바꾸기]
- X-plore 모양 (트리) 을 보는 기존 시험 14개 파일 + 공용 하네스에 style = 'xplore' 를 밝힘 (기대값 그대로, 관리자 승인 10/23)
- 설정 JSON 골든: 새 키 explorerStyleV2 한 줄 · 처음 값 출력의 Windows 모양 totalcmd 만 바꿈. 사전 4개 (en · ja · zh-Hans)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 05:39:39 +09:00
RyuJongJin aea1ec5eba vault_page_test 흔들림 고침 (기대값 그대로): 기다림을 실제 시간으로 · 보관함 쓰기가 다 끝날 때까지
- 원인: until 이 횟수 (200번) 로 끊겨 부하 때 일이 덜 끝난 채 넘어갔고, 끝맺음의 '.tmp 없음' 한 번 확인이 목록 저장과
  빈 폴더 목록 저장 사이에 맞아 folders.jjd.tmp 쓰기가 연 채 남아 임시 폴더를 지우지 못했다 (errno 32, 6/18 재현)
- until: 최대 60초 실제 시간, 안 되면 그 자리에서 실패 (조용히 넘어가지 않음). vaultQuiet: .tmp 없음이 10번 잇달아일 때
- 확인: 6개 동시 × 3회 18/18, 혼자 10회 연속 통과

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 01:36:54 +09:00
RyuJongJin a35293271e 설정 A 분야 10: 암호 보관함 (VaultSettings) - 키 3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 23:30:18 +09:00
RyuJongJin 428fe99a82 설정 A 분야 1: 파일 탐색기 (ExplorerSettings) - 키 31 · 옮김 표시 3
- lib/app/settings/explorer_settings.dart: 탐색기 설정의 이름 · 처음 값 · 읽기 · 쓰기를 한 곳에
- AppSettings 는 explorer 분야를 갖고 분야 목록을 돌며 합치기만 (toJson · fromJson 에서 탐색기 키를 지움)
- 부르는 곳: s.explorerLayout → s.explorer.layout 꼴 (옛 이름 getter 없음), 저장 키 이름은 그대로
- 고침: fromJson 이 바뀐 기본값 알림 (_migrated) 을 분야를 읽기 전에 계산하던 것 - 분야를 먼저 읽음
- JSON 약속 시험: 알림 목록 (__migrated) · 옛 판 설정 경우를 더함, 기준은 옛 판 (db45f80) 에서 다시 만듦

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 22:08:55 +09:00
RyuJongJin 06a6b1e8aa rc2: 보관함에 넣은 파일의 썸네일 캐시 지우기 · 내용 파일이 빠진 항목 안내 · [목록에서 빼기] (28 지적, 관리자 지시 10/21)
- 썸네일 캐시: 넣을 때마다 그 원본 (경로 · 크기 · 바뀐 때) 의 캐시를 지움 - 탐색기 동영상 썸네일 (jj_thumbs) · 빠른 보기 큰 것 (|640) ·
  원격 썸네일 (jj_rthumbs), 이름은 같은 키의 md5 (lib/core/thumb_cache.dart). 메모리 기억 (탐색기 · 원격) 도 그 경로만 잊고,
  다 넣은 뒤 화면 그림 기억 (Flutter imageCache) 도 비움. [원본 지우기 (이동)] 은 같은 파일이라 넣을 때 이미 지워짐
- 내용 파일이 없거나 (예전 목록으로 되돌림 등 - 전에는 PathNotFoundException) 짝이 맞지 않으면: "보관함 파일이 바뀌었거나 빠졌습니다 -
  이 항목은 꺼낼 수 없습니다 (보관함 폴더를 다른 곳에서 바꿨는지 확인하세요)", 원문은 [자세히], [목록에서 빼기] (확인 창 - 남은 내용 파일도 지움).
  꺼내기 · 보기 (그림 · 동영상) 모두. 받는 쪽 폴더 오류 등 그 밖은 예전처럼 알림
- 시험: thumb_cache_test (그 파일 것만 3개 지움 · 다른 파일 것 그대로 · 원격 키 꼴이 같음 · 메모리 잊음),
  vault_page_test (내용 파일 지운 항목 → 안내 · [자세히] · 남은 파일 없음 · [목록에서 빼기] 로 비움). 관련 35개 통과

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 19:07:33 +09:00
RyuJongJin 0a9a2d0af5 WIP ⑦ 밝은 화면 (나) 2: 보기 · 재생 · 나머지 화면 · 캡처 시험 넓힘 (검토 대기)
관리자 지시 10/21 (⑦ (나) 둘째 이후):
- 보기 화면 · 재생 막대는 밝은 화면에서도 어두운 띠 (그림 · 동영상 위 - 사진 보기 앱처럼, 내 판단).
  그 띠 위 강조 (켜진 단추 · 쪽 슬라이더 · 썸네일 테두리 · 재생 위치) 는 어두운 화면의 청록, 검은 바탕의 흐린 글자도 어두운 값
- 시간줄: 재생 위치 선 · 고른 칸 글자 (밝은 화면), AI 보라 (aiColor) 는 밝은 화면에서 진하게,
  다운로드 진행 막대 글자는 밝은 화면에서 진한 글자 + 흰 테두리
- 캡처 시험: 보기 화면 캡처 (windows_reader_shot_test) 를 새로 · 662 · i18n (앱 전체는 설정 화면 밝기) · check · magnet 에도 JJ_SHOT_THEME
- 시험 흔들림: 보관함 2단계 시험 정리 때 폴더를 잠깐 잡고 있으면 (errno 32) 몇 번 더 지움
- 확인: 어두운 화면 캡처를 808300b 와 픽셀로 견줘 (같은 커밋 두 번 찍은 흔들림 밖) 차이 0

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 17:15:21 +09:00
RyuJongJin 8fa270a62e WIP X-plore 비교 5-2 보관함 2단계: 폴더째 넣기 · 원격 파일 · 보관함 안 폴더 (검토 대기)
관리자 지시 10/21 (보관함 2단계):
- 폴더째 넣기: 안의 구조 · 빈 폴더 그대로, 폴더 이름도 암호화한 목록에만 (바깥 보관함 폴더에는 무작위 이름 파일뿐)
- 원격 (WebDAV · SFTP · SMB · FTP · 시스템 폴더) 파일: 앱 전용 폴더 (jj_vault_view_in_…) 에 받아 넣고 받은 것은 바로 지움
- 보관함 안 새 폴더 · 파일 · 폴더 옮기기 · 폴더 이름 바꾸기 · 폴더째 꺼내기 · 폴더째 지우기 (확인 창에 파일 수), ← 는 위 폴더로
- [원본 지우기 (이동)] 는 다 들어간 것만 (폴더는 안의 것이 모두 들어갔을 때만, 읽지 못한 폴더는 반만 넣지 않음)
- 보관함 비밀번호 바꾸기는 1단계에 있음 (열쇠만 다시 감쌈)
- 버그 수정: 이름 묻는 창이 닫히는 중에 글자 칸을 버려 오류 → 창과 함께 버림
- 내 판단: 폴더 정보는 1단계 판과 맞게 - 맨 위 파일은 목록 모양 그대로, 빈 폴더 목록은 따로 (folders.jjd, 1단계의 정리가 지우지 않음).
  1단계 판으로 되돌려 쓰면 파일은 다 보이지만 폴더 구조는 그 판이 목록을 다시 쓸 때 풀린다 (내용은 잃지 않음)
- 내 판단: 넣는 폴더 이름이 지금 폴더에 있으면 합치지 않고 " (2)"
- 내 판단: 같은 폴더에 같은 이름 파일을 넣으면 " (2)" (전에는 겹친 이름이 그대로 둘)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 13:17:39 +09:00
RyuJongJin dc4bae5329 WIP 암호 보관함: 평문이 남을 수 있는 두 곳 (관리자 지시 10/21) - ① 넣기의 [원본 지우기 (이동)]: "원본은 휴지통으로 갑니다 - 휴지통에 평문이 남습니다" 를 보이고 [휴지통으로 (처음 값)] / [영구 삭제] 를 고름, 영구 삭제는 탐색기의 영구 삭제 길 (Shift+Delete 와 같은 확인 창을 한 번 더) ② [보기]: 그림은 메모리에서 바로 (파일로 풀지 않음, ReaderSource 를 MemoryImage 로), 동영상 · 음악만 앱 전용 폴더 (Android getCacheDir · Windows 앱 데이터의 temp) 아래 jj_vault_view_… 에 잠깐 - 닫으면 지움, 자동 잠금 · [잠그기] 때 열린 보기를 닫고 지움, 앱이 강제로 꺼져 남은 것은 다음에 켤 때 지움 (jj_hwp_ 정리처럼), Windows 에서 막 쓴 파일을 다른 프로그램이 잠깐 잡아 지우기가 실패하는 것은 몇 번 더 시도 · 시험: 영구 삭제 고르기 · 그림은 파일 0 · 동영상 보기 뒤 0 · 잠그면 보기 닫힘 · 남은 것 0 · 켤 때 정리 (시험의 보기 폴더는 파일마다 임시로 - flutter_test_config) (검토 대기)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 12:10:00 +09:00
RyuJongJin 286e6b4698 WIP 암호 보관함 1단계-2 화면 (관리자 결정 10/21): 환경 설정 > 보안 [암호 보관함] (처음 끔) · [보관함 열기] · [보관함 자동 잠금] (처음 1분). 만들기 창에 자리 · "다른 앱도 이 폴더의 암호화된 파일을 볼 수 있음 (내용 · 이름은 안 보임)" · "이 폴더를 지우면 보관함도 사라짐 · 폴더 복사 = 백업" · "잊으면 되살릴 수 없음" + 체크해야 [만들기]. 잠금 풀기는 "보관함을 여는 중… (비밀번호 확인)" (Isolate), 5번 틀리면 30초. 목록 (넣은 날 · 이름 정렬) · [보기] (임시로 풀어 앱 안 보기 화면 · 플레이어, 닫으면 지움) · [꺼내기] (고른 폴더, 같은 이름이면 (2)) · [이름 변경] · [보관함에서 지우기] (확인). 파일 탐색기 길게 누르기 [보관함에 넣기] (보관함을 켰을 때 · 이 기기의 파일만) - 넣기 창의 [원본 지우기 (이동)] 처음 끔, 켜면 다 넣은 뒤 탐색기의 지우기 (확인 · 휴지통). 가운데 버튼 [암호 보관함] (끝에). [마스터로도 열기] (처음 끔, 마스터가 있어야) - 보관함 열쇠 한 벌을 안전 저장소에, 열 때 마스터 확인 (SecretGate), 마스터를 초기화 (clearMaster) 하면 그 한 벌만 지움. 최상 초기화 창에 "보관함은 초기화되지 않음". 자리: Android Download/JJ_MKVMaker/vault · Windows 문서\JJ_MKVMaker\vault. 앱이 뒤로 간 뒤 정한 시간이 지나면 다시 잠금. 보관함 열쇠는 설정 파일 · 버전 보관본에 들어가지 않음 (안전 저장소에만, [마스터로도 열기] 일 때) · 시험 3개 (만들기 → 넣기 / 이동 → 잠금 → 틀린 비밀번호 → 열기 → 꺼내기 → 지우기, 5번 틀림 · 마스터로 열기 · 마스터 초기화, 탐색기 메뉴) (검토 대기)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 11:45:17 +09:00