Liking cljdoc? Tell your friends :D

hive-olympus.harness

The generic per-harness projection: a harness brick is a manifest whose :addon/init-ns is this namespace, :addon/init-fn "addon-ctor", and whose :addon/config names the host vessel addon:

{:olympus/host "hive.deepseek"} required :olympus/presenter-id default: the host id :olympus/addon-id default: "hive.olympus." + host id without its "hive." prefix :olympus/target-resolver optional qualified symbol of (fn [config] -> hive-vessel Target | nil); eval-port-target is the built-in one for hosts reached through an eval fn (:olympus/eval-fn, :olympus/dialect)

with :addon/dependencies #{"hive.olympus" <host>}.

On initialize! it registers one presenter on hive.olympus. The presenter resolves its delivery route at EVERY delivery by folding default-routes (first route that resolves wins):

:configured-resolver :olympus/target-resolver -> Target, lowered through hive-vessel's standard registry :host-dispatch the host's :vessel/dispatch! hook :host-target the host's :vessel/target hook (a Target or a 0-arity fn returning one), lowered through hive-vessel's standard registry

hive-vessel is resolved lazily; nothing here compile-depends on it. A delivery with no route, or whose result is {:error ...}, throws, which hive.olympus records as a degraded presenter and retries.

The generic per-harness projection: a harness brick is a manifest whose
:addon/init-ns is this namespace, :addon/init-fn "addon-ctor", and whose
:addon/config names the host vessel addon:

  {:olympus/host "hive.deepseek"}           required
  :olympus/presenter-id                      default: the host id
  :olympus/addon-id                          default: "hive.olympus." + host id
                                             without its "hive." prefix
  :olympus/target-resolver                   optional qualified symbol of
                                             (fn [config] -> hive-vessel Target | nil);
                                             `eval-port-target` is the built-in one for
                                             hosts reached through an eval fn
                                             (:olympus/eval-fn, :olympus/dialect)

with :addon/dependencies #{"hive.olympus" <host>}.

On initialize! it registers one presenter on hive.olympus. The presenter
resolves its delivery route at EVERY delivery by folding `default-routes`
(first route that resolves wins):

  :configured-resolver  :olympus/target-resolver -> Target, lowered through
                        hive-vessel's standard registry
  :host-dispatch        the host's :vessel/dispatch! hook
  :host-target          the host's :vessel/target hook (a Target or a 0-arity
                        fn returning one), lowered through hive-vessel's
                        standard registry

hive-vessel is resolved lazily; nothing here compile-depends on it. A
delivery with no route, or whose result is {:error ...}, throws, which
hive.olympus records as a degraded presenter and retries.
raw docstring

addon-ctorclj

(addon-ctor config)

Pure constructor resolved from a harness manifest.

Pure constructor resolved from a harness manifest.
sourceraw docstring

configured-resolverclj

source

default-routesclj

Route precedence: an explicit resolver, then the host's own dispatch, then the host's bare target.

Route precedence: an explicit resolver, then the host's own dispatch, then
the host's bare target.
sourceraw docstring

eval-port-targetclj

(eval-port-target config)

A :olympus/target-resolver for hosts reached through an eval port rather than vessel hooks. Reads :olympus/eval-fn (qualified symbol of (fn [payload] -> result)), :olympus/dialect (a hive-vessel dialect keyword) and optional :olympus/vessel-id. Returns a hive-vessel Target, or nil when the eval fn does not resolve. A result map carrying :error throws.

A :olympus/target-resolver for hosts reached through an eval port rather
than vessel hooks. Reads :olympus/eval-fn (qualified symbol of
(fn [payload] -> result)), :olympus/dialect (a hive-vessel dialect keyword)
and optional :olympus/vessel-id. Returns a hive-vessel Target, or nil when
the eval fn does not resolve. A result map carrying :error throws.
sourceraw docstring

harness-addon-idclj

(harness-addon-id host-id)

Addon id for the harness projecting Olympus into HOST-ID.

Addon id for the harness projecting Olympus into HOST-ID.
sourceraw docstring

host-dispatchclj

source

host-targetclj

source

IDeliveryRoutecljprotocol

resolve-routeclj

(resolve-route route ctx)

(fn [ops] -> result) when this route can deliver for CTX, else nil. CTX is {:config .. :host-hooks {..} :resolve (fn [qualified-sym] -> value | nil)}.

(fn [ops] -> result) when this route can deliver for CTX, else nil. CTX is
{:config .. :host-hooks {..} :resolve (fn [qualified-sym] -> value | nil)}.

route-idclj

(route-id route)

Keyword naming the route.

Keyword naming the route.
source

olympus-addon-idclj

source

presenter-targetclj

(presenter-target config last-route)
(presenter-target config last-route routes resolve)

The presenter target (fn [ops]) for CONFIG. Each call resolves the host and a route afresh, records the route used in LAST-ROUTE (an atom), and throws when no route resolves or the result is {:error ...}.

The presenter target (fn [ops]) for CONFIG. Each call resolves the host
and a route afresh, records the route used in LAST-ROUTE (an atom), and
throws when no route resolves or the result is {:error ...}.
sourceraw docstring

select-routeclj

(select-route routes ctx)

{:route id :deliver fn} for the first of ROUTES resolving CTX, or nil.

{:route id :deliver fn} for the first of ROUTES resolving CTX, or nil.
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close