Low compression in any of the cylinders cause a misfire. So, you can rule out spark and fuel.
There are only a couple of causes of low compression - burnt or sticking valves, engine
timing off, worn rings.
I would assume your mechanic has by now verified the engine timing as that should always be done first for misfires.
So that leaves valves or rings. The leakdown test determines which.
No other potential causes of low compression.
I can list a whole bunch of misfire causes such as plugs, coils, pcm, fuel injectors
, fuel pump, fuel filter, etc. BUT none of them cause low compression, so why mention what is not possible.
Please remember to rate service using the rating page so that I may receive credit. Thanks