diff --git a/package.json b/package.json index 87d40501..ab4b9e66 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "dev:gateway": "pnpm --filter @multica/gateway dev", "dev:web": "pnpm --filter @multica/web dev", "dev:local": "bash scripts/dev-local.sh", + "dev:local:archive": "bash scripts/archive-dev-data.sh", "dev:all": "concurrently \"pnpm dev:gateway\" \"pnpm dev:web\"", "build": "turbo build", "build:desktop": "pnpm --filter @multica/desktop build", diff --git a/scripts/archive-dev-data.sh b/scripts/archive-dev-data.sh new file mode 100755 index 00000000..ae85360f --- /dev/null +++ b/scripts/archive-dev-data.sh @@ -0,0 +1,42 @@ +#!/usr/bin/env bash +# +# Archive and clean the dev environment data. +# +# Moves ~/.super-multica-dev and ~/Documents/Multica-dev into a +# timestamped archive directory for later debugging / analysis. +# +# Usage: +# pnpm dev:local:archive +# +# Archives are stored in: ~/.super-multica-dev-archives// + +set -euo pipefail + +TIMESTAMP=$(date +"%Y%m%d-%H%M%S") +ARCHIVE_BASE="$HOME/.super-multica-dev-archives" +ARCHIVE_DIR="$ARCHIVE_BASE/$TIMESTAMP" + +DEV_DATA="$HOME/.super-multica-dev" +DEV_WORKSPACE="$HOME/Documents/Multica-dev" + +# Check if there's anything to archive +if [ ! -d "$DEV_DATA" ] && [ ! -d "$DEV_WORKSPACE" ]; then + echo "Nothing to archive — neither $DEV_DATA nor $DEV_WORKSPACE exists." + exit 0 +fi + +mkdir -p "$ARCHIVE_DIR" + +if [ -d "$DEV_DATA" ]; then + mv "$DEV_DATA" "$ARCHIVE_DIR/data" + echo " Archived $DEV_DATA -> $ARCHIVE_DIR/data" +fi + +if [ -d "$DEV_WORKSPACE" ]; then + mv "$DEV_WORKSPACE" "$ARCHIVE_DIR/workspace" + echo " Archived $DEV_WORKSPACE -> $ARCHIVE_DIR/workspace" +fi + +echo "" +echo "Archived to: $ARCHIVE_DIR" +echo "Dev environment is now clean. Run 'pnpm dev:local' to start fresh."