diff --git a/cmd/version.go b/cmd/version.go
index 20be1de684543a5bf04ab7be1272d201e7d11717..0a26902411102aa36177ee28000818b3f6962712 100644
--- a/cmd/version.go
+++ b/cmd/version.go
@@ -18,7 +18,7 @@ import (
 )
 
 // Change this value to set the version for this build
-const currentVersion = "4.3.8"
+const currentVersion = "4.3.9"
 
 func Version() string {
 	out := fmt.Sprintf("Elixxir Client v%s -- %s\n\n", xxdk.SEMVER,
diff --git a/fileTransfer/connect/wrapper_test.go b/fileTransfer/connect/wrapper_test.go
index dd051273919a755e0558fd72907ecb4a1a1601a7..fc322def846afdc11bcd05274ccfca61653efd68 100644
--- a/fileTransfer/connect/wrapper_test.go
+++ b/fileTransfer/connect/wrapper_test.go
@@ -137,7 +137,6 @@ func Test_FileTransfer_Smoke(t *testing.T) {
 							"\nsent:     %q\nreceived: %q",
 							fileData, receivedFile)
 					}
-					wg.Done()
 				}
 			}
 			err3 := m2.RegisterReceivedProgressCallback(
@@ -175,6 +174,8 @@ func Test_FileTransfer_Smoke(t *testing.T) {
 			fileSize := len(fileData)
 			sendTime := tr.Sub(sendStart)
 			fileSizeKb := float32(fileSize) * .001
+			wg.Done()
+
 			speed := fileSizeKb * float32(time.Second) / (float32(sendTime))
 			t.Logf("Completed receiving file %q in %s (%.2f kb @ %.2f kb/s).",
 				fileName, sendTime, fileSizeKb, speed)
diff --git a/fileTransfer/e2e/wrapper_test.go b/fileTransfer/e2e/wrapper_test.go
index b5bf807a2d2b251f38e83d9aa97deed770d8a015..1fbfc746ac7ce6cd52ed2abf337d4da1cbc54e20 100644
--- a/fileTransfer/e2e/wrapper_test.go
+++ b/fileTransfer/e2e/wrapper_test.go
@@ -137,7 +137,6 @@ func Test_FileTransfer_Smoke(t *testing.T) {
 							"\nsent:     %q\nreceived: %q",
 							fileData, receivedFile)
 					}
-					wg.Done()
 				}
 			}
 			err3 := m2.RegisterReceivedProgressCallback(
@@ -178,6 +177,7 @@ func Test_FileTransfer_Smoke(t *testing.T) {
 			speed := fileSizeKb * float32(time.Second) / (float32(sendTime))
 			t.Logf("Completed receiving file %q in %s (%.2f kb @ %.2f kb/s).",
 				fileName, sendTime, fileSizeKb, speed)
+			wg.Done()
 		}
 	}()
 
diff --git a/fileTransfer/groupChat/wrapper_test.go b/fileTransfer/groupChat/wrapper_test.go
index ffa0fc0bc59abda9c08288a7f7797a4e2684ffed..a6f5455dab90a0cbb7973896d6aa67dfb26fb723 100644
--- a/fileTransfer/groupChat/wrapper_test.go
+++ b/fileTransfer/groupChat/wrapper_test.go
@@ -122,7 +122,6 @@ func Test_FileTransfer_Smoke(t *testing.T) {
 							"\nsent:     %q\nreceived: %q",
 							fileData, receivedFile)
 					}
-					wg.Done()
 				}
 			}
 			err3 := m2.RegisterReceivedProgressCallback(
@@ -163,6 +162,7 @@ func Test_FileTransfer_Smoke(t *testing.T) {
 			speed := fileSizeKb * float32(time.Second) / (float32(sendTime))
 			t.Logf("Completed receiving file %q in %s (%.2f kb @ %.2f kb/s).",
 				fileName, sendTime, fileSizeKb, speed)
+			wg.Done()
 		}
 	}()
 
diff --git a/fileTransfer/manager_test.go b/fileTransfer/manager_test.go
index a84a49f4f2b2010b774ae3a0e6a12603f873aac2..b0877e27e298a721f2b368c9c6d7bee9daa3e3dc 100644
--- a/fileTransfer/manager_test.go
+++ b/fileTransfer/manager_test.go
@@ -161,7 +161,6 @@ func Test_FileTransfer_Smoke(t *testing.T) {
 							"\nsent:     %q\nreceived: %q",
 							fileData, receivedFile)
 					}
-					wg.Done()
 				}
 			}
 			err3 := m2.RegisterReceivedProgressCallback(
@@ -202,6 +201,7 @@ func Test_FileTransfer_Smoke(t *testing.T) {
 			throughput := fileSizeKb * float64(time.Second) / (float64(sendTime))
 			t.Logf("Completed receiving file %q in %s (%.2f kb @ %.2f kb/s).",
 				fileName, sendTime, fileSizeKb, throughput)
+			wg.Done()
 
 			expectedThroughput := float64(params.MaxThroughput) * .001
 			delta := (math.Abs(expectedThroughput-throughput) /
diff --git a/xxdk/version_vars.go b/xxdk/version_vars.go
index 8350ae7edde96aaca07cec6ebad2dff7fd596c12..33bb06073daaec691fcab272c95e8ec52c65c9cf 100644
--- a/xxdk/version_vars.go
+++ b/xxdk/version_vars.go
@@ -1,11 +1,11 @@
 // Code generated by go generate; DO NOT EDIT.
 // This file was generated by robots at
-// 2022-11-14 23:15:18.806830082 +0000 UTC m=+0.010342227
+// 2022-11-17 09:17:30.057367592 -0800 PST m=+0.010667512
 
 package xxdk
 
-const GITVERSION = `6e5de435 Fix tests but maintain the message hash sanity check in the message buffer deserialization code`
-const SEMVER = "4.3.8"
+const GITVERSION = `9fae107a Fix race condition in FT wrapper_test (groupChat)`
+const SEMVER = "4.3.9"
 const DEPENDENCIES = `module gitlab.com/elixxir/client/v4
 
 go 1.19