Lattice

MQTT Topic Topology

All canonical topics with producers/consumers in one map.

MQTT Topic Topology (v2026-09-30T094925Z-5e473105f4) 2026-09-30 | All canonical topics with producers/consumers in one map. 1 - EVENT PUBLISHING - Publishes events to MQTT topics event_bus.publish event_bus.py:120 bus.publish('holon:queued', {...}) bus.publish('job:progress', {...}) bus.publish('ai:approval', {...}) event_bus_lvc.db event_bus_lvc.db kv/events/holon:queued kv/events/job:progress kv/events/ai:approval event data 2 - MQTT MOUNTING - Mounts MQTT client to event bus EventBus.mount_mqtt event_bus.py:300 mount_mqtt(mqtt_client) kv/events/# MQTT client 3 - SERVICE IDENTITY - Publishes service identity and heartbeat ServiceBase.startup ServiceBase.startup() kv/service/{service}/identity kv/service/{service}/heartbeat ServiceBase service_base.py ServiceBase.connect_and_run() ServiceBase.shutdown() ServiceBase._heartbeat_loop() service identi… 1. Publish event to bus 2. Update LVC and history 3. Mount MQTT client 4. Publish service identity 5. Start heartbeat loop 6. Publish heartbeat Event data payload { "e": "holon:queued", "ts": 1672531200.0, "id": "12345678", "holon_id": "...", "to": "flynn" } Service identity payload { "service": "daemon", "version": "2026-05-23T074530Z-a3f8e2c", "role": "owner", "status": "starting", "environment": "dev", "commit_sha": "a3f8e2c", "timestamp": 1715813520 } The MQTT client is mounted to the event bus to publish events to the MQTT topics. The service identity and heartbeat are published to the bus to maintain service status. Legend actor = initiates work · process = code path · store = state on disk · bus = durable queue · dashed = separate process cyan = request flow · pink = state read/write · dashed green = pull / return path · red = refusal As of 2026-09-30 09:49 UTC, from commit 5e47310

Provenance

This drawing is generated, not drawn. It is rebuilt from the source files below, so when they change the picture changes — a diagram here cannot quietly describe a system that no longer works this way.

Owner
Lattice
Slug
mqtt-bus-topology
Rendered
2026-09-30T094925Z
From commit
5e473105f4
Updated
30 Sep 2026, 09:49 UTC
Sources at
5e47310
Watches
3 paths
  • daemon/src/event_bus.py
  • daemon/config/services.yaml
  • daemon/docs/VERSIONING_BUS.md