API Reference hecate_om v#0.23.0

View Source

Modules

Public facade for hecate-om.

OTP application entry point for hecate-om.

Advertises a service's capabilities on the mesh, and resolves other services' capabilities from the DHT.

Put/get content on the mesh via macula's supervised macula_feeder/macula_download, blocking with a timeout — what an HTTP handler actually wants (bytes or an MCID back), instead of a pid it has nothing to do with.

macula_download callback implementation for hecate_om_content:get/1,2.

macula_feeder callback implementation for hecate_om_content:put/1,2.

Tracks a single service's health snapshot.

Cowboy handler — GET /health.

Loads the service-principal cert at boot; identity + seed/opts resolution for the mesh pool hecate_om_sup supervises alongside this gen_server (piece A, PLAN_HECATE_OM_MESH_WRAPPERS.md).

Verifies a caller actually holds the private key for the Ed25519 identity (a raw 32-byte pubkey -- the same node_id/DID convention macula's own identity uses) it claims to be asserting on behalf of, inside an otherwise-open mesh payload.

Publish onto the mesh via macula's supervised macula_publisher, instead of every service hand-rolling catch macula:publish(...).

Reconciles the desired subscription set against hecate_om_pubsub_sup's actual running children (piece D, PLAN_HECATE_OM_MESH_WRAPPERS.md).

Dynamic supervisor for this service's macula_subscriber children (piece D, PLAN_HECATE_OM_MESH_WRAPPERS.md).

Canonical barrel_docdb read-model wiring for hecate-services.

Bridges macula's native {Module, Function} single-call handler convention into macula_response's per-request init/1 + handle_request/2 contract, for a handler that needs no per-request state — the common case for a hecate-service migrating a capability from bare macula:advertise/5 onto hecate_om_capabilities:register/1 (see plans/PLAN_UCAN_GATED_CAPABILITIES.md).

Canonical reckon-db + evoq wiring helper for hecate-services.

Top-level supervisor for hecate-om.

Tolerant field lookup on a decoded mesh payload map (RPC/stream args, or a pubsub event payload), instead of every provider desk re-solving the same two gotchas independently.