{
  "schema": 1,
  "version": "20261010_085531",
  "created_at": "2026-10-10T07:55:32Z",
  "base_url": "https://apps.spandaman.co.uk/SPANDAMAN_AIO/",
  "components": {
    "core": {
      "title": "core tools",
      "version": "20261010_085531",
      "url": "core.zip",
      "mode": "replace",
      "bytes": 54695358,
      "unpacked_bytes": 58161829,
      "files": 157,
      "sha256": "1c5cac903c073e18912f8951df8c457d6616b0c0a6c6a06b0cfbbf19b72ce440"
    },
    "media-runtime": {
      "title": "media runtime",
      "version": "20261010_085531",
      "url": "media-runtime.zip",
      "mode": "replace",
      "bytes": 333623754,
      "unpacked_bytes": 914416644,
      "files": 14406,
      "sha256": "68b7df83813d56369af8dd71bf4c74625098d60f49dcc4c7cf4b342b86c85a80"
    },
    "shared-data": {
      "title": "shared saves, caches and playlists",
      "version": "20261010_085531",
      "url": "shared-data.zip",
      "mode": "merge",
      "bytes": 1903900,
      "unpacked_bytes": 19465551,
      "files": 16,
      "sha256": "fbe9b5a9f783153eacc512b61a2d5a9c92b99505e64445b0bc3a29b3139b8d7d"
    }
  },
  "tool_components": {
    "onscreen_adult_az_playback_test.py": [
      "media-runtime"
    ],
    "onscreen_random_split_playback_test.py": [
      "media-runtime"
    ],
    "onscreen_series_focus_test.py": [
      "media-runtime"
    ],
    "onscreen_split_playback_gui.py": [
      "media-runtime"
    ],
    "onscreen_split_playback_test.py": [
      "media-runtime"
    ],
    "probe_split_streams.py": [
      "media-runtime"
    ],
    "probe_vod_series_public_playback.py": [
      "media-runtime"
    ],
    "refresh_existing_vod_cache_ttl.py": [
      "media-runtime"
    ],
    "refresh_tmdbseries_vidrock_cache.py": [
      "media-runtime"
    ],
    "spandaman_adult_replacement_finder.py": [
      "media-runtime"
    ],
    "spandaman_adult_replacement_finder_gui.py": [
      "media-runtime"
    ],
    "spandaman_build_upload_series_cache.py": [
      "media-runtime"
    ],
    "spandaman_build_upload_vod_cache.py": [
      "media-runtime"
    ],
    "spandaman_onscreen_vod_multi_test.py": [
      "media-runtime"
    ],
    "spandaman_ordered_split_verify.py": [
      "media-runtime"
    ],
    "spandaman_restore_poisoned_vod_cache.py": [
      "media-runtime"
    ],
    "spandaman_series_auto_update_gui.py": [
      "media-runtime"
    ],
    "spandaman_series_hosted_repair.py": [
      "media-runtime"
    ],
    "spandaman_server_playlist_player.py": [
      "media-runtime"
    ],
    "spandaman_verify_imported_adult.py": [
      "media-runtime"
    ],
    "spandaman_vod_auto_update_gui.py": [
      "media-runtime"
    ],
    "spandaman_vod_hosted_repair.py": [
      "media-runtime"
    ],
    "spandaman_vod_import_working_playlist.py": [
      "media-runtime"
    ]
  },
  "shared_data": {
    "component": "shared-data",
    "policy": "merge-newer",
    "included_paths": [
      "working/authorized_series_cache_input_manual.json",
      "working/spandaman_todo_master.json",
      "working/tmdbvod_recent_resolver_failures.json",
      "working/tmdb_cache_downloads/current/download_manifest.json",
      "working/tmdb_cache_downloads/current/TMDBVOD/cache.json",
      "working/tmdb_cache_downloads/current/TMDBVOD/playlist.m3u",
      "working/tmdb_cache_downloads/current/TMDBVOD/manifest.json",
      "working/tmdb_cache_downloads/current/TMDBSERIES/cache.json",
      "working/tmdb_cache_downloads/current/TMDBSERIES/playlist.m3u",
      "working/tmdb_cache_downloads/current/TMDBSERIES/manifest.json",
      "working/tmdb_cache_downloads/current/TMDBLIVE/cache.json",
      "working/tmdb_cache_downloads/current/TMDBLIVE/playlist.m3u",
      "working/tmdb_cache_downloads/current/TMDBLIVE/manifest.json",
      "working/tmdb_cache_downloads/current/TMDBADULT/cache.json",
      "working/tmdb_cache_downloads/current/TMDBADULT/playlist.m3u",
      "working/tmdb_cache_downloads/current/TMDBADULT/manifest.json"
    ],
    "shared_folder": "shared/**"
  }
}