`bynk.adapter.*` / `bynk.namespace.*` / `bynk.requires.*` errors
These diagnostics relate to adapters — the host boundary. See the Adapters reference and Wrap a library as an adapter.
bynk.adapter.provider_has_body
Section titled “bynk.adapter.provider_has_body”[bynk.adapter.provider_has_body] a provider inside an `adapter` must be external (no body) — its implementation is supplied by the bindingProviders inside an adapter are external: write provides Cap = Name with no
brace block. The implementation lives in the binding, not in Bynk.
provides Jwt = JoseJwt -- not `provides Jwt = JoseJwt { fn sign(…) { … } }`bynk.context.external_provider
Section titled “bynk.context.external_provider”[bynk.context.external_provider] an external (bodiless) provider is only allowed inside an `adapter` — a context provider must have a Bynk bodyA bodiless provides is only legal inside an adapter. In a context, give the
provider a Bynk body — or move it to an adapter if it wraps host code.
bynk.adapter.disallowed_item
Section titled “bynk.adapter.disallowed_item”[bynk.adapter.disallowed_item] an `adapter` may not declare a `service`Adapters contain only capabilities, boundary types, external providers, inline
pure helpers, and exports. Put services and agents in a context.
bynk.adapter.no_binding
Section titled “bynk.adapter.no_binding”[bynk.adapter.no_binding] adapter `tokens` declares an external provider but has no `binding` clause to supply its implementationAn adapter with external providers must name a binding module:
binding "./tokens.binding.ts"The same code reports when the named module cannot be read — check the path
(resolved relative to the adapter’s source file) and author the .binding.ts.
bynk.requires.unpinned_dependency
Section titled “bynk.requires.unpinned_dependency”[bynk.requires.unpinned_dependency] dependency `jose` has an unpinned version range `*` — pin a concrete range (e.g. `^1.2.0`)Pin every dependency range. Unpinned ranges (*, latest, or anything with no
version number) make builds irreproducible and are rejected.
bynk.namespace.reserved
Section titled “bynk.namespace.reserved”[bynk.namespace.reserved] `bynk.time` uses the reserved `bynk` namespace — the `bynk` root is reserved for the toolchain's conformance surfaceThe bynk root namespace names the toolchain’s conformance surface. Rename any
user commons/context/adapter/test so its first segment is not bynk.
bynk.consumes.capability_name_clash
Section titled “bynk.consumes.capability_name_clash”[bynk.consumes.capability_name_clash] flattened capability `Jwt` clashes with a capability declared locally — use qualified `given tokens.Jwt` insteadA consumes U { Cap } flattened name collided with a local capability or another
flattened name. Resolve it with a qualified given U.Cap, or alias the unit with
consumes U as Alias.