diff --git a/chameleon/grpc_client/grpc_client.py b/chameleon/grpc_client/grpc_client.py
index 9b68912..234f24a 100644
--- a/chameleon/grpc_client/grpc_client.py
+++ b/chameleon/grpc_client/grpc_client.py
@@ -159,8 +159,8 @@
                         service_name=service_name)
             yield asleep(1.0)
 
-        # pick a random entry
-        # TODO should we prefer local IP addresses? Probably.
+        # pick local addresses when resolving a service via consul
+        # see CORD-815 (https://jira.opencord.org/browse/CORD-815)
 
         service = services[randint(0, len(services) - 1)]
         endpoint = '{}:{}'.format(service['ServiceAddress'],
diff --git a/cli/utils.py b/cli/utils.py
index 7ea9c77..f4111e3 100644
--- a/cli/utils.py
+++ b/cli/utils.py
@@ -132,7 +132,8 @@
         for field in flow['match']['oxm_fields']:
             assert field['oxm_class'].endswith('OPENFLOW_BASIC')
             ofb = field['ofb_field']
-            assert not ofb['has_mask'], 'masked match not handled yet'  # TODO
+            # see CORD-816 (https://jira.opencord.org/browse/CORD-816)
+            assert not ofb['has_mask'], 'masked match not handled yet'
             type = ofb['type'][len('OFPXMT_OFB_'):]
             table.add_cell(i, *field_printers[type](ofb))
 
@@ -151,7 +152,7 @@
 
     table.print_table(header, printfn)
 
-    # TODO groups TBF
+    # see CORD-817 (https://jira.opencord.org/browse/CORD-817)
     assert len(groups) == 0
 
 
diff --git a/common/utils/consulhelpers.py b/common/utils/consulhelpers.py
index 3efc7b9..95e6f5b 100644
--- a/common/utils/consulhelpers.py
+++ b/common/utils/consulhelpers.py
@@ -91,8 +91,8 @@
             'Cannot find service {} in consul'.format(service_name))
         os.exit(1)
 
-    # pick a random entry
-    # TODO should we prefer local IP addresses? Probably.
+    # pick local addresses when resolving a service via consul
+    # see CORD-818 (https://jira.opencord.org/browse/CORD-818)
 
     service = services[randint(0, len(services) - 1)]
     endpoint = '{}:{}'.format(service['ServiceAddress'],
