Files
Marlin/roadmap.md
thePR0M3TH3AN 8927b6fb6e update
2025-05-15 15:51:09 -04:00

4.5 KiB
Raw Blame History

Roadmap

Phase Focus Why now? Key deliverables
1. 2025-Q2 “Bedrock” Migrations + CI baseline Weve landed versioned migrations and removed runtime column hacks ensure it stays solid. • CI job runs cargo test + cargo sqlx migrate run --dry-run
2. 2025-Q2 Leaner FTS maintenance Per-row triggers dont scale past ~100 k files. • Replace triggers with “dirty” flag + periodic rebuild
• Benchmark on 100 k files
2.1 2025-Q2 (adjunct) Dirty-row FTS + CI Prep for both scale and live-watcher—avoid full rebuilds on every change. scan --dirty reindexes only files whose SHA-256 hash has changed
2.2 2025-Q2 Live file watching Offer a true “working-dir” mode—auto-scan on FS events, zero manual rescans. • New marlin watch [dir] subcommand using notify crate
• Incremental scans on create/delete/modify/rename events
2.3 2025-Q2 Self-pruning backups Instant protection and bounded storage—no manual snapshot cleanup. marlin backup --prune <N> flag
• Hook post-scan (when rows change) to auto-prune to latest 10
• Daily cron/automation to keep last 7
3. 2025-Q3 Content hashing & dedup Detect duplicates, enable future integrity checks. • SHA-256 in files.hash
scan --rehash option
4. 2025-Q3 Tag aliases / canonicals Control tag sprawl before users accumulate thousands. canonical_id enforcement
• `tag alias add
5. 2025-Q4 Search DSL v2 Power users want grouping, boolean ops, quoted phrases. • Replace ad-hoc parser with nom grammar
• Unit-tested examples
6. 2025-Q4 Attribute templates Structured metadata unlocks real workflows. templates + template_fields tables
• Validation on attr set
7. 2026-Q1 Dolphin read-only plugin Browse tags/attrs inside the default file manager. • Qt sidebar showing metadata
8. 2026-Q1 Full edit UI After read-only proves stable, add editing. • Tag editor widget, attribute dialog
9. 2026-Q2 Multi-device sync Final frontier: optional sync/replication layer. • Choose between rqlite / Litestream / bespoke
• Read-only mode for network mounts

Current sprint (ends 2025-06-01)

  1. FTS rebuild prototype dirtied-rows approach, measure on 50 k files.
  2. backup --prune to keep only N most recent snapshots.
  3. Integration tests for tag/attr workflows on Windows via GitHub Actions.

Development principles

  • Local-first every feature must work offline.
  • Zero manual migrations shipping code is the migration.
  • Instrumentation first every new command logs trace spans and timings.