[
  {
    "category": "low_risk_api_path_moves",
    "next_action": "dry-run and apply with guarded Dropbox API move wrapper only after write permissions are confirmed",
    "rows": "9",
    "safety": "approval_required"
  },
  {
    "category": "review_only_api_path_moves",
    "next_action": "review cross-root/legacy source and target before any Dropbox API move",
    "rows": "1",
    "safety": "manual_review_required"
  },
  {
    "category": "same_root_content_drift_local_only",
    "next_action": "compare with same-root API-only rows; hashes differ, so this is not an automatic rename",
    "rows": "418",
    "safety": "manual_review_required"
  },
  {
    "category": "same_root_content_drift_api_only",
    "next_action": "compare with same-root local-only rows; decide whether API or Windows Dropbox is authoritative",
    "rows": "211",
    "safety": "manual_review_required"
  },
  {
    "category": "local_only_without_api_root_counterpart",
    "next_action": "review whether Windows Dropbox local files should be uploaded/synced to the Dropbox API account",
    "rows": "403",
    "safety": "upload_or_sync_review"
  },
  {
    "category": "api_only_without_local_root_counterpart",
    "next_action": "review whether API-only files should be pulled into Windows Dropbox or archived remotely",
    "rows": "32",
    "safety": "pull_or_archive_review"
  },
  {
    "category": "suppressed_duplicate_manifest_paths",
    "next_action": "handle through source cleanup review; same hash already exists at another local manifest path",
    "rows": "42",
    "safety": "duplicate_review"
  },
  {
    "category": "large_unhashed_local_rows",
    "next_action": "raise hash size cap or inspect manually before classifying as unmatched content",
    "rows": "9",
    "safety": "hash_review"
  }
]
