I am curious which sensor(s) detects an EVAP leak and throw error codes, for example:
P0442 - EVAP System Leak Detected (small leak) P0455 - EVAP System Leak Detected (large leak)
My car is a 2003 Saturn Ion.
The most typical system used by GM is a vacuum decay type system.
The system has 3 major components (for leak detection that is); purge solenoid, vent solenoid and a pressure sensor. Under normal operation, the vent solenoid is open and allows air both in and out depending on the situation. The vent solenoid is connected to the outlet of a charcoal canister. This canister soaks up gas fumes when air is leaving the tank. When you're driving the vehicle will open the purge solenoid and pull a vacuum on the system. With the vent solenoid still open, air is drawn through it, then through the whole system (including the charcoal canister) and then through the purge solenoid into the engine to be burned. This is how gas fumes are captured and burned.
When the system checks for leaks, it closes the vent solenoid. Then draws a vacuum on the system with the purge solenoid. From here one of two things happen. The system won't pull down into a vacuum as indicated by the pressure sensor. The assumption is that there is a big leak because the system won't hold any vacuum at all. The other scenario is the system pulls down into a vacuum. At this point, the purge solenoid shuts off and the system just sits monitoring with the pressure sensor. If the vacuum holds or slowly decays at less than some rate then the system is ok. If the vacuum decays faster than some rate then there is a small hole.
The issue with this type of system is that when you pull a vacuum on gasoline it will evaporate. This will look like decaying vacuum even if there is no leak. This is why the rate of vacuum decay is important to tell the difference.