yk.camelcase.work

Нещодавні роботи

Нещодавні продукти, створені від початку до кінця. Кожен запис називає інженерне рішення, яке його сформувало, а не перелік функцій.

Кожен проєкт нижче почався з реальної проблеми. Далі роль та сама: продуктова концепція, системна архітектура, реалізація, інфраструктура, розгортання та безперервна доставка - кожен продукт продовжує розвиватися далеко за межами першого релізу.

Velora - Новинна аналітика, зосереджена на подіях

Агрегатор, у якому одиницею показу є подія, а не стаття: сотні публікацій згортаються в одну модель того, що сталося, і продовжують її оновлювати. Velora контролює весь свій ланцюг постачання - сама знаходить видання, перевіряє їх, шукає їхні фіди й опитує їх - а потім видобуває, дедуплікує, кластеризує, оцінює, об'єднує та ранжує все зібране. Близько сорока фонових акторів; кожен операційний ліміт - це налаштування часу виконання, а не константа.

Проблема

Одна подія породжує сотні майже однакових статей: видання переписують одне одного, міняють заголовок і публікують знову. Читач витрачає час на дублікати й однаково не може зрозуміти, який матеріал першим повідомив новину, який додає нові факти і що змінилося з учора. Агрегатори групують заголовки, але сама подія - її джерела, нові факти, її розвиток - залишається невидимою.

Event clusteringpgvector HNSW, bge-m3 1024dMerge adjudication3-way retrieval + LLM verdictCrawl pipelineDramatiq, separated async lanesRuntime settingsDB-backed, audited, live-read by alerts

Архітектура

  • Глибина розширює подію, ширина створює пов'язану - нові матеріали про той самий випадок приєднуються, інший випадок стає окремою подією, пов'язаною, але ніколи не об'єднаною.
  • Кластеризація - це явне рішення з трьох варіантів - приєднати, започаткувати нову подію або чекати як обмежений singleton - з вищою планкою для створення події, ніж для приєднання до наявної.
  • Дедуплікація зберігає агентські матеріали: однаковий текст в одного видання - дублікат, той самий текст у різних виданнях - сигнал.
  • Об'єднання - це retrieval плюс арбітраж, а не поріг - події порівнюються за коротким реченням-ідентифікатором, а схожість лише формує короткий список кандидатів.
  • Часові вікна не обираються, а виводяться з виміряної затримки самого конвеєра й пов'язані інваріантами, які перевіряються під час запису.
  • Усе, що може взяти на себе механічна перевірка, ніколи не доручається моделі - спершу виводиться, потім перевіряється в коді.
  • Ранжування - детермінована арифметика; LLM лише оцінює текст.
  • Операційні ліміти - це рядки з аудитом, а не константи - включно зі значеннями, які читають правила алертів.
  • Один event loop і один пул з'єднань на кожен процес воркера, а завантаження з видань ізольоване у власній черзі.
  • Velora публікує власний текст і посилання на джерело, але ніколи не текст видання.

Editron

Сервіс трансформації тексту за принципом API-first. Власний вебредактор - це клієнт того самого публічного API, якому заборонено його обходити, - саме це тримає інтеграційну поверхню чесною; рушій обробки можна замінити за одним внутрішнім контрактом, мультитенантність, API-ключі, квоти й облік використання закладено з самого початку, а також є опублікований TypeScript SDK.

Lernklang

Платформа з обмеженим доступом для вивчення мов через аудіювання, з аналітичною панеллю для шкіл. Один образ, три ролі: заплановані завдання виконуються в окремому контейнері, тож перезапуск чи масштабування вебзастосунку ніколи не пропускає завдання й не запускає його двічі - а конфігурація перевіряється під час старту: процес відмовляється запускатися з некоректною змінною, замість тихо ламатися в продакшені.

Herald

Збирання, обробка й доставка новин за темами. Дедуплікація відбувається на етапі доставки: для кожного каналу за хешем вмісту, з URL як запасним ключем, у ковзному вікні, тож синдиковані статті й статті, що оновлюються наживо, ніколи не надсилаються двічі; кожна стаття дає три незалежно створені формати, і кожен позначено точною версією конвеєра, яка його створила, - для відтворюваності та обліку витрат.

Менші продукти й цілеспрямовані експерименти - частина тієї самої практики: вони дають змогу швидко перевірити ідею, патерн взаємодії чи новий робочий процес, перш ніж братися за більшу систему.