Skip to content

AdapterLifecycle

Defined in: packages/core/src/adapters/metadata.ts:61

Optional lifecycle every adapter can expose — all or nothing.

An adapter either omits lifecycle entirely or implements all three hooks; partial implementations are not allowed. Grouped in a sub-object (rather than flattened onto each adapter) so future hooks land in one place. All hooks must be idempotent — the router may run them more than once per process.

health: () => Promise<AdapterHealth>

Defined in: packages/core/src/adapters/metadata.ts:70

Ongoing liveness probe (cheap: SELECT 1, access(), head-bucket).

Promise<AdapterHealth>


setup: (ctx) => Promise<void>

Defined in: packages/core/src/adapters/metadata.ts:66

One-shot setup: migrations, directory creation, credential validation. Throw when something required is missing.

AdapterSetupContext

Promise<void>


teardown: () => Promise<void>

Defined in: packages/core/src/adapters/metadata.ts:68

Teardown: destroy clients and handles. Must tolerate repeated calls.

Promise<void>