···4455The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
6677-## [Unreleased]
77+## 0.1.0-alpha - 2026-03-13
8899### Security
1010- Fix ContentKey Debug impl to redact secret bytes [#49](https://issues.opake.app/issues/49.html)
···55import { CaretDownIcon, CaretUpIcon, FileTextIcon } from "@phosphor-icons/react";
66import { MarkdownPreview } from "./MarkdownPreview";
77import { decryptDocumentBlob } from "@/lib/preview";
88-import { useDocumentsStore } from "@/stores/documents";
88+import { useDocumentsStore } from "@/stores/documents/store";
99import { useAuthStore } from "@/stores/auth";
1010import { base64ToUint8Array } from "@/lib/encoding";
1111import type { PdsRecord, DocumentRecord, DocumentMetadata } from "@/lib/pdsTypes";
+1-1
web/src/components/cabinet/MoveDialog.tsx
···33import { forwardRef, useCallback, useImperativeHandle, useRef, useState } from "react";
44import { ArrowBendUpRightIcon, FolderIcon, HouseIcon } from "@phosphor-icons/react";
55import { MODAL_TRANSITION_MS } from "@/components/ConfirmDialog";
66-import { useDocumentsStore } from "@/stores/documents";
66+import { useDocumentsStore } from "@/stores/documents/store";
77import type { DirectoryTreeSnapshot } from "@/lib/pdsTypes";
8899// ---------------------------------------------------------------------------
+1-1
web/src/components/cabinet/PanelContent.tsx
···1717import { MoveDialog, type MoveDialogHandle } from "./MoveDialog";
1818import { RenameDialog, type RenameDialogHandle } from "./RenameDialog";
1919import { ShareDialog, type ShareDialogHandle } from "./ShareDialog";
2020-import { useDocumentsStore } from "@/stores/documents";
2020+import { useDocumentsStore } from "@/stores/documents/store";
2121import { getCryptoWorker } from "@/lib/worker";
2222import { isPreviewable, type FileItem } from "./types";
2323
+1-1
web/src/components/cabinet/ShareDialog.tsx
···77import { base64ToUint8Array } from "@/lib/encoding";
88import { authenticatedXrpc } from "@/lib/api";
99import { toastSuccess, toastError } from "@/stores/toast";
1010-import { useDocumentsStore } from "@/stores/documents";
1010+import { useDocumentsStore } from "@/stores/documents/store";
1111import type { DocumentRecord, Encryption } from "@/lib/pdsTypes";
1212import type { OAuthSession } from "@/lib/storageTypes";
1313import { MODAL_TRANSITION_MS } from "@/components/ConfirmDialog";
+1-1
web/src/lib/preview.ts
···44import { base64ToUint8Array } from "@/lib/encoding";
55import { getCryptoWorker } from "@/lib/worker";
66import { unwrapDirectContentKey, decryptEnvelope } from "@/stores/documents/decrypt";
77-import { useDocumentsStore } from "@/stores/documents";
77+import { useDocumentsStore } from "@/stores/documents/store";
88import { useAuthStore } from "@/stores/auth";
99import { IndexedDbStorage } from "@/lib/indexeddbStorage";
1010import type { PdsRecord, DocumentRecord, DocumentMetadata } from "@/lib/pdsTypes";
+1-1
web/src/routes/cabinet/files/$.tsx
···44import { PanelContent } from "@/components/cabinet/PanelContent";
55import { evictPreviewCache } from "@/components/cabinet/FilePreview";
66import { evictReadmeCache } from "@/components/cabinet/DirectoryReadme";
77-import { useDocumentsStore } from "@/stores/documents";
77+import { useDocumentsStore } from "@/stores/documents/store";
88import { useAuthStore } from "@/stores/auth";
99import { directoryUri, documentUri, rkeyFromUri } from "@/lib/atUri";
1010import type { FileItem } from "@/components/cabinet/types";
+1-1
web/src/routes/cabinet/files/index.tsx
···33import { useShallow } from "zustand/react/shallow";
44import { PanelContent } from "@/components/cabinet/PanelContent";
55import { evictReadmeCache } from "@/components/cabinet/DirectoryReadme";
66-import { useDocumentsStore } from "@/stores/documents";
66+import { useDocumentsStore } from "@/stores/documents/store";
77import { rkeyFromUri } from "@/lib/atUri";
88import type { FileItem } from "@/components/cabinet/types";
99
+1-1
web/src/routes/cabinet/files/route.tsx
···2424import { decryptOwnDocument } from "@/lib/preview";
2525import { TagFilterBar } from "@/components/cabinet/TagFilterBar";
2626import { NewFolderDialog, type NewFolderDialogHandle } from "@/components/cabinet/NewFolderDialog";
2727-import { useDocumentsStore } from "@/stores/documents";
2727+import { useDocumentsStore } from "@/stores/documents/store";
2828import { useAuthStore } from "@/stores/auth";
2929import { useAppStore } from "@/stores/app";
3030import { directoryUri, documentUri } from "@/lib/atUri";
+1-1
web/src/routes/cabinet/route.tsx
···33import { Sidebar } from "@/components/cabinet/Sidebar";
44import { TopBar } from "@/components/cabinet/TopBar";
55import { OpakeLogo } from "@/components/OpakeLogo";
66-import { useDocumentsStore } from "@/stores/documents";
66+import { useDocumentsStore } from "@/stores/documents/store";
77import { useAuthStore } from "@/stores/auth";
88import { useAppStore } from "@/stores/app";
99
+1-1
web/src/routes/cabinet/shared.tsx
···2222import type { ConfirmDialogHandle } from "@/components/ConfirmDialog";
2323import { isPreviewable } from "@/components/cabinet/types";
2424import { useAuthStore } from "@/stores/auth";
2525-import { useDocumentsStore } from "@/stores/documents";
2525+import { useDocumentsStore } from "@/stores/documents/store";
2626import { decryptDocumentRecord } from "@/stores/documents/decrypt";
2727import { IndexedDbStorage } from "@/lib/indexeddbStorage";
2828import { truncateDid, formatRelativeDate, mimeTypeToFileType, formatFileSize } from "@/lib/format";
-1
web/src/stores/documents/index.ts
···11-export { useDocumentsStore } from "./store";