NeoGraph 0.16.0
A C++20 Graph Agent Engine Library — LangGraph for C++
Loading...
Searching...
No Matches
neograph::program::RegistrySnapshotBuilder Class Reference

Move-only builder for one sealed, process-local executable registry. More...

#include <registry.h>

Public Member Functions

RegistrySnapshotBuilder & add_core_endpoint_node (ExecutableManifest manifest, ExecutableRequirementResolver requirement_resolver)
 A built-in SchemaProvider endpoint node (#531): the manifest names its type (embed, image_generate, ..., job_collect).
 
RegistrySnapshotBuilder & add_core_llm_call (ExecutableManifest manifest, ExecutableRequirementResolver requirement_resolver)
 Fixed NeoGraph implementations that may hold exact bound executables.
 
RegistrySnapshotBuilder & add_host_brokered_node (ExecutableManifest manifest, graph::NodeFactoryFn factory, json config_schema, json effects, ExecutableRequirementResolver requirement_resolver={})
 Host-reviewed broker nodes may retain only their exact declared bindings.
 
RegistrySnapshotBuilder & add_native (ExecutableManifest manifest, NativeControlBinding binding) &
 Register a native callable for direct lookup without granting a JavaScript slot.
 
RegistrySnapshotBuilder & add_native (std::uint32_t import_slot, ExecutableManifest manifest, NativeControlBinding binding) &
 Seal a native binding to one non-built-in JavaScript import slot.
 

Detailed Description

Move-only builder for one sealed, process-local executable registry.

Node, reducer, and condition callables are copied into registry-owned std::function wrappers. Their capture graphs remain trusted embedding state: callers must keep borrowed captures valid and thread-safe. Requirement resolvers instead must deeply own immutable captures. Any callable semantic change requires a new implementation digest. Provider and tool entries contain metadata only; no runtime instance, transport client, or borrowed registry is retained.

Definition at line 110 of file registry.h.

Member Function Documentation

◆ add_core_endpoint_node()

RegistrySnapshotBuilder & neograph::program::RegistrySnapshotBuilder::add_core_endpoint_node ( ExecutableManifest  manifest,
ExecutableRequirementResolver  requirement_resolver 
)

A built-in SchemaProvider endpoint node (#531): the manifest names its type (embed, image_generate, ..., job_collect).

Its calls take the Core provider path, as llm_call's do: the host's provider call broker journals them, and a priced binding refuses them until the model catalogue can bound an endpoint call.

◆ add_core_llm_call()

RegistrySnapshotBuilder & neograph::program::RegistrySnapshotBuilder::add_core_llm_call ( ExecutableManifest  manifest,
ExecutableRequirementResolver  requirement_resolver 
)

Fixed NeoGraph implementations that may hold exact bound executables.

Unlike arbitrary brokered C++ factories, these use the reviewed Core paths.

◆ add_host_brokered_node()

RegistrySnapshotBuilder & neograph::program::RegistrySnapshotBuilder::add_host_brokered_node ( ExecutableManifest  manifest,
graph::NodeFactoryFn  factory,
json  config_schema,
json  effects,
ExecutableRequirementResolver  requirement_resolver = {} 
)

Host-reviewed broker nodes may retain only their exact declared bindings.

The embedding host owns this native factory and its effect mediation; do not use this for model-authored or otherwise untrusted C++ factories.

◆ add_native()

RegistrySnapshotBuilder & neograph::program::RegistrySnapshotBuilder::add_native ( std::uint32_t  import_slot,
ExecutableManifest  manifest,
NativeControlBinding  binding 
) &

Seal a native binding to one non-built-in JavaScript import slot.

The slot participates in the RegistrySnapshot fingerprint and is the only authority accepted by ng.hostCapability(slot, ...) at runtime.


The documentation for this class was generated from the following file: