Перейти к основному содержимому

ADR-0003: Ограниченная полиглотная архитектура

  • Status: accepted
  • Date: 2026-08-26

Контекст

Платформа включает транзакционные workflows, AI inference, адаптеры каналов, MCP-интеграции и переносимый web UI. Один язык упростил бы подбор команды, но отдалил бы важные нагрузки от сильнейших экосистем. Неограниченная полиглотность увеличила бы операционные расходы.

Решение

Поддерживать три application runtime:

  • Java for transactional domain services and Temporal workflows.
  • Python for the agent runtime, model evaluation, and retrieval.
  • TypeScript for channels, MCP integrations, BFFs, and widget/web code.

Rego принят как policy language и не считается application runtime. Для четвёртого языка требуется ADR с benchmarks, владельцем, CI-шаблоном, поддержкой observability и обязательством по сопровождению.

Последствия

Сервисы используют нативные экосистемы без превращения платформы в языковой зоопарк. Platform engineering поддерживает три golden-path templates и переиспользуемые pipelines.