DongHyeonka and Claude Opus 5
217c1dd52a
refactor: move the OPFS journal onto the IndexedDB kernel, and make the fake
...
IndexedDB enforce unique indexes
저널은 이제 트랜잭션 안 요청 28곳이 각자 오류를 보고한다. 코드 줄은
1744 -> 1724로 줄었고 전체 줄이 1817 -> 1881로 는 것은 주석이다. 이행 전
이 파일의 주석은 6줄이었다.
사양의 OP-1 전제는 틀렸다. "중복 put의 답이 달라진다"고 봤으나 이행 전후
모두 CONFLICT / retryable:false / recovery:NONE이다. 요청 오류를 아무도
처리하지 않으면 스토어가 바로 그 에러로 abort해서 transaction.error가
request.error와 같기 때문이다. 바뀐 것은 답이 아니라 출처다.
그 과정에서 가짜 IndexedDB가 unique 인덱스를 전혀 강제하지 않는 것을
찾았다. 보강 전에는 중복 begin이 ok:true로 성공했다 — 브라우저가 거부할
상태를 테스트가 조용히 허용하고 있었다. put/add에 검사를 넣었다.
unique:true 인덱스는 레포 전체에서 이 저널의 2개뿐이라 반경이 좁고, 전체
test:unit으로 파급이 없음을 확인했다.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-09-16 19:51:09 +09:00
..
2026-08-15 17:23:10 +09:00
2026-08-15 12:32:37 +09:00
2026-08-15 01:25:48 +09:00
2026-08-15 01:24:53 +09:00
2026-07-30 15:58:20 +09:00
2026-08-15 20:45:19 +09:00
2026-07-30 15:58:20 +09:00
2026-07-30 15:58:20 +09:00
2026-08-02 08:43:44 +09:00
2026-08-13 23:46:03 +09:00
2026-07-30 15:58:20 +09:00
2026-08-13 23:23:46 +09:00
2026-07-30 15:58:20 +09:00
2026-07-30 15:58:20 +09:00
2026-07-30 15:58:20 +09:00
2026-07-30 15:58:20 +09:00
2026-07-30 15:58:20 +09:00
2026-08-13 16:02:21 +09:00
2026-07-30 15:58:20 +09:00
2026-08-15 20:45:19 +09:00
2026-07-30 15:58:20 +09:00
2026-08-15 21:12:06 +09:00
2026-08-01 19:39:59 +09:00
2026-08-15 17:23:10 +09:00
2026-07-30 15:58:20 +09:00
2026-07-30 15:58:20 +09:00
2026-08-13 23:35:48 +09:00
2026-08-15 01:25:12 +09:00
2026-08-13 23:35:48 +09:00
2026-08-15 01:25:12 +09:00
2026-08-15 16:38:19 +09:00
2026-07-30 15:58:20 +09:00
2026-07-30 15:58:20 +09:00
2026-07-30 15:58:20 +09:00
2026-08-01 23:59:11 +09:00
2026-07-30 15:58:20 +09:00
2026-08-14 16:08:32 +09:00
2026-07-30 15:58:20 +09:00
2026-08-15 16:38:19 +09:00
2026-08-02 11:36:27 +09:00
2026-07-30 15:58:20 +09:00
2026-08-15 01:24:53 +09:00
2026-09-16 19:11:35 +09:00
2026-09-16 19:35:22 +09:00
2026-09-16 19:51:09 +09:00
2026-08-01 19:39:59 +09:00
2026-09-16 19:11:35 +09:00
2026-08-02 04:46:33 +09:00
2026-08-14 13:50:44 +09:00
2026-08-02 07:11:33 +09:00
2026-07-30 15:58:20 +09:00
2026-08-01 23:17:09 +09:00
2026-08-15 01:25:26 +09:00
2026-08-15 01:25:26 +09:00
2026-08-02 03:15:22 +09:00
2026-08-01 19:39:59 +09:00
2026-07-30 15:58:20 +09:00
2026-08-15 16:49:48 +09:00
2026-08-15 20:45:19 +09:00
2026-07-30 15:58:20 +09:00
2026-08-15 21:12:06 +09:00
2026-08-13 16:02:21 +09:00
2026-08-15 01:25:26 +09:00
2026-07-30 15:58:20 +09:00
2026-08-01 23:59:11 +09:00
2026-07-30 15:58:20 +09:00
2026-08-01 19:39:59 +09:00
2026-07-30 15:58:20 +09:00
2026-08-02 00:28:17 +09:00
2026-08-02 05:26:36 +09:00
2026-08-15 20:45:19 +09:00
2026-08-15 21:30:54 +09:00
2026-08-02 05:26:36 +09:00
2026-07-30 15:58:20 +09:00
2026-08-01 19:39:59 +09:00
2026-09-16 19:24:09 +09:00
2026-08-15 01:24:53 +09:00
2026-08-15 01:26:01 +09:00
2026-08-15 01:26:01 +09:00
2026-07-30 15:58:20 +09:00
2026-08-02 09:10:35 +09:00
2026-08-15 21:12:06 +09:00
2026-07-30 15:58:20 +09:00
2026-07-30 15:58:20 +09:00
2026-08-15 20:45:19 +09:00
2026-08-01 19:39:59 +09:00
2026-08-15 21:12:06 +09:00
2026-08-01 19:39:59 +09:00
2026-08-14 00:25:11 +09:00
2026-08-15 01:26:14 +09:00
2026-08-15 01:26:14 +09:00
2026-07-30 15:58:20 +09:00
2026-07-30 15:58:20 +09:00
2026-08-15 19:52:33 +09:00
2026-07-30 15:58:20 +09:00
2026-08-01 23:17:09 +09:00
2026-08-15 19:34:28 +09:00
2026-08-13 23:05:43 +09:00
2026-07-26 13:41:23 +09:00
2026-07-30 15:58:20 +09:00
2026-08-02 10:12:34 +09:00
2026-08-13 16:02:21 +09:00
2026-07-30 15:58:20 +09:00
2026-08-14 00:34:09 +09:00
2026-07-30 15:58:20 +09:00
2026-08-01 19:39:59 +09:00
2026-07-30 15:58:20 +09:00
2026-08-15 01:26:14 +09:00