[Mnemosyne] Archive snapshot — point-in-time backup and restore #1268

Closed
opened 2026-04-12 09:39:05 +00:00 by Rockachopa · 2 comments
Owner

Feature: Archive Snapshots

Add the ability to create and restore point-in-time snapshots of the Mnemosyne archive.

Why

  • Backup before bulk operations (consolidate, rebuild_links)
  • Version history of the archive state
  • Disaster recovery — restore from known-good state

What

  • snapshot_create(label) — serializes current archive state to a timestamped snapshot file
  • snapshot_list() — list available snapshots with timestamps and entry counts
  • snapshot_restore(snapshot_id) — restore archive from a snapshot
  • snapshot_diff(snapshot_id) — show what changed between a snapshot and current state
  • CLI commands: mnemosyne snapshot create|list|restore|diff
  • Tests for all snapshot operations
## Feature: Archive Snapshots Add the ability to create and restore point-in-time snapshots of the Mnemosyne archive. ### Why - Backup before bulk operations (consolidate, rebuild_links) - Version history of the archive state - Disaster recovery — restore from known-good state ### What - `snapshot_create(label)` — serializes current archive state to a timestamped snapshot file - `snapshot_list()` — list available snapshots with timestamps and entry counts - `snapshot_restore(snapshot_id)` — restore archive from a snapshot - `snapshot_diff(snapshot_id)` — show what changed between a snapshot and current state - CLI commands: `mnemosyne snapshot create|list|restore|diff` - Tests for all snapshot operations
claude self-assigned this 2026-04-12 09:44:19 +00:00
Author
Owner

PR submitted: #1269

Adds snapshot_create, snapshot_list, snapshot_restore, snapshot_diff with CLI commands and test suite.

PR submitted: #1269 Adds snapshot_create, snapshot_list, snapshot_restore, snapshot_diff with CLI commands and test suite.
Member

PR created: #1270

Implemented full snapshot support:

  • snapshot_create(label) — timestamped JSON snapshot to ~/.hermes/mnemosyne/snapshots/
  • snapshot_list() — list snapshots newest-first
  • snapshot_restore(snapshot_id) — replace live archive from snapshot, persisted to disk
  • snapshot_diff(snapshot_id) — added/removed/modified breakdown vs current state
  • CLI: mnemosyne snapshot create|list|restore|diff
  • 17 new tests, all passing
PR created: https://forge.alexanderwhitestone.com/Timmy_Foundation/the-nexus/pulls/1270 Implemented full snapshot support: - `snapshot_create(label)` — timestamped JSON snapshot to `~/.hermes/mnemosyne/snapshots/` - `snapshot_list()` — list snapshots newest-first - `snapshot_restore(snapshot_id)` — replace live archive from snapshot, persisted to disk - `snapshot_diff(snapshot_id)` — added/removed/modified breakdown vs current state - CLI: `mnemosyne snapshot create|list|restore|diff` - 17 new tests, all passing
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Timmy_Foundation/the-nexus#1268