diff --git a/Trigger/TriggerCommon/TrigEDMConfig/CMakeLists.txt b/Trigger/TriggerCommon/TrigEDMConfig/CMakeLists.txt
index f88fe64e6ced5395d2c576f9545970bfd245950a..57154b782b9b73d93083daece249cae4da433451 100644
--- a/Trigger/TriggerCommon/TrigEDMConfig/CMakeLists.txt
+++ b/Trigger/TriggerCommon/TrigEDMConfig/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
+# Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
 
 # Declare the package name:
 atlas_subdir( TrigEDMConfig )
@@ -9,12 +9,12 @@ atlas_install_scripts( test/*.sh )
 
 atlas_add_test( testEDM
    SCRIPT python/testEDM.py
-   POST_EXEC_SCRIPT nopost.sh )
+   POST_EXEC_SCRIPT noerror.sh )
 
 atlas_add_test( testEDMRun3
    SCRIPT python/testEDMRun3.py
-   POST_EXEC_SCRIPT nopost.sh )
+   POST_EXEC_SCRIPT noerror.sh )
 
 atlas_add_test( testEDMRun3Reproducibility
    SCRIPT testTriggerEDMRun3Reproducibility.sh
-   POST_EXEC_SCRIPT nopost.sh )
+   POST_EXEC_SCRIPT noerror.sh )
diff --git a/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py b/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py
index 6ba2580fb5d7411baf4c165d040fd874cf9b3760..46f7588bb86fd383516dc982877522b4075f2b46 100644
--- a/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py
+++ b/Trigger/TriggerCommon/TrigEDMConfig/python/TriggerEDMRun3.py
@@ -392,7 +392,7 @@ TriggerHLTListRun3 = [
     ('xAOD::eFexTauRoIContainer#L1_eTauRoI',                                        'BS ESD AODFULL', 'L1'),
     ('xAOD::eFexTauRoIAuxContainer#L1_eTauRoIAux.thresholdPatterns',                'BS ESD AODFULL', 'L1'),
     ('xAOD::eFexTauRoIContainer#L1_eTauBDTRoI',                                     'BS ESD AODFULL', 'L1'),
-    ('xAOD::eFexTauRoIAuxContainer#L1_eTauBDTRoI.thresholdPatterns',                'BS ESD AODFULL', 'L1'),
+    ('xAOD::eFexTauRoIAuxContainer#L1_eTauBDTRoIAux.thresholdPatterns',             'BS ESD AODFULL', 'L1'),
     ('xAOD::eFexTauRoIContainer#L1_cTauRoI',                                        'BS ESD AODFULL', 'L1'),
     ('xAOD::eFexTauRoIAuxContainer#L1_cTauRoIAux.thresholdPatterns.jTauLink',       'BS ESD AODFULL', 'L1'),
 
diff --git a/Trigger/TriggerCommon/TrigEDMConfig/python/testEDMRun3.py b/Trigger/TriggerCommon/TrigEDMConfig/python/testEDMRun3.py
index 45bf19422a6706cdc048c228bd86ea3208ea9549..1bdaa5ea6c33887fa964d65c52019023728c1bf9 100755
--- a/Trigger/TriggerCommon/TrigEDMConfig/python/testEDMRun3.py
+++ b/Trigger/TriggerCommon/TrigEDMConfig/python/testEDMRun3.py
@@ -24,6 +24,7 @@ def dumpListToJson(fileName):
 
 def main():
   import re
+  return_code = 0
   serializable_names = []
   serializable_names_no_label = []
   #Check for duplicates
@@ -34,28 +35,37 @@ def main():
     for item, count in collections.Counter(names).items():
         if count > 1:
           log.error(str(count) + "x: " + str(item))
-    return 1
+    return_code = 1
 
-  for TriggerSerializable in TriggerHLTListRun3:
-    serializable_name = TriggerSerializable[0]
+  for i, edm in enumerate(TriggerHLTListRun3):
+    serializable_name = edm[0]
     serializable_name_no_label = re.sub(r"\#.*", "", serializable_name)
     if '#' not in serializable_name:
       log.error("no label for " + serializable_name)
-      return 1
+      return_code = 1
+
     #Check container has a CLID
     if not isCLIDDefined(serializable_name_no_label):
       log.error("no CLID for " + serializable_name)
+      return_code = 1
 
     #check for Aux "."
     if "Aux" in serializable_name and "Aux." not in serializable_name:
       log.error("no final Aux. in label for " + serializable_name)
+      return_code = 1
+
+    #check that Aux always follows non-Aux (our deserialiser relies on that)
+    if i>0 and "Aux" in serializable_name and "Aux" in TriggerHLTListRun3[i-1][0]:
+      log.error(f"Aux container {serializable_name} needs to folow the "
+                "associated interface container in the EDM list")
+      return_code = 1
 
-    file_types = TriggerSerializable[1].split(" ")
+    file_types = edm[1].split(" ")
 
     for file_type in file_types:
       if file_type not in AllowedOutputFormats:
         log.error("unknown file type " + file_type + " for " + serializable_name)
-        return 1
+        return_code = 1
 
     serializable_names.append(serializable_name)
     serializable_names_no_label.append(serializable_name_no_label)
@@ -63,7 +73,10 @@ def main():
   #check EDMDetails
   for EDMDetail in EDMDetailsRun3.keys():
     if EDMDetail not in serializable_names_no_label:
-      log.warning("EDMDetail for " + EDMDetail + " does not correspond to any name in TriggerList")
+      log.error("EDMDetail for " + EDMDetail + " does not correspond to any name in TriggerList")
+      return_code = 1
+
+  return return_code
 
 if __name__ == "__main__":
   import sys