Robot Market · Quick reference · Lessons 5–7

From bytes to a matched command result

Use this map to locate the boundary where a failure happened. An event in one row does not automatically prove the next row.

StageCode ownerSuccess meansStill does not prove
Route + contracttopic.go builders/parser, DecodePublish names and filters are distinguished; topic shape and typed payload passed validation.Who published; Mosquitto ACL owns that access decision.
Application stateService + storeA use case updated the in-memory view or recorded an outcome.That the record survives a process restart.
Queue admissionBounded dispatcherWork entered a finite RAM queue or returned Full/Stopping.That a worker completed or that MQTT will redeliver.
Command publishAutoPaho adapterPUBACK acknowledged the QoS 1 publication hop.That the device received, accepted, or completed the business action.
Device resultResponse handler + command storeValidated device/application evidence matched identity and correlation.Authenticity without broker and application authorization.
HTTP statusHTTP handlerThe API represented its current known command state.That an asynchronous device operation is already complete.
Parse + validate
→
Apply use case
→
Admit bounded work
→
Publish + correlate
→
Report evidence

Fast incident questions

  1. Which process produced this evidence?
  2. What state changed, and where does it live?
  3. Could the earlier stage have acknowledged before this stage finished?
  4. What does restart, timeout, or queue saturation erase or leave unknown?