JJ_MKVMaker/lib
RyuJongJin 39d81f1a73 M0: 안전 저장소를 못 읽으면 마스터 잠금을 '알 수 없음' 으로 - 문을 열지 않고 마스터를 덮어쓰지 않는다
사용자가 보게 될 동작: 기기 안전 저장소를 읽지 못하면 저장된 비밀번호를 쓰는 기능이 열리지 않고, 환경 설정 > 보안에
까닭과 [다시 읽기] 가 보인다. 다시 읽히면 평소대로 마스터를 묻는다.

- 예전: 읽지 못하면 빈 것으로 보아 마스터가 없는 것처럼 문 (SecretGate) 이 열렸고, 그 상태에서 마스터를 정하면 진짜 값을 덮어쓸 수 있었다
- MasterLock.storeUnreadable: load 가 예외 대신 표시 (앱은 켜짐). ensure 는 한 번 다시 읽고 못 읽으면 false.
  setMaster · setSuper · clearMaster · clearSuper · setAsk 는 MasterStoreUnreadable. reload()
- 보안 설정: 까닭 · [다시 읽기] (정하기 · 바꾸기 · 끄기 숨김). 보관함 [마스터로도 열기] 는 까닭을 알림
- 비밀번호 다시 저장 [다시 시도] 가 되면 마스터 잠금도 다시 읽음. settings_store 의 TODO(M0) 지움
- 약속 시험 master_store_unreadable_test 4 (읽기가 실제로 실패하는 저장소를 시험 파일 안에 - lib 흉내 플래그 쓰지 않음)
- 확인: 단위 1467 ×2 · 통합 6/6 ×2 · 캡처 214장 base10 과 같음

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 19:26:02 +09:00
..
app M0: 안전 저장소를 못 읽으면 마스터 잠금을 '알 수 없음' 으로 - 문을 열지 않고 마스터를 덮어쓰지 않는다 2026-10-23 19:26:02 +09:00
core 목록에서 두 번 누르면 도로 나오던 것 고침 · TC Enter = 열기 2026-10-23 18:48:45 +09:00
l10n 끝 알림 문장 잇기: 일본어 · 중국어는 。 뒤에 빈칸 없이 (joinSentences) · 262 캡처 시험 (관리자 지시 10/21) 2026-10-21 11:37:53 +09:00
platform 설정 A 분야 9: 실행 · 종료 · 업데이트 (RunSettings) - 키 11 · backgroundRun 함께 2026-10-22 23:28:09 +09:00
services 설정 A: MKV · 자막 분야 (MkvSettings) - 저장 위치 · 이동 버튼 · 인코딩 · AI 자막 · OpenSubtitles 키를 분야로 2026-10-23 00:11:13 +09:00
startup main.dart 나누기 (939 → 236): 시작 단계를 lib/startup/ 모듈로, 앱 위젯은 ui/app_root 2026-10-23 02:58:19 +09:00
ui M0: 안전 저장소를 못 읽으면 마스터 잠금을 '알 수 없음' 으로 - 문을 열지 않고 마스터를 덮어쓰지 않는다 2026-10-23 19:26:02 +09:00
main.dart main.dart 나누기 (939 → 236): 시작 단계를 lib/startup/ 모듈로, 앱 위젯은 ui/app_root 2026-10-23 02:58:19 +09:00