diff --git a/metropolis/node/core/cluster/cluster_join.go b/metropolis/node/core/cluster/cluster_join.go
index 53ca815..cdbf0b3 100644
--- a/metropolis/node/core/cluster/cluster_join.go
+++ b/metropolis/node/core/cluster/cluster_join.go
@@ -28,7 +28,7 @@
 	// Get Cluster CA from Sealed Configuration.
 	ca, err := x509.ParseCertificate(sc.ClusterCa)
 	if err != nil {
-		return fmt.Errorf("Cluster CA certificate present in Sealed Configuration could not be parsed: %w", err)
+		return fmt.Errorf("cluster CA certificate present in Sealed Configuration could not be parsed: %w", err)
 	}
 
 	// Tell the user what we're doing.
diff --git a/metropolis/node/core/metrics/metrics.go b/metropolis/node/core/metrics/metrics.go
index ffae970..bd229fa 100644
--- a/metropolis/node/core/metrics/metrics.go
+++ b/metropolis/node/core/metrics/metrics.go
@@ -140,5 +140,5 @@
 	if err != nil && ctx.Err() != nil {
 		return ctx.Err()
 	}
-	return fmt.Errorf("Serve: %w", err)
+	return fmt.Errorf("Serve(): %w", err)
 }
diff --git a/metropolis/node/core/network/static.go b/metropolis/node/core/network/static.go
index 6c72be5..abe9aca 100644
--- a/metropolis/node/core/network/static.go
+++ b/metropolis/node/core/network/static.go
@@ -44,7 +44,7 @@
 		return err
 	}
 	if loopbackLink == nil {
-		return errors.New("No loopback interface present, weird/broken kernel?")
+		return errors.New("no loopback interface present, weird/broken kernel?")
 	}
 	if err := netlink.LinkSetUp(loopbackLink); err != nil {
 		l.Error("Failed to enable loopback interface: %w", err)
diff --git a/metropolis/node/core/roleserve/worker_heartbeat.go b/metropolis/node/core/roleserve/worker_heartbeat.go
index c11c5d0..6ba07c5 100644
--- a/metropolis/node/core/roleserve/worker_heartbeat.go
+++ b/metropolis/node/core/roleserve/worker_heartbeat.go
@@ -49,7 +49,7 @@
 
 		_, err := stream.Recv()
 		if err == io.EOF {
-			return fmt.Errorf("stream closed by the server. Restarting worker...")
+			return fmt.Errorf("stream closed by the server, restarting worker... ")
 		}
 		if err != nil {
 			return fmt.Errorf("while receiving a heartbeat reply: %v", err)
