План модуля №3 — реализовать собственные клиент и сервер tRPC, затем заменить ими официальные библиотеки приложения из модуля №2. Это необходимое приложению подмножество tRPC, без полного клона всех возможностей библиотеки.
Клиент
Типизированные вызовы процедур с выводом входов и результатов; HTTP query/mutation, батчинг, заголовки и разбор ошибок. Сохранить используемый приложением HTTP RPC и типизированный API, включая передачу X-CSRF и обработку ошибок сессии и полей.
Сервер
Роутер и процедуры, контекст и middleware авторизации, разбор входа, типы входов/ответов, ошибки и HTTP-адаптер для Hono/Bun. Это серверная часть tRPC в BFF; клиент к Go от Orval остаётся отдельным слоем. Схемы собственного Zod подключаются через Standard Schema; сервер сохраняет этот интерфейс и вывод типов процедур.
Интеграция
Заменить официальные @trpc/client и @trpc/server собственными реализациями, сохранив используемые процедуры, bootstrap, CSRF, сессии и пользовательское поведение. Совместимость контракта означает сохранение используемого HTTP RPC и типизированного API.
Точное публичное API и размещение пакетов требуют отдельного дизайна перед реализацией. Собственные командные библиотеки размещаются в монорепе frontend-packages; имена и версии будущих пакетов здесь не задаются.