My Megasquirt adventures over the years
There are some other interesting features I've been playing around with in the idle menus that I need to dig into some more.

The Idle VE settings let you set up a smaller resolution VE table that the MS will use once it determines the engine is in the "idle" state. You could use this to get better resolution in idle. So for instance, on my main VE table, I go from 600 to 800 rpm in my rpm columns, and the MS will just linearly interpolate between those values. With the idle VE table, you could instead set it up to be 600 to 800 in 4 discrete steps in case you have a less linear increase in fuel demand. I've tried playing with this as I have some pretty big AFR swings in my idle, but only 4-6 cells on my main VE table that it tends to idle in. I'm not sure it's made a huge difference, but it could be handy for you.
Idle advance I plan to play with some more in the future. The OEM setup has something similar to this, though they implement in a little differently. They use a "torque based" idle setup where they target a particular engine torque instead of rpm directly. The idle advance table is similar to the idle VE table in that you can get increased resolution in your idle conditions for timing. Additionally, you can also have the MS add or pull timing to help maintain a target idle rpm. So kind of like closed loop IAC control, but instead for timing. I'm planning to try giving this a shot to see if it can further help the occasional idle surge I'm getting. The OEM setup alludes to stuff like this as "idle torque spark" settings:

I believe these are just PID tuning values that are used to adjust spark as necessary to maintain a desired torque. Some other systems call this "spark scatter" where it lets the spark float around at idle to try to maintain a fixed idle rpm. I've been trying to dial in my VE tables first before digging into these, but I plan to play around with them in the near future to see what they can do.