diff --git a/api.go b/api.go
index 080abc9..40acb90 100644
--- a/api.go
+++ b/api.go
@@ -149,7 +149,6 @@
 		} else {
 			w.WriteHeader(http.StatusNotFound)
 		}
-		return
 	}
 }
 
@@ -170,7 +169,7 @@
 	}
 }
 
-// todo: we'll need to transmit results back to Edge somehow...
+// todo: we'll need to transmit results back to Edge somehow - TBD
 func handleDeploymentResult(w http.ResponseWriter, r *http.Request) {
 
 	depID := apid.API().Vars(r)["deploymentID"]
diff --git a/api_test.go b/api_test.go
index bdafa9d..be371be 100644
--- a/api_test.go
+++ b/api_test.go
@@ -50,9 +50,6 @@
 
 			Expect(depRes.DeploymentID).Should(Equal(deploymentID))
 			Expect(depRes.Bundles[0].Scope).Should(Equal("some-scope"))
-			// todo: scope, org, env, etc... need to be dealt with abstractly
-			//Expect(depRes.Bundles[0].Org).Should(Equal("org"))
-			//Expect(depRes.Bundles[0].Env).Should(Equal("env"))
 
 			Expect(res.Header.Get("etag")).Should(Equal(deploymentID))
 		})
diff --git a/data.go b/data.go
index 9133750..34d4f57 100644
--- a/data.go
+++ b/data.go
@@ -20,8 +20,6 @@
 	Exec(query string, args ...interface{}) (sql.Result, error)
 }
 
-// todo: should we have some kind of deployment log instead of just a status?
-
 func initDB() {
 
 	var count int
@@ -92,7 +90,7 @@
 	}
 
 	// system bundle
-	// todo: extra data?
+	// todo: extra data? TBD
 	_, err = tx.Exec("INSERT INTO gateway_deploy_bundle " +
 		"(id, deployment_id, scope, type, uri, status, created_at) " +
 		"VALUES(?,?,?,?,?,?,?);",
@@ -102,7 +100,7 @@
 		return err
 	}
 
-	// todo: extra data?
+	// todo: extra data? TBD
 	for _, bun := range dep.Bundles {
 		_, err = tx.Exec("INSERT INTO gateway_deploy_bundle " +
 			"(id, deployment_id, scope, type, uri, status, created_at) " +
diff --git a/listener.go b/listener.go
index 48cc4e4..8ad5411 100644
--- a/listener.go
+++ b/listener.go
@@ -42,7 +42,7 @@
 			if len(table.Rows) == 0 {
 				return
 			}
-			// todo: should be 0 or 1 per system!!
+			// todo: should be 0 or 1 *per system*!! - TBD
 			row := table.Rows[len(table.Rows)-1]
 			err = processNewManifest(row)
 		}
