Skip to content

Rollback Guide

Rollback restores files from index outputs back to original names/paths.

v4 Behavior

For v4 (schema_version: 4) inputs, rollback is a uniform file-copy workflow:

  • resolve source bytes
  • copy to target path
  • restore timestamps

No sidecar reconstruction pipeline is required for native v4 entries.

Input Shapes

Rollback accepts:

  • Per-file sidecars (*_idx.json)
  • Directory sidecars (*_idxd.json)
  • Legacy sidecars (*_meta2.json, *_meta3.json)
  • Directories containing sidecar files

Legacy Compatibility

When loading legacy schema versions (2 or 3), rollback uses backward-compatible logic for old formats.

CLI Examples

# Restore from a directory of sidecars
shruggie-indexer rollback vault/ --target restored/

# Flat restore
shruggie-indexer rollback vault/ --flat --target restored/

# Dry run
shruggie-indexer rollback vault/ --dry-run -v

Cleanup Option (Index Side)

Legacy cleanup is triggered during indexing, not rollback:

shruggie-indexer index media/ --inplace --cleanup-legacy-sidecars

Cleanup removes old _meta*.json artifacts only when matching v4 replacements were written in the same run and directory scope.