I know garrison script are meant to be deterrent for ai derp moment of unguarded capital and for rebel town to be more strongly guarded.
But having to beat another army after you defeat their large army just outside their capital only to realize that 1 unit manage to retreat to capital which means you are forced to siege and deal with the garrison script are quite a motivation downer. If that's the case i would rather just siege them immideately and starve them out.
Edit : bloody hell i siege and wait them out and then they sally out and i won but of course the game crashed. *sigh*