IT's Кузня
6 subscribers
8 photos
2 videos
1 link
О том, как и куда развивается горсть пет-проектов
Download Telegram
🤖 А еще прикрутил бота

Теперь он будет учиться за меня писать сообщения со всякими релиз-нотами. Надеюсь, справится не хуже меня 😅
😁1
Опа, а вот и озон подъехал)

400+ методов апи, завернутые в исполнители, снабженные подробным хелпом по каждому.

Есть в чем покопаться)

#flowforge@rev:734a52b
🔥2😁1
Вообще хотел выкатить это ещё в субботу — с ощущением, что основную часть закрыл и можно выдыхать. Не вышло 🥲

Из того, что сделал:

— Наблюдаемость довёл до рабочего состояния: логи, графики, алерты. Теперь это не «кажется, что всё ок», а нормальная картина — что происходит, где падает и почему. Падает, да. Потому что)

— UI докрутил: библиотеку исполнителей разложил по иерархии. Вместо одного списка на 600+ — сначала категории, потом уже конкретный выбор. Всего-то 400+ у озона - разложил так разложил.

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

— Из невидимого: вынес пресеты в отдельный модуль — теперь можно нормально думать про расширение. Снаружи почти ничего не поменялось.
(P.S. сервисов уже 22, а я всё ещё считаю это пет-проектом 😁)

— Часть вещей всё ещё держу под ручным контролем — осознанно, пока не устраивает стабильность отдельных кусков.

А дальше — собственно, причина сдвига.

Локально всё было собрано в zero-trust модели: каждый сервис имеет доступ только туда, куда нужно. Это хорошо работает, пока система компактная.

В проде, через coolify, та же идея превращается в более жёсткую конфигурацию: изолированные docker-сети, минимальные пересечения. Архитектурно — всё как задумывалось. Практически — десятки сетей, окружений и связей, которые нужно держать в голове. Любое изменение тянет за собой несколько слоёв.

В итоге добавление пары контейнеров под логи и мониторинг вылилось в:

— переписывание CI
— разгребание реестра образов
— перенастройку coolify
— доработку сетей внутри контейнеров

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

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

Однако, результат все равно положительный. Система пережила миграцию БД, деплой новых сервисов, расширение связей и новые развертывания. Не развалилась (почти), поднялась обратно (точно) и в целом стала крепче.

#flowforge@rev:6257475
🔥32
Однажды я перестану выкладывать сообщения о том как "чуть-чуть доработал систему на выходных" глубокой ночью на понедельник. Но не сегодня)

Продолжаю продолжать разного рода развлечения по теме "как сделать исполняемое исполнимым, а перевод желания в процесс - приятным". Ну или хотя бы менее отталкивающим)

Из того, что помаленьку начало получаться:

- отработал схему актуализации апи - 20 нейросетевых агентов разгребают 200+ исполнителей за несколько минут, так что теперь в WB только свежатина.

- причесал остальную библиотеку - конечно не 200 исполнителей, но ту сотню, что есть - буду стараться держать во вменяемом состоянии. А то получится как было раньше - в базе исполнитель есть, его можно выбрать, на холст положить и даже сохранить. Но вот исполняться ему нечем. Так и висит вечно в работе.

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

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

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

Из приятного - на ошибках таки научился, разваливаться система перестала. Очевидный инсайт: крутить нейросети на слабеньком сервере - плохая идея, проверено опытом 😁

Об опыте и текущем процессе - пока продолжаю издеваться над слабыми моделями и заставляю их собирать процессы из обычного языка. Мероприятие, как можно заметить по времени публикации, крайне увлекательное. Но и не самое очевидное, к сожалению... Те, у кого работает, обычно живут по принципу "очень большая модель + очень большой запрос" - за счет этого и достигают +/- вменяемых результатов.

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

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

Продолжаю делать доки, обновил хелпы по ВБ исполнителям, вот думаю, как еще упростить погружение в процесс.

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

#flowforge@rev:60c7d31
3
Небольшая затравка - хотел выложить, но мелкие технические неурядицы не дают. Набросал документацию и нет сил держать ее в себе 😁

Закину, скорее всего, уже вместе с видосом - на что-то глобальное фантазии не хватило, так что буду решать свою же задачу и делать вид, что это просто такое видео-обучение про получение оповещений об изменениях в апи озона.
🥰3
Media is too big
VIEW IN TELEGRAM
шото как-то пара недель выдалась ну прям вообще тяжелая. На прошлых выходных пытался себя заставить видос записать, на этих - тоже. Пока получается не особо, текстовый формат мне все же ближе намного. Но начинать с чего-то надо, так что вот - абсолютно пустой видос ни про что, зато с новым юаем и процессом развертывания этого юая)

Собственно, на сейчас вводных две:
- во-первых, спасибо всем причастным за идею с "оставь одну кнопку, кому надо, посмотрят глубже". Мне хватило одной кнопки чтоб разворошить целый пласт докер-образов и передеплоить сервер. На видосе как раз процесс релиза склеен (ага, все как всегда)

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

Ну и по классике, немного свежатины из релиза структурированными буквами:

Рабочее место (workspace)
На фронте появляется отдельный контур: дашборд, виджеты, своя раскладка, запуски и результаты в привязке к проекту — не только список диаграмм. На бэкенде под это легла сохраняемая раскладка (layout) и связанные с ранами/флоу доработки, чтобы «моё рабочее место» не было чисто локальной UI-фантазией, а имело состояние на сервере.

Плагины как часть продукта
Серверная часть вводит/развивает API и модель плагинов; клиент — страницу плагинов, клиент к API, store. В связке это выглядит как единая возможность: подключить расширения, не смешивая их с ядром приложения. Плагин — это конфигурация и права, а не «ещё один сервис в монолите».

Роли и доступы

Изменения в auth/capabilities - это новая продуктовая нить: не все видят плагины, workspace, админку и т.д.; поведение согласовано между API и UI.

Агент и исполнители
Перестройка agent-chat, flow-agent и роутеров LLM/плагинов в executor — с точки зрения продукта это еще один «мозг» сервиса: чат с агентом, генерация/инструменты и реальные шаги флоу могут (пока нет) через согласованные контракты. Включать пока рановато, но работа идет.

Что дальше:
- актуализация документации для нового UI и работы с воркспейсами
- собсно воркспейсы для конкретных потребностей (по крайней мере один, пора уже)
- надеюсь все же видос. Я правда хочу нормальное что-то сделать, но не знаю как) Если есть идеи или конкретные пожелания к каким-то готовым пресетам-воркспейсам - велкоме)

#flowforge@rev:19a6bb4
🔥1🤔1
Channel photo updated
Однажды я перестану переделывать UX по 10 раз на день, но не сегодня)

Я хотел себе "фигму для процессов" - у меня есть теперь кузня для процессов) Сижу собираю воркспейсы, пока доволен. Скоро буду писать видосы, перестану быть доволен)
🔥2👍1
Media is too big
VIEW IN TELEGRAM
отладил внешние взаимодействия, теперь все даже похоже на синхронную работу - процесс из редактора доступен из внешних клиентов, из самого редактора (не то чтоб сильно удивительно, но все же), и из воркспейсов - на видео оставил только виджет с результатами для наглядности, но можно и формочку запуска добавлять. Собираю в кучу, покрываю тестами и как всегда часам к 2 ночи что-нибудь пойдет не так 😁

P.S. с ключОм чтоб его... расслабился уже, сорян за такое)