diff --git a/ofc24 b/ofc24
new file mode 120000
index 0000000000000000000000000000000000000000..baae92c8e249f4abfbbcf9739c9162087fefbacd
--- /dev/null
+++ b/ofc24
@@ -0,0 +1 @@
+src/tests/ofc24/
\ No newline at end of file
diff --git a/proto/context.proto b/proto/context.proto
index 73c4788654b32cd074aab97192c0636e4d78a3b9..a734b3a9644bd77d83888a00028ae5240f39fd26 100644
--- a/proto/context.proto
+++ b/proto/context.proto
@@ -76,14 +76,14 @@ service ContextService {
   rpc GetConnectionEvents(Empty         ) returns (stream ConnectionEvent ) {}
 
  
-// ------------------------------ Experimental------------------------------
-  rpc GetOpticalConfig (Empty ) returns ( OpticalConfigList ) {}
-  rpc SetOpticalConfig (OpticalConfig) returns (OpticalConfigId) {}
-  rpc SelectOpticalConfig (OpticalConfigId) returns (OpticalConfig) {}
+  // ------------------------------ Experimental -----------------------------
+  rpc GetOpticalConfig   (Empty          ) returns (OpticalConfigList     ) {}
+  rpc SetOpticalConfig   (OpticalConfig  ) returns (OpticalConfigId       ) {}
+  rpc SelectOpticalConfig(OpticalConfigId) returns (OpticalConfig         ) {}
 
-  rpc SetOpticalLink (OpticalLink) returns (Empty) {}
-  rpc GetOpticalLink (OpticalLinkId) returns (OpticalLink) {}
-  rpc GetFiber (FiberId) returns (Fiber) {}
+  rpc SetOpticalLink     (OpticalLink    ) returns (Empty                 ) {}
+  rpc GetOpticalLink     (OpticalLinkId  ) returns (OpticalLink           ) {}
+  rpc GetFiber           (FiberId        ) returns (Fiber                 ) {}
 }
 
 // ----- Generic -------------------------------------------------------------------------------------------------------
@@ -211,11 +211,9 @@ enum DeviceDriverEnum {
   DEVICEDRIVER_XR = 6;
   DEVICEDRIVER_IETF_L2VPN = 7;
   DEVICEDRIVER_GNMI_OPENCONFIG = 8;
-  DEVICEDRIVER_IETF_ACTN=9;
-  DEVICEDRIVER_FLEXSCALE=10;
+  DEVICEDRIVER_IETF_ACTN = 9;
+  DEVICEDRIVER_FLEXSCALE = 10;
   DEVICEDRIVER_OC = 11;
- 
- 
 }
 
 enum DeviceOperationalStatusEnum {
@@ -301,7 +299,7 @@ enum ServiceTypeEnum {
   SERVICETYPE_TAPI_CONNECTIVITY_SERVICE = 3;
   SERVICETYPE_TE = 4;
   SERVICETYPE_E2E = 5;
-SERVICETYPE_OPTICAL_CONNECTIVITY = 6;
+  SERVICETYPE_OPTICAL_CONNECTIVITY = 6;
 }
 
 enum ServiceStatusEnum {
@@ -629,16 +627,19 @@ message AuthenticationResult {
 
 // ---------------- Experimental ------------------------
 message OpticalConfigId {
-  string opticalconfig_uuid= 1;
+  string opticalconfig_uuid = 1;
 }
 message OpticalConfig {
-  OpticalConfigId opticalconfig_id=1;
-  string config =2 ;
+  OpticalConfigId opticalconfig_id = 1;
+  string config = 2;
 }
+
 message OpticalConfigList {
-  repeated OpticalConfig opticalconfigs =1 ;
+  repeated OpticalConfig opticalconfigs = 1;
 }
-//----Optical Link ----
+
+// ---- Optical Link ----
+
 message OpticalLinkId {
   Uuid optical_link_uuid = 1;
 }
@@ -646,29 +647,30 @@ message OpticalLinkId {
 message FiberId {
   Uuid fiber_uuid = 1;
 }
+
 message Fiber {
-       string ID=10;
-        string src_port=1;
-      string dst_port=2;
-      string local_peer_port= 3;
-      string remote_peer_port=4;
-      repeated int32 c_slots=5;
-      repeated int32 l_slots=6;
-      repeated int32 s_slots=7;
-      float length=8;
-      bool used=9;
-      FiberId fiber_uuid=11;
+  string ID = 10;
+  string src_port = 1;
+  string dst_port = 2;
+  string local_peer_port =  3;
+  string remote_peer_port = 4;
+  repeated int32 c_slots = 5;
+  repeated int32 l_slots = 6;
+  repeated int32 s_slots = 7;
+  float length = 8;
+  bool used = 9;
+  FiberId fiber_uuid = 11;
  
 }
 message OpticalLinkDetails {
- float length=1;
-      string source =2;
-      string target=3;
-      repeated Fiber fibers=4;
+  float length = 1;
+  string source = 2;
+  string target = 3;
+  repeated Fiber fibers = 4;
 }
 
 message OpticalLink {
-  OpticalLinkId optical_link_uuid=3;
-  string name=1;
-  OpticalLinkDetails details=2;
+  string name = 1;
+  OpticalLinkDetails details = 2;
+  OpticalLinkId optical_link_uuid = 3;
 }
diff --git a/proto/openconfig_device.proto b/proto/openconfig_device.proto
index 8a0a97df2b84d292bebe008eba5a36cfc80e25f5..c622c77e48b5df43ee94b924a1d6bc8b8c0a163f 100644
--- a/proto/openconfig_device.proto
+++ b/proto/openconfig_device.proto
@@ -19,8 +19,6 @@ import "context.proto";
 import "monitoring.proto";
 
 service OpenConfigService {
-  rpc AddOpenConfigDevice       (context.OpticalConfig    ) returns (context.OpticalConfigId    ) {}
- 
-  rpc ConfigureOpticalDevice (context.OpticalConfig) returns (context.Empty) {}
-
+  rpc AddOpenConfigDevice   (context.OpticalConfig) returns (context.OpticalConfigId) {}
+  rpc ConfigureOpticalDevice(context.OpticalConfig) returns (context.Empty          ) {}
 }
diff --git a/scripts/show_logs_opticalcontroller.sh b/scripts/show_logs_opticalcontroller.sh
index a4778c308a31346139531ff8221a26077059086f..17af5483c59e4d97a5534b388d006f5be00030e5 100755
--- a/scripts/show_logs_opticalcontroller.sh
+++ b/scripts/show_logs_opticalcontroller.sh
@@ -24,4 +24,4 @@ export TFS_K8S_NAMESPACE=${TFS_K8S_NAMESPACE:-"tfs"}
 # Automated steps start here
 ########################################################################################################################
 
-kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/opticalcontrollerservice -c server > logs/opticalcontroller.log 
+kubectl --namespace $TFS_K8S_NAMESPACE logs deployment/opticalcontrollerservice -c server
diff --git a/src/common/DeviceTypes.py b/src/common/DeviceTypes.py
index f4ade564b7b9b6df0dcfd2cdbf13d28c41f0c57a..72b3e21fdecd1019099eec03b3b473f56bcd403a 100644
--- a/src/common/DeviceTypes.py
+++ b/src/common/DeviceTypes.py
@@ -47,7 +47,6 @@ class DeviceTypeEnum(Enum):
     PACKET_ROUTER                   = 'packet-router'
     PACKET_SWITCH                   = 'packet-switch'
     XR_CONSTELLATION                = 'xr-constellation'
-   
 
     # ETSI TeraFlowSDN controller
     TERAFLOWSDN_CONTROLLER          = 'teraflowsdn'
diff --git a/src/common/Settings.py b/src/common/Settings.py
index fc503ea2d0fd428faf2bc81d2697337b77e1996d..5d6fba2fdca0530851fabdc06954976b29f2f2b4 100644
--- a/src/common/Settings.py
+++ b/src/common/Settings.py
@@ -37,8 +37,6 @@ ENVVAR_SUFIX_SERVICE_HOST         = 'SERVICE_HOST'
 ENVVAR_SUFIX_SERVICE_PORT_GRPC    = 'SERVICE_PORT_GRPC'
 ENVVAR_SUFIX_SERVICE_PORT_HTTP    = 'SERVICE_PORT_HTTP'
 
-
-
 def find_environment_variables(
     environment_variable_names : List[str] = []
 ) -> Dict[str, str]:
diff --git a/src/common/tools/descriptor/Loader.py b/src/common/tools/descriptor/Loader.py
index eef41bbd8897b788b5ec25580cbdf18c055ba5c1..4ab33beae8987ff2b38e5e2bc0252bacf557120c 100644
--- a/src/common/tools/descriptor/Loader.py
+++ b/src/common/tools/descriptor/Loader.py
@@ -262,7 +262,6 @@ class DescriptorLoader:
 
         # Device, Service and Slice require to first create the entity and the configure it
         self.__devices_add, self.__devices_config = split_devices_by_rules(self.__devices)
-
         self.__services_add = get_descriptors_add_services(self.__services)
         self.__slices_add = get_descriptors_add_slices(self.__slices)
 
diff --git a/src/common/tools/descriptor/Tools.py b/src/common/tools/descriptor/Tools.py
index a4792436ade2e9c5790f9602e1007ecff8f9b32a..e95fc756052bf792f0009518b19991b8e87bac68 100644
--- a/src/common/tools/descriptor/Tools.py
+++ b/src/common/tools/descriptor/Tools.py
@@ -12,7 +12,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-import copy, json,logging
+import copy, json
 from typing import Dict, List, Optional, Tuple, Union
 from common.DeviceTypes import DeviceTypeEnum
 from common.proto.context_pb2 import DeviceDriverEnum
@@ -67,8 +67,6 @@ def format_device_custom_config_rules(device : Dict) -> Dict:
     config_rules = device.get('device_config', {}).get('config_rules', [])
     config_rules = format_custom_config_rules(config_rules)
     device['device_config']['config_rules'] = config_rules
-    
-    
     return device
 
 def format_service_custom_config_rules(service : Dict) -> Dict:
@@ -86,9 +84,7 @@ def format_slice_custom_config_rules(slice_ : Dict) -> Dict:
 def split_devices_by_rules(devices : List[Dict]) -> Tuple[List[Dict], List[Dict]]:
     devices_add = []
     devices_config = []
-
     for device in devices:
-      
         connect_rules = []
         config_rules = []
         for config_rule in device.get('device_config', {}).get('config_rules', []):
@@ -108,7 +104,6 @@ def split_devices_by_rules(devices : List[Dict]) -> Tuple[List[Dict], List[Dict]
         if len(config_rules) > 0:
             device['device_config'] = {'config_rules': config_rules}
             devices_config.append(device)
-       
 
     return devices_add, devices_config