- Replace Bun with pnpm 9 + Turborepo + tsx; apps/api renamed to apps/backend - Split backend into http/, modules/, lib/ layers mirroring tai-specguard - Add use-case + Result pattern, Problem Details RFC 7807, basePath /api/v1 - Mount Better Auth at /api/v1/auth, keep session-auth whitelist - Split Prisma schema into prisma/models/*, generate into generated/ - Rework packages/shared into lib/ + schemas/ with pagination DTOs - Implement health, groups, students, payments, waitlist modules - Add vitest suite with prisma mocks (21 tests), biome lint - Point web client to /api/v1/auth and /api/v1/groups/from-organization
12 lines
397 B
TypeScript
12 lines
397 B
TypeScript
import type { MiddlewareHandler } from 'hono';
|
|
import { runWithRequestLogContext } from '@/logger';
|
|
import type { BackendEnv } from './env';
|
|
|
|
export const requestIdMiddleware: MiddlewareHandler<BackendEnv> = async (c, next) => {
|
|
const requestId = crypto.randomUUID();
|
|
|
|
c.set('requestId', requestId);
|
|
c.header('X-Request-Id', requestId);
|
|
|
|
await runWithRequestLogContext(requestId, next);
|
|
}; |