ADR-0001: Adopt managed storage for MVP import #1

Closed
opened 2026-10-10 22:17:11 +00:00 by keith · 1 comment
Owner

Context

The project spec left the MVP storage approach open: index-in-place versus managed storage.

Decision

MeshVault uses managed storage. Import copies files from a user-supplied source path into a
dedicated library directory (MESHVAULT_LIBRARY_DIR). The browsable folder hierarchy mirrors the
managed library directory on disk.

Consequences

  • Original source files are never modified, moved, or deleted.
  • Source directories may be read-only; only the library directory requires write access.
  • Physical folder operations are safe because MeshVault owns the managed tree.
  • Import is a copy and must account for disk space, verification, and name collisions.
  • Backup is pg_dump plus a filesystem copy of the library directory.
  • Disk usage is duplicated relative to the source collection; this is accepted for MVP.

Acceptance criteria

  • Decision recorded in this issue and mirrored in ignored notes/decisions; no tracked ADR required
  • Local specification decision cross-reference retained in ignored notes; tracking remains in issues
## Context The project spec left the MVP storage approach open: index-in-place versus managed storage. ## Decision MeshVault uses **managed storage**. Import copies files from a user-supplied source path into a dedicated library directory (`MESHVAULT_LIBRARY_DIR`). The browsable folder hierarchy mirrors the managed library directory on disk. ## Consequences - Original source files are never modified, moved, or deleted. - Source directories may be read-only; only the library directory requires write access. - Physical folder operations are safe because MeshVault owns the managed tree. - Import is a copy and must account for disk space, verification, and name collisions. - Backup is `pg_dump` plus a filesystem copy of the library directory. - Disk usage is duplicated relative to the source collection; this is accepted for MVP. ## Acceptance criteria - [ ] Decision recorded in this issue and mirrored in ignored notes/decisions; no tracked ADR required - [ ] Local specification decision cross-reference retained in ignored notes; tracking remains in issues
keith added this to the M0 - Foundations & Decisions milestone 2026-10-10 22:17:11 +00:00
keith added the type:decisionarea:backendpriority:high labels 2026-10-10 22:17:11 +00:00
Author
Owner

M0 decision verified: managed-copy semantics and read-only sources are documented in the local specification and ignored ADR copy. Local specification now cross-references issue #1. No tracked ADR required.

M0 decision verified: managed-copy semantics and read-only sources are documented in the local specification and ignored ADR copy. Local specification now cross-references issue #1. No tracked ADR required.
keith closed this issue 2026-10-10 23:10:39 +00:00
Sign in to join this conversation.