# ADR-0002: Monorepo with Bun workspaces

# Context

The three BDI services share a lot of substance: a protocol (@transportial/contracts), a signing profile (@transportial/crypto), a policy engine (@transportial/policy), and observability primitives. If we'd put each service in its own repository, even a tiny protocol change would mean choreographing several PRs in lockstep — and protocols that are expensive to change tend to drift instead.

# Decision

Use a single repository with Bun workspaces. Each service and each shared package is its own workspace, prefixed @transportial/<name>. The root tsconfig.base.json declares path mappings so services resolve @transportial/kernel and friends directly to source — no build step needed in dev.

# Consequences

What we gain:

What we accept:

# What else we considered