diff --git a/api/client.go b/api/client.go
index f7f879de1f8163d16ac12200687e47a8bf719a2e..44de05e00876644caf88368eda44adef8f88031e 100644
--- a/api/client.go
+++ b/api/client.go
@@ -339,6 +339,7 @@ func (c *Client) GetSwitchboard() interfaces.Switchboard {
 // events.
 func (c *Client) GetRoundEvents() interfaces.RoundEvents {
 	jww.INFO.Printf("GetRoundEvents()")
+	jww.WARN.Printf("GetRoundEvents does not handle Client Errors edge case!")
 	return c.network.GetInstance().GetRoundEvents()
 }
 
diff --git a/bindings/client.go b/bindings/client.go
index 2789061f4119519698a8263daa5db0252ef7300f..2091e95bfc239e5947d68530ec46375252cc7b7d 100644
--- a/bindings/client.go
+++ b/bindings/client.go
@@ -291,15 +291,15 @@ func (c *Client) RegisterRoundEventsHandler(rid int, cb RoundEventCallback,
 }
 
 // RegisterMessageDeliveryCB allows the caller to get notified if the rounds a
-// message was sent in sucesfully completed. Under the hood, this uses the same
-// interface as RegisterRoundEventsHandler, but provides a convienet way to use
+// message was sent in successfully completed. Under the hood, this uses the same
+// interface as RegisterRoundEventsHandler, but provides a convent way to use
 // the interface in its most common form, looking up the result of message
-// retreval
+// retrieval
 //
 // The callbacks will return at timeoutMS if no state update occurs
 //
 // This function takes the marshaled send report to ensure a memory leak does
-// not occur as a result of both sides of the bindings holding a refrence to
+// not occur as a result of both sides of the bindings holding a reference to
 // the same pointer.
 func (c *Client) RegisterMessageDeliveryCB(marshaledSendReport []byte,
 	mdc MessageDeliveryCallback, timeoutMS int) (*Unregister, error) {
diff --git a/network/follow.go b/network/follow.go
index 1b810dbec4a7bb6493e0101a817819b6835c7987..fdde482420c16384e9e061636522f46c6a28ebc0 100644
--- a/network/follow.go
+++ b/network/follow.go
@@ -173,6 +173,12 @@ func (m *manager) follow(rng csprng.Source, comms followNetworkComms) {
 						return
 					}
 
+					// FIXME: Should be able to trigger proper type of round event
+					// FIXME: without mutating the RoundInfo. Signature also needs verified
+					// FIXME: before keys are deleted
+					update.State = uint32(states.FAILED)
+					m.Instance.GetRoundEvents().TriggerRoundEvent(update)
+
 					// Delete all existing keys and trigger a re-registration with the relevant Node
 					m.Session.Cmix().Remove(nid)
 					m.Instance.GetAddGatewayChan() <- nGw