Update ZAP to tip. (#29202)

This lets us significantly simplify the EventList availability annotations.
diff --git a/scripts/setup/zap.json b/scripts/setup/zap.json
index 3b1253b..fa02375 100644
--- a/scripts/setup/zap.json
+++ b/scripts/setup/zap.json
@@ -8,13 +8,13 @@
                 "mac-amd64",
                 "windows-amd64"
             ],
-            "tags": ["version:2@v2023.09.05-nightly.1"]
+            "tags": ["version:2@v2023.09.12-nightly.1"]
         },
         {
             "_comment": "Always get the amd64 version on mac until usable arm64 zap build is available",
             "path": "fuchsia/third_party/zap/mac-amd64",
             "platforms": ["mac-arm64"],
-            "tags": ["version:2@v2023.09.05-nightly.1"]
+            "tags": ["version:2@v2023.09.12-nightly.1"]
         }
     ]
 }
diff --git a/scripts/setup/zap.version b/scripts/setup/zap.version
index f3a4acc..e7a99e1 100644
--- a/scripts/setup/zap.version
+++ b/scripts/setup/zap.version
@@ -1 +1 @@
-v2023.09.05-nightly
+v2023.09.12-nightly
diff --git a/scripts/tools/zap/zap_execution.py b/scripts/tools/zap/zap_execution.py
index bd5f609..8e14d6f 100644
--- a/scripts/tools/zap/zap_execution.py
+++ b/scripts/tools/zap/zap_execution.py
@@ -23,7 +23,7 @@
 # Use scripts/tools/zap/version_update.py to manage ZAP versioning as many
 # files may need updating for versions
 #
-MIN_ZAP_VERSION = '2023.9.5'
+MIN_ZAP_VERSION = '2023.9.12'
 
 
 class ZapTool:
diff --git a/src/darwin/Framework/CHIP/templates/availability.yaml b/src/darwin/Framework/CHIP/templates/availability.yaml
index 6406a6a..c8f0a6b 100644
--- a/src/darwin/Framework/CHIP/templates/availability.yaml
+++ b/src/darwin/Framework/CHIP/templates/availability.yaml
@@ -7402,146 +7402,13 @@
           - DishwasherAlarm
           - SampleMEI
       attributes:
-          # EventList generally not stable yet.
           Scenes:
-              - EventList
               # New scenes bits not stable yet.
               - SceneTableSize
               - RemainingCapacity
-          OnOff:
-              - EventList
-          OnOffSwitchConfiguration:
-              - EventList
-          LevelControl:
-              - EventList
-          BinaryInputBasic:
-              - EventList
-          PulseWidthModulation:
-              - EventList
-          Descriptor:
-              - EventList
-          Binding:
-              - EventList
-          Identify:
-              - EventList
-          AccessControl:
-              - EventList
-          Actions:
-              - EventList
-          OTASoftwareUpdateProvider:
-              - EventList
-          OTASoftwareUpdateRequestor:
-              - EventList
-          LocalizationConfiguration:
-              - EventList
-          TimeFormatLocalization:
-              - EventList
-          UnitLocalization:
-              - EventList
-          PowerSourceConfiguration:
-              - EventList
-          PowerSource:
-              - EventList
-          GeneralCommissioning:
-              - EventList
-          NetworkCommissioning:
-              - EventList
-          DiagnosticLogs:
-              - EventList
-          GeneralDiagnostics:
-              - EventList
-          SoftwareDiagnostics:
-              - EventList
-          ThreadNetworkDiagnostics:
-              - EventList
-          WiFiNetworkDiagnostics:
-              - EventList
-          EthernetNetworkDiagnostics:
-              - EventList
-          TimeSynchronization:
-              - EventList
-          Switch:
-              - EventList
-          AdministratorCommissioning:
-              - EventList
-          OperationalCredentials:
-              - EventList
-          GroupKeyManagement:
-              - EventList
-          FixedLabel:
-              - EventList
-          UserLabel:
-              - EventList
-          BooleanState:
-              - EventList
-          ModeSelect:
-              - EventList
-          DoorLock:
-              - EventList
-          WindowCovering:
-              - EventList
-          BarrierControl:
-              - EventList
-          PumpConfigurationAndControl:
-              - EventList
           FanControl:
-              - EventList
               # New Fan Control bits not stable yet.
               - AirflowDirection
-          ThermostatUserInterfaceConfiguration:
-              - EventList
-          ColorControl:
-              - EventList
-          BallastConfiguration:
-              - EventList
-          IlluminanceMeasurement:
-              - EventList
-          TemperatureMeasurement:
-              - EventList
-          PressureMeasurement:
-              - EventList
-          Thermostat:
-              - EventList
-          FlowMeasurement:
-              - EventList
-          RelativeHumidityMeasurement:
-              - EventList
-          OccupancySensing:
-              - EventList
-          WakeOnLAN:
-              - EventList
-          Channel:
-              - EventList
-          Groups:
-              - EventList
-          TargetNavigator:
-              - EventList
-          MediaPlayback:
-              - EventList
-          MediaInput:
-              - EventList
-          LowPower:
-              - EventList
-          KeypadInput:
-              - EventList
-          ContentLauncher:
-              - EventList
-          AudioOutput:
-              - EventList
-          ApplicationLauncher:
-              - EventList
-          ApplicationBasic:
-              - EventList
-          AccountLogin:
-              - EventList
-          ElectricalMeasurement:
-              - EventList
-          UnitTesting:
-              - EventList
-          BasicInformation:
-              - EventList
-          BridgedDeviceBasicInformation:
-              - EventList
       commands:
           FanControl:
               # Not stable yet
@@ -7592,7 +7459,7 @@
                   - AirflowDirection
       global attributes:
           - EventList
-      # Once we actually unmark TimeSynchronization as provisional, all these bits should go away too, and we should instead
+      # Once we actually unmark TimeSynchronization as provisional, all these bits except EventList should go away too, and we should instead
       # mark things as introduced/deprecated as needed.  The "ids" entries should go away, in particular.
       ids:
           attributes:
@@ -7600,6 +7467,15 @@
                   - TimeZoneListMaxSize
                   - DSTOffsetListMaxSize
                   - SupportsDNSResolve
+                  # Because we are special-casing ids for TimeSynchronization
+                  # above, we need to explicitly mark the EventList id
+                  # provisional.
+                  - EventList
+              PulseWidthModulation:
+                  # Because we are special-casing ids for PulseWidthModulation
+                  # above, we need to explicitly mark the EventList id
+                  # provisional.
+                  - EventList
           commands:
               TimeSynchronization:
                   - SetUTCTime