refactor/tighten-architecture #26

Merged
GKaszewski merged 104 commits from refactor/tighten-architecture into master 2026-10-26 09:36:27 +00:00
Showing only changes of commit 98ad1a8fe7 - Show all commits

View File

@@ -25,9 +25,10 @@ raw environment strings.
**`bootstrap` crate.** Replaces `composition` and `infra-wiring`. It is the only crate that names
concrete adapters. It exposes `build_server(&AppConfig) -> ServerApp { router, addr }`,
`build_worker(&AppConfig) -> WorkerApp { service }`, `build_server_on(&AppConfig, SqlitePool)` (the
same router on a caller-provided pool, for tests) and `init_tracing`. `DbPool` and
`EventBusBackend` live here. `application` keeps a small application-owned `AppConfig` /
`WrapUpConfig` built from the `config` sections, so use-case deps structs and their test fixtures
same router on a caller-provided pool, for tests) and `init_tracing`. Bootstrap runs
on `SqlitePool`; the event-bus backend is chosen inside bootstrap and not re-exported. `application`
keeps small application-owned `AppSettings` / `WrapUpSettings` types built from the `config`
sections, so use-case deps structs and their test fixtures
are unchanged, and `application` no longer pulls `sqlx` or `anyhow`.
**Binaries are thin.** `server` and `worker` do dotenv, `config::load`, `init_tracing`, one