home.social

#outbox_pattern — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #outbox_pattern, aggregated by home.social.

fetched live
  1. Spec-driven development в микросервисах, часть 3: archspec investigate — исследование фичи до кода

    Третья, заключительная статья из цикла. Часть 1 — где LLM теряет межсервисный контекст и почему локальных спек недостаточно. Часть 2 — archspec как контракт вместо свободного Markdown. Часть 3 — archspec investigate: исследование фичи, обновление контрактов и реализация. В части 1 я показал, что spec-driven development с LLM начинает ошибаться, когда фича проходит через несколько микросервисов: по отдельности каждый сервис выглядит аккуратно, а вместе система работает не так, как нужно. Модель теряет межсервисный контекст — правила, которые живут на границах между сервисами, не записаны в одном месте, и LLM их пропускает. В части 2 я собрал archspec : на каждый сервис генерируется машиночитаемый контракт SERVICE_MAP.yaml , который делает эти правила явными. В этой части я беру ту же фичу — автоматическое переназначение задачи после отказа фрилансера — и прогоняю её заново через /archspec:investigate , но уже поверх контрактов. Тот же промпт, та же модель (Claude Sonnet 4.6). Вопрос один: поймает ли план те межсервисные ошибки, на которых в первый раз фича не сошлась, ещё до написания кода — и где спотыкается уже сам инструмент. Что нашёл investigate и где отъехал код

    habr.com/ru/articles/1046824/

    #specdriven_development #aiassisted_development #claude_code #llm #микросервисы #архитектура_микросервисов #service_contracts #outbox_pattern #идемпотентность #code_review_ai

  2. Как мы четыре раза переписали Outbox

    Привет! Я Ильдус Тукаев, разработчик в команде образовательной платформы Т-Банка. Мы помогаем школьникам, студентам, молодым специалистам и сотрудникам получать знания и качать свои софт и хард навыки. Основной язык у нас Go, но сегодня расскажу больше про архитектурную тему: как у нас в команде использовался паттерн Outbox и как он эволюционировал. За полтора года реализация Outbox прошла четыре итерации. По пути мы ловили VACUUM, который останавливал сервис на три часа, теряли 5% событий за полтора дня и заваливали поддержку обращениями. Расскажу, какие реализации мы пробовали, на какие грабли наступали и почему остановились на варианте, который сами же не считаем идеальным.

    habr.com/ru/companies/tbank/ar

    #outbox #outboxпаттерн #outbox_pattern

  3. Spec-driven development в микросервисах, часть 2: как archspec делает контекст сервисов явным

    В первой части я разбирал, почему spec-driven development начинает ошибаться, когда фича проходит через несколько микросервисов. Проблема не в том, что LLM плохо читает код или не умеет писать спеку. На уровне отдельных сервисов всё может выглядеть аккуратно: есть описание, план, реализация и тесты. Но правила, которые связывают сервисы между собой, часто не записаны в одном месте. Часть таких правил спрятана в реализации, часть известна только команде, а часть всплывает уже на ревью. Обычный Markdown не решает эту проблему: его легко написать неполным, сложно проверить автоматически и почти невозможно ревьюить как структурный контракт. Отсюда родилась идея: нужен машиночитаемый контракт на каждый сервис, который фиксирует межсервисные правила, проверяется на коммите и даёт LLM структурный контекст вместо набора Markdown-файлов. Для этого я собрал open source плагин для Claude Code — archspec . В этой части я покажу, как работает /archspec:init на одном сервисе из демо-проекта freelance-marketplace , разберу сгенерированные артефакты и объясню, как archspec поддерживает их в актуальном состоянии. Напомню, это Go-проект с 12 микросервисами для поиска фрилансеров. Вот схема сервисов, которую я использую на протяжении всего цикла: Как работает archspec

    habr.com/ru/articles/1037988/

    #specdriven_development #aiassisted_development #claude_code #llm #aiагенты #микросервисы #архитектура_микросервисов #docs_as_code #service_contracts #outbox_pattern