Кейс / Облако как управляемый архив

Как Codex разобрал Яндекс.Диск без хака, скачивания и опасной уборки

Облако за годы легко превращается из удобного хранилища в платную археологию: старые папки, дубли, рабочие копии, медиаархивы и материалы, которые уже невозможно отличить от мусора без спокойной инвентаризации.

В этом кейсе Codex не получал пароль и не парсил веб-интерфейс. Доступ был выдан через официальное приложение Яндекса и OAuth, первая фаза была строго read-only, а все опасные действия шли через карантин, manifest и отдельное подтверждение.

Доступ

Официальный API

Отдельное приложение Яндекса, OAuth-токен и локальное хранение вне репозитория, без передачи пароля аккаунта.

Безопасность

Read-only сначала

Сначала только metadata: путь, тип, размер, md5, MIME-type, дата изменения и верхняя папка.

Результат

~180 ГБ

Столько освободил подтверждённый Level A delete-pass по exact-дублям после карантина и проверки.

Исходная задача

Нужно было понять, за что я плачу: за нужные файлы или за цифровой осадок

Обычная ручная чистка облака быстро превращается в усталость: открыл папку, увидел хаос, закрыл и купил ещё места. Здесь задача была другой: не гадать, а построить проверяемую карту Яндекс.Диска и понять, что можно вынести, что нельзя трогать и что требует ручного решения.

Хаос нельзя чинить вслепую

В облаке были старые проекты, видеоархивы, музыкальные релизы, промоматериалы, загрузки, рабочие копии и папки с историей. Удалять по ощущению было опасно.

Цена вопроса была не только в гигабайтах

Яндекс подталкивал к оплате дополнительного места, но главный вопрос был шире: какая структура хранения мне действительно нужна и что должно переехать в другую систему.

Доступ

Правильная схема началась с официального приложения Яндекса

Первый путь через уже существующий серверный контур помог быстро проверить, что задача решаема. Но для повторяемой услуги и спокойной безопасности нужен был прямой, объяснимый и отзывной доступ.

OAuth вместо пароля

Токен — это отдельный ключ для конкретного приложения. Его можно отозвать, выдать заново и хранить отдельно от проекта.

Локальное хранение токена

Доступ лежит вне репозитория, не печатается в чат и не попадает в отчёты. Все рабочие артефакты проходят проверку на секреты.

Прямой REST API

Codex ходит в Yandex Disk REST API напрямую. Это лучше, чем парсить браузер или держать лишний сервер как мост доступа.

Метод

Первая фаза была metadata-only: посмотреть всё, но ничего не скачать и не сдвинуть

Самая частая ошибка в уборке данных — слишком рано начать действовать. Поэтому первая фаза намеренно исключала скачивание содержимого, перемещение, удаление, публикацию файлов и очистку корзины.

  1. Обойти весь диск в режиме metadata-only и собрать карту верхних папок.
  2. Найти exact-дубли по паре `md5 + size`, не анализируя содержимое файлов.
  3. Разделить очевидные дубли, спорные зоны и места, где автоматике нельзя доверять смысловой выбор.
  4. Собрать manifest, который можно проверить до любого действия с файлами.
Яндекс.Диск как управляемый архив: официальный доступ, read-only аудит, карантин и безопасная очистка

Карантин

Удаление заменили спокойным промежуточным слоем

Удалять сразу страшно и неправильно: можно потерять единственную полезную копию. Карантин меняет модель работы: файл больше не мешает активной структуре, но его ещё можно вернуть и проверить.

_Quarantine вместо permanent delete

Подтверждённые дубли, старые рабочие копии и ручные кандидаты сначала уходили в отдельную зону, а не уничтожались.

Разные классы внутри карантина

Карантин не стал корзиной, которую можно удалить целиком. Внутри оставались разные типы объектов с разным уровнем уверенности.

Delete-readiness manifest

Перед финальным удалением был собран отдельный список готовности: что является точным дублем, что спорно, а что нельзя трогать без человека.

Корзина не очищалась

Даже после удаления подтверждённых дублей оставался дополнительный rollback-слой через корзину Яндекс.Диска.

Что нашли

Главная находка — не «много мусора», а карта разных режимов хранения

В многолетнем облаке редко бывает простой список лишнего. Там смешиваются архив, рабочие зоны, публикационные материалы, клиентские документы, личные файлы и случайные загрузки.

Точные дубли

Если два файла совпадают по `md5 + size`, их содержимое одинаковое. Но удалять можно только после решения, какая копия остаётся канонической.

Смысловые дубли

Похожие файлы в релизном архиве, рабочем проекте и медиа-папке — это уже не технический дубль, а вопрос политики хранения.

Старые входящие папки

`Загрузки` и похожие зоны разгрузили, но оставили как стандартный входящий слой, а не как вечный склад.

Домены верхнего уровня

Появились понятные крупные области: `_Music`, `_Projects`, `_Media`, `_Archive`, `Uplifto`, `Фабрика контента` и другие.

Manual zones

Часть зон осталась на ручной выбор: агент может показать риск, но не должен принимать смысловое решение за владельца.

План миграции

Очистка стала подготовкой к архитектуре хранения: что держать в Яндекс.Диске, что переносить, что архивировать и что удалять.

Результат

Личное облако стало управляемым контуром, а не складом с тревогой

На выходе появилась не просто более чистая папка, а повторяемый порядок работы с облаком: официальный доступ, read-only inventory, карта, exact-дубли, карантин, manual zones и отдельное подтверждение на необратимые шаги.

Около 180 ГБ подтверждённых дублей

Это был не широкий снос всего подряд, а Level A duplicate delete-pass по объектам, которые прошли через quarantine pipeline и правила проверки.

Активная структура стала понятнее

Лишнее ушло из рабочих папок, а оставшиеся зоны получили более ясный смысл: входящие, архив, проекты, медиа и материалы для ручного выбора.

Появился формат услуги

Такой процесс можно повторять для людей и команд с многолетними облачными архивами: безопасно, объяснимо и без доступа к содержимому там, где он не нужен.

Следующий шаг — миграция

После аудита можно спокойно выбирать архитектуру хранения: Яндекс.Диск, Google Drive, локальный NAS, холодный архив или удаление.

Кому это подходит

Такой подход нужен там, где облако давно стало частью инфраструктуры

Это не только личная уборка. Та же проблема возникает у продюсеров, команд, предпринимателей и проектов, где облако годами собирало документы, видео, музыку, презентации, клиентские файлы и рабочие версии.

Личным архивам с историей

Когда в облаке уже невозможно быстро понять, что оригинал, что копия, что архив, а что временный мусор.

Медиа- и проектным командам

Когда видео, релизы, промоматериалы и документы живут рядом, а ошибка удаления может стоить дороже лишнего тарифа.

Перед переездом в другое хранилище

Когда миграцию нельзя начинать с переноса хаоса: сначала нужна карта, правила и список того, что вообще стоит переносить.

Источник

Исходная статья с полным разбором

В статье подробно описано, как Codex подключался к Яндекс.Диску через официальный доступ, почему первая фаза была read-only и как карантин превратил очистку в управляемый процесс.