Module config

Module config 

Source
Expand description

Configuration for Hyperactor Mesh.

This module provides hyperactor_mesh-specific configuration attributes that extend the base hyperactor configuration system.

Enums§

SocketAddrStr
A socket address string usable as a declare_attrs! default.

Statics§

MAX_CAST_DIMENSION_SIZE
The maximium for a dimension size allowed for a folded shape when reshaping during casting to limit fanout. usize::MAX means no reshaping as any shape will always be below the limit so no dimension needs to be folded.
MESH_ADMIN_ADDR
Default socket address for the mesh admin HTTP server.
MESH_ADMIN_CONFIG_DUMP_BRIDGE_TIMEOUT
Timeout for the end-to-end /v1/config/{proc} bridge reply. The config-dump path forwards a ConfigDump message through the HostAgent bridge and waits for ConfigDumpResult. This is inter-process actor messaging — fundamentally slower than local QueryChild snapshot lookups (which use MESH_ADMIN_QUERY_CHILD_TIMEOUT). During startup, the HostAgent message loop may be busy processing actor registrations, so bridge latency can exceed several seconds.
MESH_ADMIN_MAX_CONCURRENT_RESOLVES
Maximum number of concurrent resolve requests the HTTP bridge forwards to the MeshAdminAgent. Excess requests receive 503 immediately. Protects the shared tokio runtime from query floods (e.g. multiple TUI clients, rapid polling). Increase if the admin server serves many concurrent clients that need low-latency responses; decrease if introspection queries interfere with the actor workload under churn.
MESH_ADMIN_PYSPY_BRIDGE_TIMEOUT
Bridge-side timeout for py-spy dump requests. Must exceed MESH_ADMIN_PYSPY_TIMEOUT to allow the subprocess kill/reap and reply delivery to arrive before declaring gateway_timeout. See PS-6 in introspect module doc.
MESH_ADMIN_PYSPY_CLIENT_TIMEOUT
Client-side timeout for py-spy requests. Must exceed MESH_ADMIN_PYSPY_BRIDGE_TIMEOUT so the server can return a structured PySpyResult even when the subprocess uses the full budget. See PS-6 in introspect module doc.
MESH_ADMIN_PYSPY_TIMEOUT
Timeout for py-spy dump requests. See PS-5 in introspect module doc. With --native --native-all, py-spy unwinds native stacks via libunwind which is significantly slower than Python-only capture (~100ms). 10s accommodates native unwinding on heavily loaded hosts. Independent of MESH_ADMIN_SINGLE_HOST_TIMEOUT because py-spy does real I/O (subprocess + ptrace) rather than actor messaging.
MESH_ADMIN_QUERY_CHILD_TIMEOUT
Timeout for QueryChild snapshot lookups in resolve_actor_node. QueryChild is handled by a synchronous callback — it either returns immediately or returns Error. A short budget ensures the total time for resolve_actor_node stays well under MESH_ADMIN_SINGLE_HOST_TIMEOUT.
MESH_ADMIN_RESOLVE_ACTOR_TIMEOUT
Timeout for fallback queries to actors/procs that may have been recently destroyed. The second-chance paths in resolve_proc_node and resolve_actor_node fire after the fast QueryChild lookup fails. A short budget here prevents dead actors from blocking the single-threaded MeshAdminAgent message loop.
MESH_ADMIN_SINGLE_HOST_TIMEOUT
Timeout for targeted introspection queries that hit a single, specific host. Kept short so a slow or dying actor cannot block the single-threaded MeshAdminAgent message loop.
MESH_ADMIN_TREE_TIMEOUT
Timeout for the /v1/tree fan-out. Kept generous because the tree dump walks every host and proc in the mesh.
MESH_ATTACH_CONFIG_TIMEOUT
Timeout for the config-push barrier during HostMesh::attach().
MESH_PROC_LAUNCHER_KIND
Which builtin process launcher backend to use. Accepted values: “native” (default), “systemd”. Trimmed and lowercased before matching.
PYSPY_BIN
Path to the py-spy binary. When non-empty, tried before the fallback "py-spy" PATH lookup. See PS-3 in introspect module doc.