Обзор
- Что это: внутренний продукт US healthtech platform — «Clinical Validation Bench» (имя пакета
regain-clinical-validation). Бенчмарк-харнесс, который прогоняет клинические AI-системы (кодовые имена Deutsch / Popper / Hermes) по корпусу клинических виньеток, оценивает ответы (judge/oracle), сравнивает прогоны, отслеживает регрессии и борется с переобучением (строгая методология anti-overfitting, привязанная к гайдлайнам AHA/ACC/ESC). Мультипровайдерный реестр моделей (Cerebras/Vertex/Azure) через Vercel AI SDK 6. - Тип / статус / роль: api/платформа (монорепо: API + дашборд + очереди + раннер) / active / contributor (существенный). Основной автор — Anton Kim
<anton@US healthtech platform>(154 коммита, клинический движок и методология). Пользователь Davron — 9 коммитов, но огромных по объёму (~32 000 строк): построил весь прикладной слой (API, аутентификация, очереди, дашборд, деплой). - Период активности: 2026-02-11 → 2026-02-23 (~2 недели интенсивной работы), 163 коммита.
Стек
- Языки: TypeScript (рантайм Bun).
- Монорепо: Turborepo + Bun workspaces (
@workspace/*).apps/: api (Elysia :3001), web (Next.js 16 :3002), runner (CLI-бенч), queue (воркер BullMQ), dashboard (legacy).packages/: db (Drizzle+TimescaleDB), auth (Better Auth), ui (shadcn/Tailwind v4), harness, judge, oracle, analyzer, vignettes, cli. - Фреймворки/библиотеки: Elysia.js (API), Next.js 16 + React 19 (дашборд), Drizzle ORM + pg (PostgreSQL/TimescaleDB), Better Auth (+admin/RBAC), BullMQ + Bun.redis (очереди), shadcn/ui + Tailwind v4, Vercel AI SDK 6 (
createProviderRegistry),@regain/hermes2.0. Линт/формат — Biome. - Инфра/деплой (вклад пользователя): multi-arch Docker (ARM64/Graviton), Bun
build --compileв standalone-бинарь; GitHub Actions → AWS ECS (regain-production), OIDC-роль (id-token), build-матрица для 3 сервисов в ECR. - Данные: PostgreSQL/TimescaleDB (Drizzle, схема
packages/db), Redis (очереди), корпус виньеток (packages/vignettes,data/,vignettes/), отчёты (reports/).
Что реализовано
Проект в целом (Anton): движок клинического бенча — harness/judge/oracle/analyzer, корпус виньеток, методология anti-overfitting, реестр моделей, bench-скрипты (history/compare/baseline/changelog/traces/control-conformance).
Вклад пользователя (9 коммитов, подтверждено через git log --author, ~32k строк суммарно):
dae8dbb(184 файла, +9679) — реализовал Elysia.js API с аутентификацией и экспортом (фактически поднялapps/apiс нуля).a4d0988(62 файла, +17816) — расширил контроллеры + новые фичи (analytics, corpus, export, generalization, improvements, queue, runs, vignettes).e87a280(30 файлов, +5009) — страницы дашборда, инфраструктура очередей, ARPA-таргеты.5a11f85— Dockerfile'ы + CI/CD для AWS (деплой в ECS, ecs-deploy.sh, deploy-us.yml).4d84d5e— auth-middleware + улучшение лейаута дашборда.c6b6906— фикс cross-subdomain cookie (бесконечный цикл редиректов при авторизации).dc665de— фикс type-error после мержа; + 2 merge-коммита.- Итоговый вклад: пользователю принадлежит весь платформенный слой (API + аутентификация/RBAC + очереди + дашборд + деплой); Anton — клинический движок/наука.
Технические челленджи
Подтверждено кодом (файлы пользователя).
- RBAC как Elysia-макрос (
apps/api/src/lib/rbac.ts) →rbacPluginс макросамиisAuthenticatedиrbac({permission}); делегирует проверку прав в Better Auth (auth.api.userHasPermission), чистые 401/403. Декларативная защита роутов на уровне фреймворка. - Изоляция BullMQ от типов Elysia (
modules/v1/queue/queue-service.ts) → тонкая обёртка, возвращающая plain-объекты (JobInfo/JobCounts/JobDetail), чтобы типы BullMQ не «протекали» в тайп-чейн Elysia. Зрелое архитектурное решение — понимание того, как типы TS распространяются через слой API. - Standalone-бинарь под Graviton (
apps/api/Dockerfile) → multi-stage,bun build --compile --minify --target bun-linux-${TARGETARCH}→ единственный бинарь в проде без рантайма; послойное кеширование зависимостей по всем workspace-пакетам. Контейнеризация уровня senior. - OIDC-деплой в AWS ECS (
.github/workflows/deploy-us.yml) → триггерится по успешному CI (workflow_run),id-token: write+configure-aws-credentials(без долгоживущих ключей), build-матрица для bench-api/web/worker в ECR, кластерregain-production. Современный, безопасный CD. - Доменное API → 8 контроллеров (runs, vignettes, analytics, corpus, export, generalization, improvements, queue) — REST-поверхность над клиническим бенчем.
AI-разработка
- Найденные сессии: директория сессий Claude Code для этого проекта существует, но содержит 0 `.jsonl`-транскриптов (очищены/не сохранены).
- Косвенно: очень детальный
CLAUDE.md(12 КБ) со строгими правилами (только Bun, без динамического import, обязательный TanStack Query, anti-overfitting), конвенции в духе.cursor— разработка явно AI-ассистированная (Cursor/Claude Code). Канонический путь dev-машины —/Users/gsizm/(Anton). - Паттерны AI-воркфлоу: транскриптов с деталями нет; но CLAUDE.md — отличный пример инженерного «AI repo guide».
Достижения и метрики
- Монорепо: 5 apps + 11 packages, оркестрация через Turborepo.
- Пользователь: ~32k строк в 9 коммитах — весь бэкенд/инфра-слой.
- API: 8 доменных контроллеров + RBAC + экспорт.
- Деплой: 3 контейнерных сервиса на AWS ECS (Graviton/ARM64), OIDC CI/CD.
- Бенч: корпус из ~29 виньеток (smoke) — несколько кардио-состояний (HFrEF/HFpEF/post-MI); мультипровайдерный реестр (6+ моделей Cerebras, 6+ Vertex).