The surface assumed when a caller has not named a version: the entries whose
signature is identical in every generated version.
Conservative in the direction that matters — it under-promises against every
server rather than over-promising against some — but it is genuinely small
(it cannot reach user.query or pool.query), so callers who know their
server should name its version. ApiDirectoryByVersion maps a version
string to its surface.
Distinct from DefaultApiDirectory, which is what the factory assumes: a
concrete version (the oldest supported), not this intersection. The factory
has a hostname to connect to and can be specific; a bare TrueNasApi cannot.
The surface assumed when a caller has not named a version: the entries whose signature is identical in every generated version.
Conservative in the direction that matters — it under-promises against every server rather than over-promising against some — but it is genuinely small (it cannot reach
user.queryorpool.query), so callers who know their server should name its version. ApiDirectoryByVersion maps a version string to its surface.Distinct from
DefaultApiDirectory, which is what the factory assumes: a concrete version (the oldest supported), not this intersection. The factory has a hostname to connect to and can be specific; a bareTrueNasApicannot.