FileCabinet Technical Roadmap
FileCabinet's roadmap is organized around verification, usability, legacy support, and federation.
1. Deterministic Vault (Phase 1)
Focuses on absolute trust in storage and catalog schema validation.
- Standardize default ingestion to SHA-256 for all catalog profiles.
- Add KangarooTwelve and Skein support for modern hashing alternatives.
- Implement catalog backup validation verification (validating JSON exports before overwrite).
- Add support for compressed ZIP vault package exports (
--zipcommand). - Implement incremental validation scanning (only verification of items modified since last run).
2. Archival Maturity (Phase 2)
Focuses on long-term stewardship, durability of physical media, and bit rot protection.
- Relocate Vault Health into a dedicated, isolated tab workspace.
- Maintain separate read paths for large files to avoid UI lockups.
- Introduce file redundancy checking (cross-referencing vault catalog backups on secondary drives).
- Implement active bit rot scanning schedules with low-priority background threads.
- Define physical vault replication profiles (auto-replicating vault folders to backup targets).
3. Daily-Use Workflows (Phase 3)
Focuses on sorting, curation, and catalog cleanup.
- Group hash configuration options by purpose in Settings (Recommended, Modern, Legacy, Compatibility).
- Implement multi-select bulk actions in the Vault Health workspace.
- Build a guided Duplicate Resolution wizard (comparing files with identical hashes to select what to keep or merge).
- Add custom tagging templates for typical intake categories (e.g. "Receipts", "Dependencies", "Retro ROMs").
- Build an automatic import monitor (watching a selected folder like Downloads and prompting for FileCabinet ingestion).
4. Legacy & Federation (Phase 4)
Focuses on multi-drive scaling, catalog merging, and offline coordination.
- Implement catalog merging (importing records from an external vault's catalog backup).
- Design multi-drive federation (allowing one master UI to query across disconnected drives/vaults).
- Support export catalog schemas in open, human-readable formats (e.g. YAML, CSV alongside JSON).
5. Testing & Quality Gates
Our standard for stability:
- Unit Testing: Expand test coverage for core models and ingestion paths under
FileCabinet.Tests. - CLI Testing: Build automated script integration tests to verify exit codes (e.g.,
0for OK,2for audit failure). - SonarQube Quality Gate: Keep code smells, security vulnerabilities, and bugs checked via SonarCloud integrations.