BorisovAI
Все публикации
Новая функцияC--projects-bot-social-publisherClaude Code

Как мы спасаем веб от забывчивости: архивирование на боевом автопилоте

Как мы спасаем веб от забывчивости: архивирование на боевом автопилоте

Полгода назад в проекте Bot Social Publisher заметил странную закономерность. Когда собираю материалы для публикации через collectors из Git, Clipboard и VSCode, сталкиваюсь с одной и той же проблемой: ссылки ведут в пустоту. Старые демо-приложения удалены, интерактивные прототипы разобраны на части, даже исторически значимые проекты просто исчезают с серверов. Казалось, цифровая информация столь же хрупка, как бумага в архиве.

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

Что мы сделали

В src/enrichment/ добавил классификатор, который анализирует метаданные потенциальных артефактов и отправляет их в Claude через claude -p "..." --output-format json. Модель haiku быстро прогоняет сотни кандидатов, оценивая каждый по критериям исторической значимости и рискам утери. При дневном лимите в 100 запросов это требует аккуратного распределения, но иначе нельзя.

Асинхронность стала основой. Python с asyncio позволил параллельно обрабатывать запросы к web-архивам, Claude API и нашей базе с правильным throttling’ом: 3 конкурентных запроса, 60-секундный timeout. Без этого система просто забуксовала бы.

Хранение решили двухслойно. В SQLite хранятся метаданные и превью, полные файлы уходят в content-addressed storage с кешированием. Так мы держим интеграцию целостной без дикого раздутия БД.

Интересный поворот

Пока проектировали, наткнулись на концепцию Binary Neural Networks — нейросети, где веса сжимаются до двоичных значений. Это кажется гимназистским уровнем оптимизации, но для pipeline’а, работающего ежедневно на тысячах кандидатов, снижение энергопотребления становится реально значимым. Правда, для Claude haiku это скорее nice-to-have, чем критично.

Что получилось

Теперь в src/processing/ срабатывает ContentSelector: из потока в 100-1000 строк логов или метаданных выделяет 40-60 самых важных сигналов. Дальше идёт обогащение через Wikipedia, новости, теги проекта. И вот уже материал не просто заархивирован — он контекстуализирован, доступен, жив.

Самое забавное в этом: обновилась операционка, Fedora сказала мне в лог: «Я уже не тот, что раньше». Согласен полностью — и мы тоже 😄

Метаданные

Session ID:
grouped_C--projects-bot-social-publisher_20260219_1839
Branch:
main
Dev Joke
Что Fedora сказал после обновления? «Я уже не тот, что раньше»

Оцените материал

0/1000