7.1 KiB
7.1 KiB
Requirements: DocuVault v0.3
Defined: 2026-06-17 Core Value: Every user's documents — and the credentials they use to store them — are inaccessible to everyone except that user, while the platform scales horizontally and supports pluggable storage backends.
v0.3 Requirements
Connections
- CONN-01: User can connect, reconnect, test, and disconnect each supported cloud provider.
- CONN-02: User can see connection health and actionable errors for expired, revoked, or invalid credentials.
- CONN-03: Reconnecting or refreshing credentials invalidates stale provider caches without exposing credentials.
- CONN-04: User interface reflects the file operations supported by each connected provider.
Cloud File Management
- CLOUD-01: User can browse connected cloud files and folders through the shared
StorageBrowser. - CLOUD-02: User can open and preview supported cloud documents through DocuVault authorization.
- CLOUD-03: User can upload files into the currently viewed cloud folder.
- CLOUD-04: User can create folders in connected cloud storage where the provider supports it.
- CLOUD-05: User can rename cloud files and folders where the provider supports it.
- CLOUD-06: User can move files and folders within the same cloud connection where the provider supports it.
- CLOUD-07: User can delete cloud files and folders after explicit confirmation.
- CLOUD-08: User sees unsupported cloud actions disabled with a provider-specific explanation.
- CLOUD-09: Successful cloud mutations update navigation promptly and produce metadata-only audit events.
Cloud Analysis
- ANALYZE-01: User can request analysis of an individual cloud document.
- ANALYZE-02: User can request analysis of selected cloud files or folders.
- ANALYZE-03: User can request analysis of an entire cloud connection after reviewing a file-count and byte-size estimate.
- ANALYZE-04: User can monitor aggregate and per-item analysis progress through queued, downloading, extracting, classifying, indexed, and failed states.
- ANALYZE-05: User can cancel queued analysis work and retry failed cloud documents.
- ANALYZE-06: DocuVault does not repeat analysis when the provider item version or etag has not changed.
- ANALYZE-07: Analyzing a cloud document never moves, renames, or rewrites the provider-owned file.
Smart Search
- SEARCH-01: User can search local documents and analyzed cloud documents through one search experience.
- SEARCH-02: User can find documents using keywords or sentences matched against extracted text.
- SEARCH-03: User can find documents using semantic concepts or ideas rather than exact wording.
- SEARCH-04: Search results identify local/cloud source, provider, location, topics, and analysis status.
- SEARCH-05: User can filter search results by source, provider, folder, topic, and analysis status.
- SEARCH-06: Opening a cloud search result hydrates provider bytes only when preview or download requires them.
- SEARCH-07: Executing a search query never downloads cloud file bytes.
Cache and Storage Minimization
- CACHE-01: Provider-owned file bytes remain the source of truth unless the user explicitly imports a file into local DocuVault storage.
- CACHE-02: DocuVault persists cloud metadata, extracted text, topics, and semantic search data independently of cached file bytes.
- CACHE-03: DocuVault caches cloud file bytes only when required for opening, preview, or analysis.
- CACHE-04: Configurable cache limits and safe eviction minimize local storage use without interrupting active work.
- CACHE-05: Cached cloud content is isolated by user and connection and is never served without an ownership check.
Change Tracking
- SYNC-01: DocuVault records provider item identifiers, parent/location, version or etag, size, and modification time for indexed cloud items.
- SYNC-02: DocuVault marks analyzed cloud items stale when their provider version changes.
- SYNC-03: Files deleted outside DocuVault are removed from cloud navigation and excluded from search results after refresh.
- SYNC-04: Provider refresh jobs are idempotent and retry transient failures with bounded exponential backoff.
Future Requirements
Extended Cloud Mobility
- XFER-01: User can copy or move files between different cloud providers.
- IMPORT-01: User can permanently pin or import a cloud file into DocuVault-owned local storage.
- OFFLINE-01: User can mark folders for persistent offline availability.
Sync Clients
- CLIENT-01: User can install a native desktop client for operating-system file integration.
- CLIENT-02: Native clients can synchronize selected DocuVault and cloud folders.
Out of Scope
| Feature | Reason |
|---|---|
| Cross-provider move/copy | Requires transfer orchestration and conflict semantics beyond the virtual-local single-provider milestone |
| Native desktop sync client | v0.3 remains a responsive web application |
| Whole-drive offline mirror | Conflicts with the milestone's local-storage minimization goal |
| Real-time collaborative editing | Document management and discovery are the current focus |
| Automatic whole-cloud analysis without consent | Could create unexpected AI cost, provider load, and privacy impact |
| Permanent local pinning/import | Temporary bounded caching is sufficient for v0.3; explicit import remains future scope |
| Public unauthenticated links | Existing v0.x privacy boundary remains unchanged |
Traceability
| Requirement | Phase | Status |
|---|---|---|
| CONN-01 | Phase 13 | Complete |
| CONN-02 | Phase 13 | Complete |
| CONN-03 | Phase 13 | Complete |
| CONN-04 | Phase 12 | Complete |
| CLOUD-01 | Phase 12 | Complete |
| CLOUD-02 | Phase 13 | Complete |
| CLOUD-03 | Phase 13 | Complete |
| CLOUD-04 | Phase 13 | Complete |
| CLOUD-05 | Phase 13 | Complete |
| CLOUD-06 | Phase 13 | Complete |
| CLOUD-07 | Phase 13 | Complete |
| CLOUD-08 | Phase 12 | Complete |
| CLOUD-09 | Phase 13 | Complete |
| ANALYZE-01 | Phase 14 | Complete |
| ANALYZE-02 | Phase 14 | Complete |
| ANALYZE-03 | Phase 14 | Complete |
| ANALYZE-04 | Phase 14 | Complete |
| ANALYZE-05 | Phase 14 | Complete |
| ANALYZE-06 | Phase 14 | Complete |
| ANALYZE-07 | Phase 14 | Complete |
| SEARCH-01 | Phase 15 | Pending |
| SEARCH-02 | Phase 15 | Pending |
| SEARCH-03 | Phase 15 | Pending |
| SEARCH-04 | Phase 15 | Pending |
| SEARCH-05 | Phase 15 | Pending |
| SEARCH-06 | Phase 15 | Pending |
| SEARCH-07 | Phase 15 | Pending |
| CACHE-01 | Phase 12 | Complete |
| CACHE-02 | Phase 12 | Complete |
| CACHE-03 | Phase 14 | Complete |
| CACHE-04 | Phase 14 | Complete |
| CACHE-05 | Phase 14 | Complete |
| SYNC-01 | Phase 12 | Complete |
| SYNC-02 | Phase 16 | Pending |
| SYNC-03 | Phase 16 | Pending |
| SYNC-04 | Phase 16 | Pending |
Coverage:
- v0.3 requirements: 36 total
- Mapped to phases: 36
- Unmapped: 0
Requirements defined: 2026-06-17 Last updated: 2026-06-17 after roadmap creation